(一)asp.net2.0简单用户权限管理

由于基础数据维护模块和一些系统性的配置只允许管理员操作,不想动用数据库来做用户和权限管理,想利用asp.net2.0自带的用户角色管理.
1.首先在web.config文件的<system.web>的节点下添加管理员的基本信息

None.gif<authentication mode="Forms">
None.gif            
<forms name="sellmanager" loginUrl="Login.aspx" protection="All" timeout="30">
None.gif                
<credentials passwordFormat="Clear">
None.gif                    
<user name="admin" password="123456"/>
None.gif                
</credentials>
None.gif            
</forms>
    </authentication>
None.gif
<authorization>
None.gif            
<deny users="?"/>
  
</authorization>

(1)passwordFormat有三种方式可选,这里选择没有加密.
(2)<deny users="?"/>这里说明了禁止匿名用户的访问

2.在login.aspx页面添加login控件,在Authenticate事件里添加
protected   void  Login1_Authenticate( object  sender, AuthenticateEventArgs e)
    {
        
if  (FormsAuthentication.Authenticate(Login1.UserName, Login1.Password))
        {
            FormsAuthenticationTicket ticket 
=   new  FormsAuthenticationTicket(Login1.UserName,  true 30 );
            FormsAuthentication.RedirectFromLoginPage(Login1.UserName, Login1.RememberMeSet);
        }
    }
(1)这样就能实现使用web.config里的配置来验证用户

3.发现一个问题:登陆页显示不正常,登陆后就正常了,由于用了同一个母版页就觉得很奇怪.
找了很久终于发现是因为<deny users="?"/>这个配置使得没登陆的时候没有权限访问css和js文件,于是在<configuration>下面添加了
< location  path ="Login.aspx" >
    
< system .web >
      
< authorization >
        
< allow  users ="?"   />
      
</ authorization >
    
</ system.web >
  
</ location >
  
< location  path ="style/SMStyle.css" >
    
< system .web >
      
< authorization >
        
< allow  users ="*"   />
      
</ authorization >
    
</ system.web >
  
</ location >
  
< location  path ="images" >
    
< system .web >
      
< authorization >
        
< allow  users ="*"   />
      
</ authorization >
    
</ system.web >
  
</ location >

4.还有一个问题要解决的,就是
FormsAuthentication.RedirectFromLoginPage(Login1.UserName, Login1.RememberMeSet);
如果用户起始也就是登陆页会出现登陆成功了还停留在本页的情况,所以还要加个判断.

转载于:https://www.cnblogs.com/xuwenyan/archive/2007/04/03/698994.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值