ASP.NET 成员资格 Part.2(使用安全控件 Login)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ASP.NET 成员资格 Part.2(使用安全控件 Login),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3317字,纯文字阅读大概需要5分钟。
内容图文

准备好提供程序以及用户信息的存储,就可以开始构建验证用户、注册用户或者让用户能够重置密码的用户界面了。ASP.NET 提供了一些控件,用于简化创建登录页面以及其他相关页面的过程。
这些安全控件依赖于底层的表单验证和成员资格 API 框架。下表简单描述了这些控件并总结了典型的应用场景。不过,这只是推荐用法,你可以在 Web 应用程序的任意 ASP.NET 页面里使用这些控件。
ASP.NET 安全控件
Login | 这是一个复合控件,解决了基于表单验证的最常见的任务:登录。它会自动使用默认的成员资格提供程序来验证用户 |
LoginStatus | 用来确认当前会话的验证状态。如果用户没有验证,会提供重定向。如果用户已验证,会显示一个退出按钮。此控件封装了在所有页面上都可用的行为,因此较适合放置在母板页 |
LoginView | 允许你为已验证和未验证的用户展示不同的界面,或为不同角色的用户显示不同的控件 |
PasswordRecovery | 允许用户通过注册的 Email,并在正确回答了密码问题后重新取回密码 |
ChangePassword | 用户提供旧密码,可输入新密码进行密码的更改 |
CreateUserWizard | 是引导用户完成创建过程的完整向导 |
所有的这些控件都和成员资格 API 一同工作。一旦你捕获这些控件提供的事件,那你就要负责完成这个任务。例如,Login 支持 Authenticate 事件,你不捕获事件,它自动使用成员资格 API。你捕获了这个事件,你必需自己负责验证用户凭证。
Login 控件
Login 控件提供一个现成的界面,接收用户输入的用户名和密码,并提供登录按钮。幕后,它封装了通过成员资格 API 验证用户身份并封装基本的表单验证功能。换句话说,它封装了 Membership.ValidateUser() 或者 FormsAuthentication.RedirectFromLoginPage() 之类的功能,你不必再编写这类代码。
无论用户何时单击“登录”按钮,它都会调用 Membership.ValidateUser() 验证用户名和密码;验证成功它会调用 FormsAuthentication.RedirectFromLoginPage();如果选中“下次记住我”,它会把 RedirectFromLoginPage 方法中的 createPersistentCookie 参数的值设为 true 从而创建一个持久 cookie。
实际上,Login 只是一个 ASP.NET 复合控件,它完全可以扩展,你可以覆盖任何的布局样式和属性,还可以自己捕获控件抛出的事件来覆盖它的默认行为。最简单的的 Login 形式如下:
<DIV style=‘margin: 20px 0px 10px; padding: 4px; border: 1px solid silver; width: 97.5%; text-align: left; line-height: 12pt; overflow: auto; font-family: "Courier New", courier, monospace; font-size: 10pt; cursor: text; direction: ltr; max-height: none; background-color: rgb(244, 244, 244);‘ id="codeSnippetWrapper"> <DIV style=‘padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: rgb(244, 244, 244);‘ id="codeSnippet"><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: white;‘><formid="form1"runat="server"><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: rgb(244, 244, 244);‘><div><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: white;‘> <asp:LoginID="Login1"runat="server"><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: rgb(244, 244, 244);‘> </asp:Login><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: white;‘></div><PRE style=‘margin: 0em; padding: 0px; width: 100%; text-align: left; color: black; line-height: 12pt; overflow: visible; font-family: "Courier New", courier, monospace; font-size: 10pt; direction: ltr; background-color: rgb(244, 244, 244);‘></form>内容总结
以上是互联网集市为您收集整理的ASP.NET 成员资格 Part.2(使用安全控件 Login)全部内容,希望文章能够帮你解决ASP.NET 成员资格 Part.2(使用安全控件 Login)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。