微软自带的Form身份验证机制

本文介绍了ASP.NET Forms身份验证的工作原理及其配置方法。利用Forms身份验证可以创建自定义登录页面,通过Cookie或URL来跟踪已认证用户。文章还讨论了如何结合ASP.NET会员资格和登录控件简化身份验证流程。

使用 Forms 身份验证的一个简便方法是使用 ASP.NET 成员资格(它存储用户凭据)和 ASP.NET 登录控件(可用于创建登录页)。

ASP.NET Forms 身份验证概述:

 

Forms 身份验证提供了一种方法,使您可以使用自己的代码对用户进行身份验证,然后将身份验证标记保留在 Cookie 或页的 URL 中。Forms 身份验证通过 FormsAuthenticationModule 参与 ASP.NET 页的生命周期。可以通过 FormsAuthentication 类访问 Forms 身份验证信息和功能。


若要使用 Forms 身份验证,可以创建一个登录页。该登录页既收集了用户的凭据,又包括验证这些凭据时所需的代码。如果这些凭据有效,可以调用 FormsAuthentication 类的方法,以便使用适当的身份验证票证 (Cookie) 将请求重定向到最初请求的资源。如果不需要进行重定向,只需获取 Forms 身份验证 Cookie 或对其进行设置即可。


使用 authentication 配置元素对 Forms 身份验证进行配置。最简单的情况是,在 Web.config 文件或单独的文件中,可以通过指定 URL 将未经身份验证的请求重定向到某个登录页,然后提供该登录页的最小实现,并提供有效的凭据。下面的示例演示配置文件的一部分。该配置文件为 Authenticate 方法指定了登录页和身份验证凭据。‎密码已经使用 HashPasswordForStoringInConfigFile 方法进行加密。


<authentication mode="Forms">
<forms name="SavingsPlan" loginUrl="/Logon.aspx">
<credentials passwordFormat="SHA1">
<user name="Kim"
password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
<user name="John"
password="BA56E5E0366D003E98EA1C7F04ABF8FCB3753889"/>
</credentials>
</forms>
</authentication>

成功通过身份验证之后,FormsAuthenticationModule 模块将会使用经过身份验证的用户信息填充当前的 User 属性。下面的代码示例演示如何以编程方式读取经过 Forms 身份验证的用户的标识。

C#
String authUser2 = User.Identity.Name;

Forms 身份验证、ASP.NET 成员资格和登录控件

使 用 Forms 身份验证的简便方法是,使用 ASP.NET 成员资格和 ASP.NET 登录控件。ASP.NET 成员资格提供了一种存储和管理信息的方法,它包括各种用户身份验证方法。ASP.NET 登录控件使用 ASP.NET 成员资格并封装提示用户输入凭据时所需的逻辑、验证用户或恢复或替换密码等。事实上,ASP.NET 成员资格和 ASP.NET 登录控件在 Forms 身份验证中提供了一个抽象层,可以替换使用 Forms 身份验证时必须执行的大部分或全部工作。有关更多信息,请参见使用成员资格管理用户ASP.NET 登录控件概述

 

具体参见msdn(我用过最好的资料库)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值