在asp.net中设计基于权限的角色系统而不是基于目录
我正在使用 asp.net 2.0,并且对于用户配置文件和角色有不同的 Sql 数据库表架构。但我的角色并不像默认 Asp.net 成员资格组件所假定的那样依赖于基于目录。我已经通过自定义配置文件提供程序实现了此处的提示。 角色系统我设计的是基于CanDeletePost、CanCreatePost、CanFlagPost
等权限集,管理员将为权限集
创建一个名称,这个将是角色。
例子:
角色名称 - 主持人
权限 - CanDeletePost、CanCreatePost、CanFlagPost
问题:
- 我应该如何使用 asp.net 实现这个基于权限的角色系统。
- 会员资格与角色提供者有何不同。我还是没明白!!
I am using asp.net 2.0 and have a different Sql Database table schema for User profiles and Roles. But my roles do not depend on directory based as the Default Asp.net membership component assumes. I had implemented by Custom Profile Provider with hints from here. Roles system i designed are based on set of permissions like CanDeletePost, CanCreatePost, CanFlagPost
, admin will create a name for permission set
and this will be role
.
Example:
Rolename - moderator
Permissions - CanDeletePost, CanCreatePost, CanFlagPost
Question:
- how should i realize this permission based role system using asp.net.
- How is a membership different from a Role Provider. I still don't get it!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以利用 SqlRoleProvider 来提供基于角色的权限。
每当您想要显示/使用需要特定角色的功能时,只需检查用户是否是该角色的成员 (page.User.Identity.IsInrole('moderator'))
成员资格和角色提供者之间的区别,讨论身份验证和授权之间的区别。 MembershipProviders 关心身份验证,而 roleProviders 关心授权。
You can utilize the SqlRoleProvider to provide role-based permissions.
Whenever you want to show/use a function that requires a specific role, then just check, if the user is a member o that role (page.User.Identity.IsInrole('moderator'))
The difference between membership and role providers, goes into the difference between authentication and authorization. MembershipProviders are concerned about authentication, whereas roleProviders are concerned with authorization.