asp.net 写一个完整的 Forms身份认证

1,WebConfig配置

 

 

修改:

管理员通道,用户通道

  <!--设置Admin目录的访问权限-->
  <location path="Admin">
    <system.web>
      <authorization>
        <allow roles="Admin"/>
        <deny users="?"/>
      </authorization>
    </system.web>
  </location>
  <!--设置Users目录的访问权限-->
  <location path="Users">
    <system.web>
      <authorization>
        <allow roles="Operator,Monitor"/>
        <deny users="?"/>
      </authorization>
    </system.web>
  </location>

 

2,登录页面Login 提交事件

记录权限:

                    //得到权限保存cookie
                    HttpCookie myCookie = new HttpCookie("userRole");
                    myCookie["Role"] = dt.Rows[0][2].ToString();//用cookie保存权限
                    myCookie.Expires = DateTime.Now.AddDays(1d);//设置cookie一天有效
                    Response.Cookies.Add(myCookie);//添加cookie

 

 

3,全局应用程序 Global.asax

 

Ctx.User = new System.Security.Principal.GenericPrincipal(Id, Roles);这样修改可以不用派生类

 

3,继承一个派生类 PageUser

 

具体怎么分权限,配置WebConfig

 

主页面代码,为了防止对方,知道你页面位置,没权限也想去来操作系统

 

 

还可以url 重写或动转静态 提高网页安全问题。

 

 

 

 

 流程图:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值