ASP.NET Login控件使用方法及须知 - Go语言中文社区

ASP.NET Login控件使用方法及须知


ASP.NET登陆控件比较多,封装了大部分WEB应用中要实现系统登陆的系列功能,涉及到很多方面。众多 ASP.NET 登录控件一起为 ASP.NET Web 应用程序提供可靠的无需编程的登录解决方案。默认情况下,登录控件与 ASP.NET 成员资格和 Forms 身份验证集成,以帮助使网站的用户身份验证过程自动化。默认情况下,ASP.NET 登录控件以纯文本形式工作于 HTTP 上。如果您对安全性十分关注,那么可以使用带 SSL 加密的 HTTPS。

注意 

如果将 ASP.NET 网页的 Method 从 POST(默认值)更改为 GET,则登录控件可能无法正常工作。

ASP.NET Login控件

Login 控件显示用于执行用户身份验证的用户界面。Login 控件包含用于用户名和密码的文本框和一个复选框,该复选框让用户指示是否需要服务器使用 ASP.NET 成员资格存储他们的标识并且当他们下次访问该站点时自动进行身份验证。

Login 控件

Login 控件有用于自定义显示、自定义消息的属性和指向其他页的链接,在那些页面中用户可以更改密码或找回忘记的密码。Login 控件可用作主页上的独立控件,或者您还可以在专门的登录页上使用它。

如果您一同使用 Login 控件和 ASP.NET 成员资格,将不需要编写执行身份验证的代码。然而,如果您想创建自己的身份验证逻辑,则您可以处理 Login 控件的 Authenticate 事件并添加自定义身份验证代码。

LoginView 控件 使用 LoginView 控件,可以向匿名用户和登录用户显示不同的信息。该控件显示以下两个模板之一:AnonymousTemplate 或 LoggedInTemplate。在这些模板中,您可以分别添加为匿名用户和经过身份验证的用户显示适当信息的标记和控件。

LoginView 控件还包括 ViewChanging 和 ViewChanged 的事件,您可以为这些事件编写当用户登录和更改状态时的处理程序。

LoginStatus 控件 LoginStatus 控件为没有通过身份验证的用户显示登录链接,为通过身份验证的用户显示注销链接。登录链接将用户带到登录页。注销链接将当前用户的身份重置为匿名用户。

可以通过设置 LoginText 和 LoginImageUrl 属性自定义 LoginStatus 控件的外观。

LoginName 控件 如果用户已使用 ASP.NET 成员资格登录,LoginName 控件将显示该用户的登录名。或者,如果站点使用集成 Windows 身份验证,该控件将显示用户的 Windows 帐户名。

PasswordRecovery 控件 PasswordRecovery 控件允许根据创建帐户时所使用的电子邮件地址来找回用户密码。PasswordRecovery 控件会向用户发送包含密码的电子邮件。

您可以配置 ASP.NET 成员资格,以使用不可逆的加密来存储密码。在这种情况下,PasswordRecovery 控件将生成一个新密码,而不是将原始密码发送给用户。

您还可以配置成员资格,以包括一个用户为了找回密码必须回答的安全提示问题。如果这样做,PasswordRecovery 控件将在找回密码前提问该问题并核对答案。

PasswordRecovery 控件要求您的应用程序能够将电子邮件转发给简单邮件传输协议 (SMTP) 服务器。您可以通过设置 MailDefinition 属性自定义发送给用户的电子邮件的文本和格式。

注意 

电子邮件中的密码信息是以明文形式发送的。其 MailDefinition 属性设置用来自定义电子邮件。

如下代码:

  1. < asp:PasswordRecovery ID="PasswordRecovery1" Runat="server"     SubmitButtonText="Get Password" SubmitButtonType="Link"> 
  2.   < MailDefinition From="administrator@Contoso.com"     Subject="Your new password"    BodyFileName="PasswordMail.txt" /> 
  3. < /asp:PasswordRecovery> 

ASP.NET Login控件延伸:CreateUserWizard 控件

CreateUserWizard 控件收集潜在用户提供的信息。默认情况下,CreateUserWizard 控件将新用户添加到 ASP.NET 成员资格系统中。

CreateUserWizard 控件收集下列用户信息:

用户名

密码

密码确认

电子邮件地址

安全提示问题

安全答案

此信息用来对用户进行身份验证并找回用户密码(如果需要的话)。

注意 

CreateUserWizard 控件从 Wizard 控件继承。

如下代码:

  1. < asp:CreateUserWizard ID="CreateUserWizard1" Runat="server"     ContinueDestinationPageUrl="~/Default.aspx"> 
  2.   < WizardSteps> 
  3.     < asp:CreateUserWizardStep Runat="server"       Title="Sign Up for Your New Account"> 
  4.     < /asp:CreateUserWizardStep> 
  5.     < asp:CompleteWizardStep Runat="server"       Title="Complete"> 
  6.     < /asp:CompleteWizardStep> 
  7.   < /WizardSteps> 
  8. < /asp:CreateUserWizard> 

ASP.NET Login控件延伸:ChangePassword 控件

通过 ChangePassword 控件,用户可以更改其密码。用户必须首先提供原始密码,然后创建并确认新密码。如果原始密码正确,则用户密码将更改为新密码。该控件还支持发送关于新密码的电子邮件。

ChangePassword 控件包含显示给用户的两个模板化视图。***个模板是 ChangePasswordTemplate,它显示用来收集更改用户密码所需的数据的用户界面。第二个模板是 SuccessTemplate,它定义当用户密码更改成功以后显示的用户界面。

ChangePassword 控件由通过身份验证和未通过身份验证的用户使用。如果用户未通过身份验证,该控件将提示用户输入登录名。如果用户已通过身份验证,该控件将用用户的登录名填充文本框。

版权声明:本文来源51CTO,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:http://developer.51cto.com/art/200908/146299.htm
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-16 08:27:56
  • 阅读 ( 1592 )
  • 分类:Go Web框架

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢