2010-01-08 79 views
7

我也有需要是权限设置(即会员/非会员)权限设计

内容的应用我有角色/身份验证设置就好了,那不是我的问题。我的问题基本上是要求最好的方式来存储每个对象的权限。基本上有“访客”和“成员”角色,以及简单的“允许”“拒绝”每个对象的权限。

任何想法?该方案是用写在ASP.NET MVC C#,LINQ和MS-SQL 2005

+0

我有点糊涂了...你问如何应用这些角色控制器,操作方法以及网页上的最终功能,还是您在问如何将这些角色应用于访问特定对象? – 2010-01-08 20:42:23

+0

哪个对象完全是你想要添加权限? – shenku 2014-02-18 05:05:10

回答

7

如果你想保护资产(文件,数据库行,域实体,文档等),而不是应用功能用户能力,基于角色的安全性不太好。

更好的模型是使用访问控制列表(ACLs),就像你从NTFS中知道的那样。你几乎自己说过,因为你需要为每个用户或角色的每个对象分配特定的权限。 ACL就是这样做的。

如果您需要保护SQL Server中最终为行的对象,则需要为ACL定义自定义表,因为SQL Server不支持行级权限。

根据这些ACL中的数据,您必须在数据访问组件中实施必要的安全检查。

这里有一些链接,SO相关答案: