首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.Net MVC2通过令牌等方式保护站点

ASP.Net MVC2通过令牌等方式保护站点
EN

Stack Overflow用户
提问于 2010-04-27 00:08:18
回答 3查看 323关注 0票数 0

我正在尝试使用MVC2作为我的iPhone应用程序的中间层。这里的基本原则是MVC站点将公开app,允许用户从iPhone发布数据,并从MVC app后面运行的sql数据库获取数据。MVC2项目将促进来回逻辑。

我对此有几个问题……1.保护MVC应用程序的最佳方式是什么,以便只有被识别的iPhones才能访问GET/POST方法? 2.我是否可以使用SQL Server的共享宿主帐户并开始将我的数据库连接指向它? 3.关于最好地实现此方法,还有其他想法吗?

我是MVC的新手,但对使用它感到非常兴奋……

谢谢!

EN

回答 3

Stack Overflow用户

发布于 2010-04-27 00:37:01

我不确定你的帖子到底有多少是关于asp.net MVC的。

您的第一个问题是如何保护应用程序,以便只有被识别的iPhones才能访问GET/POST方法。这听起来更像是一个HTTP问题,我猜这取决于你对“安全”的定义以及你想要做什么。您可以潜在地从iPhone发送许可证密钥(我假设是通过HTTPS )并对其进行身份验证。然而,没有什么能阻止别人分享这个密钥或在非iPhone上使用它。您可以在注册时创建一个散列或其他东西,然后对照它进行验证(想想Windows验证),这可能会有所帮助,但总会有方法绕过这一点。简而言之,您将无法真正测试“注册的iPhones",而是您定义为”注册的iPhone“的东西,它可能会被欺骗,但”足够好“满足您的需求。

在MVC中,验证应该在属性级别进行--您可以用某种验证属性来修饰您的操作。内置的一个称为Authorize,它与内置的ASP.NET成员一起工作。这听起来不像是您想要使用的,所以您可能需要构建自己的属性来自己验证HTTP请求。

关于使用共享主机账号,我不确定这个问题。您是否在询问共享主机帐户是否可以满足您的需求?我不知道你需要什么,但是共享主机可以容纳1) SQL和2) ASP.NET数据库。

票数 0
EN

Stack Overflow用户

发布于 2010-04-27 00:58:30

这是一个非常高层次的问题……

在这种情况下,我会做的是以某种方式将一个唯一的密钥绑定到手机或user+phone上(取决于iPhone的工作方式-它可以容纳多个用户吗?)。有很多方法可以做到这一点,但一种流行的方式是让用户在您的网站上进行身份验证,并将他们的手机链接到他们的帐户。在此过程中,您需要向电话发送一个唯一的密钥,以供后续请求使用。

这为您提供了一些东西:

操作的基本安全性-您可以根据数据库验证传入的密钥,以查看它是否被允许

用户连接-允许您轻松地将用户数据存储在您的站点上,并让您立即知道是谁在连接

要真正做到这一点,你应该按照统计属性建议的那样去做。我这样做是为了根据特定操作的角色要求来验证用户。

共享主机可能会起作用,但如果你的应用程序成功了,你可能需要更多的能力。云托管在这里可能是有益的,因为您可能每天都会有高峰/高峰时段和低使用率时段。

票数 0
EN

Stack Overflow用户

发布于 2011-02-07 04:18:36

如果这没有实际的用户界面,并且只用于传输数据,那么您最好创建一个WCF web服务作为您的项目。然后,您可以在您的iphone应用程序中使用此web服务,使用的内容类似于详细的in this blog post.

Web服务就是针对这种情况而设计的,它提供了许多身份验证和安全性的方法。另外,它更像是RESTful。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2714954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档