21 c# sql asp.net authentication
只是开始制作一个Web应用程序,并想知道哪个更好,或者至少它们之间的主要区别是什么(因为它可能对我使用它们很重要)?
Spo*_*oks 24
我会说这很大程度上取决于你的网络应用程序将做什么,因为每个人都有自己的位置.以下是每个人的一些简要细节.
Windows身份验证使您无需创建自定义页面即可识别用户.凭据存储在Web服务器的本地用户数据库或Active Directory域中.识别后,您可以使用用户的凭据来访问受Windows授权保护的资源.
通过表单身份验证,您可以使用自定义数据库(如ASP.NET成员资格数据库)识别用户.或者,您可以实现自己的自定义数据库.经过身份验证后,您可以引用用户所在的角色来限制对网站部分的访问.
Passport身份验证依赖于Microsoft提供的集中服务.Passport身份验证使用他或她的电子邮件地址和密码来识别用户,并且单个Passport帐户可以与许多不同的Web站点一起使用.Passport身份验证主要用于具有数千个用户的公共Web站点.
匿名身份验证不要求用户提供凭据.
http://msdn.microsoft.com/en-us/library/eeyk640h.aspx - ASP.NET身份验证有关表单和窗口身份验证的更多详细信息
编辑Rushyo链接更好:http://msdn.microsoft.com/en-us/library/ee817643.aspx
可以使用什么的情况:
Windows身份验证:您将使用域中使用的登录名和密码...如果您使用Windows身份验证,则必须(通常)将Web应用程序部署在网络服务器中,并且所有用户都应(通常)具有登录名为他们在域中创建的。尽管可以进行跨域操作,但首先您将无法在基于非域的环境(如公共网站)中使用它。如果要包括您域外的某些用户将很困难。
表单身份验证: 您在这里决定独立采取行动。您将为每个用户分配一个单独的userId和密码,并将由您自己管理。这里的开销是您应该提供和限制创建和删除用户的方式。在这里,您不受任何域的限制。对于任何要访问您的Web应用程序的用户,都应该向您的Web应用程序注册。这类似于您在Internet上看到的任何邮件站点。
Passport身份验证:您依靠MS来验证您的用户。这将为您提供应用程序的全局状态,但是如果仅将其部署到一小部分用户,则将迫使他们创建一个护照帐户(如果他们没有),以便他们可以访问你的申请。
为了使它更清楚。无论采用哪种方法,您仍然可以限制谁可以访问您的Web应用程序,还可以为每个用户定义自己的角色。
| 归档时间: |
|
| 查看次数: |
24048 次 |
| 最近记录: |