基于角色的安全性与表单身份验证,使用数据库为用户和角色

时间:2012-07-16 09:23:19

标签: c# asp.net

我正在使用表单身份验证和角色身份验证来处理Web登录应用程序。

我对角色身份验证不太熟悉,我在谷歌搜索了一些教程,但我无法理解。

所以,

  • 1.要创建具有特定角色的用户,必须在此处完成所有操作:

http://i1.asp.net/asp.net/images/pss/module08_06.jpg(但是,我想在asp.net sql数据库中存储用户信息和角色)

到目前为止,我认为使用以下表格列创建数据库:

1.ID(int,primary)
2.Username(varchar(10))
3.Password(varchar(10))
4.RoleType(varchar(10)) - Roles are : Admin / User 

登录时,检查user&pass是否有效,然后从数据库中为当前用户选择roletype

If roletype = Admin 
   Redirect to a certain page
else if roletype = user
   Redirect to other page

但我不认为asp.net网页知道列RoleType用于roles并且它没有意义,我的意思是<allow users="Admin"/>之间没有连接和我的专栏RoleType

<location path="\Admin\">
    <system.web>
        <authorization>
            <allow users="Admin"/> //this 
            <deny users="*"/>
        </authorization>

所以,如果有人不介意帮助我,我会非常感激。 谢谢     

1 个答案:

答案 0 :(得分:2)

ASP.NET附带内置工具,用于创建用户(成员)和角色数据库,该数据库具有您需要的所有正确模式。

我强烈建议你从那里开始,尝试自己动手。

http://msdn.microsoft.com/en-us/library/x28wfk74.aspx

一旦你完成了这一点,使用内置的用户/角色管理屏幕&amp;内置的SqlMembershipProvider&amp; SqlRoleProvider

修改

快速谷歌之后,ASP.NET似乎有一个关于asp.net会员资格的非常好的详细教程。角色安全

http://www.asp.net/web-forms/tutorials/security

您需要阅读有关会员资格,角色和行业的整个部分。管理员。