基于角色的多级授权的数据库设计
我正在 ASP.NET Web-From 中设计一个应用程序,它需要基于角色的多级授权和权限(CRUD 操作)。
它需要对用户访问Web表单以及表单和数据库表上的CRUD操作进行授权。
应用程序的管理员将能够确定哪些角色有权访问特定页面以及有权执行哪些操作。
//More Info :
我正在使用 ASP.NET Web-Form 4.0 和 Entity Framework 4.1 数据库优先方法。
我熟悉 ASP.NET 2.0 成员资格、角色、表单身份验证。
我将不胜感激设计数据库的任何建议或帮助。
I'm designing an application in ASP.NET Web-From which require Multilevel
role-based authorization and permission (CRUD Operation ) .
It required to do authorization users at accessing Web-Forms and CRUD Operations On Forms And tables of database .
Administrator of the application would be able to determine which roles has access to specific page and which operation authorized to do .
//More Info :
I'm using ASP.NET Web-Form 4.0 and Entity Framework 4.1 Database First approach.
I'm familiar with ASP.NET 2.0 Membership, Roles, Forms Authentication .
I would appreciate any recommendation or help in designing Database .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果我理解正确的话,您将拥有一组用户(可能细分为子集:每个子集都是一个组)。
另外:
每个表格或表格。
所以:
其中说:
Form001 是一个 (F)orm,每个人都可以阅读它(但不能修改其结构)。
SALES 组的用户也可以使用表格 1 进行更新。
管理员(组)可以修改、删除或使用表单Form002(但不能创建它...)
管理员可以创建新表单。
Tab-045A是一个表,其记录可以由销售组的用户创建/使用/修改/删除。
一些注意事项:
必须管理组和子组,您最好查看目标数据库中存在哪些类型的设施来管理树结构。你最好通过看几个与此相关的问题来温习一下这个主题。这是一个让您开始的方法,但它不是唯一的方法:
如何在SQL数据库中存储树
If I understand this correctly, you will then have a Set of Users (possibly subdivided in SubSets: each Subset being a Group).
Also:
each Form or Table.
So:
Which says:
Form001 is a (F)orm and Everyone can Read it (but not modify its structure).
Users from the SALES group can use Form 1 to update, too.
Administrators (a Group) can modify, delete or use Form Form002 (but not create it...)
Administrators can Create new Forms.
Tab-045A is a table, whose records can be created/used/modified/deleted by users from the Sales group.
A few caveats:
Having to manage groups and subgroups you better look what kinds of facilities exist in your target DB to manage Tree structures. And you better brush up on the subject by looking at a few questions about this. Here is one to give you a start, but it's not the only one:
How to store a tree in SQL database