在asp.net中设计基于权限的角色系统而不是基于目录

发布于 2024-12-11 07:57:40 字数 536 浏览 0 评论 0原文

我正在使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

霓裳挽歌倾城醉 2024-12-18 07:57:40

您可以利用 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文