使用ASP.NET中的Login控件

1、系统默认情况下会启用Windows身份认证。只有启用了Forms身份验证后,才能使用Login控件。在跟目录的web.config中启用:
<configuration>
 <system.web>
      <authentication mode="Forms"/>
 </system.web>
</configuration>


2、在某个文件夹中设置访问限制,可以在文件夹中添加一个web.config代码如下:
<configuration>
    <system.web>
      <authorization>
        <deny users="?"/>
      </authorization>
    </system.web>
</configuration>
说明:deny表示禁止,?表示匿名用户。如果匿名用户访问此文件夹中的文件,则被禁止,且被重定向到一个名为Login.aspx的页面上(默认情况下,Login.aspx放在根目录下)

3、访问一个设置权限的页面,被阻止后重定向到Login.aspx页面,此时在login.aspx地址后加一个名称为ReturnUrl的QueryString,登陆成功后再通过ReturnUrl的值导航到先前访问的页面。如果Login.aspx页面没有ReturnUrl这个QueryString则默认情况下是导航到Default.aspx(前提是该页面必须存在)。还有一种情况是Login控件不是放在Login.aspx页面上(只有Login.aspx页面才能自动处理ReturnUrl),此时页面忽略处理ReturnUrl参数。


4、页面中如果已经通过验证,则不显示登陆控件(或者提示友好的登陆信息如“欢迎XX登陆”):设置Login控件的VisibleWhenLoggedIn属性为false。


5、创建Login控件的模板时候,使用以下控件相关属性值,便可实现跟默认布局一样的功能:
TextBox:ID=UserName,Password,RememberMe,FailureText
Button:CommandName=Login


6、使用配置文件中的用户名、密码进行登录验证。必须启用登录控件的OnAuthenticate事件。在事件处理程序中,e.Authenticated = FormsAuthentication.Authenticate(userName,password)。
其中FormsAuthentication.Authenticate用来验证存储在配置文件中的用户名密码,成功返回ture。e.Authenticated用来告诉系统(网站)验证是否成功。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值