2008-09-16 86 views
-1

我正在设计一个门户的安全体系结构。该网站包含页面,视频,图片,用户,数据库,文件系统对象等。控制访问所有这些对象的最佳方法是什么?你将如何存储权限? 64位数据库变量是否足以存储权限?创建安全架构的最佳方式是什么?

E.g. Windows雇用了ACLsSIDs。你有更新的解决方案吗?

回答

1

我不喜欢将权限作为标志存储在一个变量中的想法。 我宁愿与用户建立多对多的角色对象。

对于编辑特定对象的权限,我使用对象的方法或外部函数,具体取决于我如何概括安全策略。

对于中等大小的门户网站来说,这种方法非常好。

0

大部分常见的网络基础设施都有内置的安全系统。例如,ASP.NET有一个相当健壮的安全子系统。安全性很难得到正确的处理,所以几乎总是这样,你会想要使用一个定期测试的系统。

如果你绝对必须编写自己的安全系统,那么我建议研究各种技术,如ACL,LDAP作为用户,组,模拟都是复杂的主题,需要进行研究以便与您的最佳匹配实际需要。

0

无论你会做什么,使它简单。更容易制作,更容易证明,更容易审核。 更容易适应。

首先,考虑一个组/用户系统。对于每一个对象定义设置权限,然后连接它们喜欢 - 这个用户拥有这些权限,这组具有这些权限等

如果这还不够,你(确保它是真的不够),使用某种ACL系统,最好与您现有的解决方案集成在一起,最好尽可能简单。

0

我打算按照基于角色的访问控制安全设计模式Security Patterns: Integrating Security and Systems Engineering,p249)。角色与ProtectionObject有关联。关联名称是IsAuthorised for。有一个名为Right的关联类,它有一个accessType成员和一个checkRights方法。角色与用户进行多对多关联。关联名称是MemberOf。这个结构可以代表角色,用户和权限检查。

我的主要问题是如何存储每个对象的权限。假设我们有页面,webparts和文件系统对象。我可以将这些对象的权限存储在数据库中。此方法还可以控制系统对象和文件系统对象。这对我来说是一个很大的问题如何在内存中存储和缓存这些权限集以及如何有效检查访问

+0

我想你应该在你的问题中包括这个... – KovBal 2008-09-30 16:00:53

相关问题