ASP.NET FormsAuthentication and membership

僤鯓⒐⒋嵵緔 提交于 2019-12-21 23:07:44

问题


I can use forms authentication in ASP.NET without membership. i.e:

FormsAuthentication.RedirectFromLoginPage(usuario.UsuDs, false);//usuario.UsuDS is the textbox  username in login's form

Then i can write code like:

     [Authorize(User="UserTest")]
        public ActionResult Criar(Usuarios usuario)
        {
            try
            {
                ...
            }
                ...
}

And it only authorize "UserTest" user in especific views. However,i would like to write:

     [Authorize(Roles="Admin")]
        public ActionResult Criar(Usuarios usuario)
        {
            try
            {
                ...
            }
                ...
}

But i cant set roles without Membership.

Any ideias to set and get roles from ASP.NET without membership?


回答1:


You can certainly use roles without Membership. In fact, prior to ASP.NET 2.0 we didn't have Membership at all, garsh darnit, and we liked it that way!! ;-)

Here's an article that shows how to implement roles without Membership: Role-Based Authorization With Forms Authentication. In a nutshell, you have to write some code that assigns the roles to the user once they're authenticated.

Happy Programming!




回答2:


Sure you can--the Authorize element just interrogates the IPrincipal living in the HttpContext.Current.User property as to which roles it has. Now, if you were to say, stuff your own custom principal, into that object, you could very easily have roles and such.



来源:https://stackoverflow.com/questions/3638535/asp-net-formsauthentication-and-membership

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!