内容显示页
 
类别:.Net + C# | 浏览(1696) | 2008-12-18 0:11:54

如果您研究过这个问题,那么,你一定会比较郁闷,现在网上流行的那个,国产的,里面有点问题,反正我一从昨天研究到现在 2008年12月17日 23时59分10秒,才搞明白是怎么回事,你说我们这些人容易吗!如果只是为了完成任务,我用ASP就OK了,为什么还要用ASP.net,如果我们用.net时还用ASP的思路也得了,为什么还要研究ASP.net提供的东西。呵呵,不为什么,喜欢,我所做的正是我想做的,我不是为了完成一个任务,而是为了提升自己。总之一句话:我的目标是简化生活,技术高了,就不怕出错了,天塌下来也能给他顶回去。

言归正传,首先,贴上人家外国人的地址:http://www.codeproject.com/KB/web-security/formsroleauth.aspx

有兴趣的可以看看,没兴趣的直接下我的Demo,有点兴趣的可以看下国人处理时有问题的地方:

Global.asax

protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{

    if (HttpContext.Current.User != null)//如果当前的http信息中存在用户信息  
    {
        if (HttpContext.Current.User.Identity.IsAuthenticated)//如果当前用户的身份已经通过了验证  
        {
            if (HttpContext.Current.User.Identity is FormsIdentity)
            {
                //如果当前用户身份是FormsIdentity类即窗体验证类,此类有个属性能够访问当前用户的验证票  
                FormsIdentity fi = (FormsIdentity)HttpContext.Current.User.Identity;//创建个FormsIdentity类,用他来访问当前用户的验证票
                //获得用户的验证票  
                FormsAuthenticationTicket ticket = fi.Ticket;
                //从验证票中获得用户数据也就是角色数据  
                string userData = ticket.UserData;
                //把用户数据用,分解成角色数组  
                string[] roles = userData.Split(',');
                //重写当前用户信息,就是把角色信息也加入到用户信息中  
                HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(fi, roles);
            }
        }
    }

最后,贴上国人的地址,其实文章写的不错,只是这个事件没写对,其它的都不错,地址是:Asp.net中基于Forms验证的角色验证授权

哦,还没到最后呢

最后是我的Demo:世界上最简单的ASP.net的Forms验证Demo
 


引用本页地址:http://www.yongfa365.com/item/ASP.net-Forms-Demo.html
 
 
相关链接
 
网友评论:
姓名: 记住我
网址:
邮箱:
内容:
验证码:  验证码图片 看不清? 换张图试试
 
     
 
 
文章分类
 
 
.Net + C#(73)
 
 
ASP+VBS(161)
 
 
 
Linux(10)
 
 
 
web 2.0(26)
 
 
 
 
 
心程(68)
 
生活(97)
 
 
     

Power by :柳永法(yongfa365)'Blog  | 京ICP备07011491号  QQ:64049027  E-mail:64049027@qq.com yongfa365'CodePlex yongfa365'CodeGoogle

申请友情链接 要求:跟本站主题相类似正规网站,双方交换为首页位置

转载请注明来源,以便后人及时得到最新、修正、加强版!!!