我使用的是asp.net 2.0,并为用户配置文件和角色提供了不同的Sql Database表模式 . 但是我的角色不依赖于基于目录,因为默认的Asp.net成员资格组件假定 . 我已经通过自定义配置文件提供程序实现了here.的提示我设计的角色系统基于 CanDeletePost, CanCreatePost, CanFlagPost
等权限集,管理员将为 permission set
和 will be role
创建一个名称 .
示例:
Rolename - 主持人权限 - CanDeletePost,CanCreatePost,CanFlagPost
问题:
-
我应该如何使用asp.net实现这个基于权限的角色系统 .
-
成员资格如何与角色提供者不同 . 我还是不明白!!
1 回答
您可以使用SqlRoleProvider提供基于角色的权限 .
每当您想要显示/使用需要特定角色的函数时,只需检查,如果该用户是该角色的成员(page.User.Identity.IsInrole('moderator'))
成员资格和角色提供者之间的区别在于身份验证和授权之间的区别 . MembershipProviders关注身份验证,而roleProviders关注授权 .