基于角色的权限管理系统设计的问题和策略

基于角色的权限管理系统设计的问题和策略中图分类号:文献标识码:A文章编号:1009-304433-7918-04不同于自主或强制访问控制模型,基于角色的访问控制以角色作为中介,系统首先给角色授权,然后将角色分配给用户,角色架起了访问控制中访问主体与客体之间的一座桥梁。之所以不直接将权限授予用户,是因为角色比用户更具稳定性。当因为系统需求对用户进行变更时,只需修改角色与该用户的关联,而不必对角色与访问控制客体之间的关联进行修改,使系统设计的灵活性有所增强。1层次RBAC模型在基于角色的访问控制模型中,通常采用分层技术对角色的职权和责任能力进行描述。通过添加对角色分层的支持,能够提高RBAC的管理效率、明晰角色间的逻辑关系。层次RBAC模型在RBAC角色集定义的基础上,提出了角色层次的概念,并添加了相应的访问控制规范。层次RBAC模型如图1所示。层次RBAC中包含两类角色分层,常规角色层次和有限角色层次。常规角色层次在角色分层中支持任意偏序关系,可以实现不同角色间的许可集和用户集从属关系的多重继承;有限角色层次强加限制了角色分层系行为,使系统中分层技术被限制在简单的逻辑结构中,有利于增强系统授权的安全性。2角色控制的权责分割权责分割是系统设计中常用的一条安全法则,主要用于加强有利害关系策略的冲突性。该冲突性允许一个用户可以同时获得两个的冲突角色,通过角色分层和个性化角色集为高层次的组织安全策略提供约束机制。为了便于权限管理系统的设计,参照RBAC标准的有关内容,我们将权责分割分为两大类:静态权责分割和动态权责分割。静态权责分割静态权责分割属于静态约束,在角色集定义时就实施访问控制约束。SSD定义了一个包含两个角色的集合,为角色集指定限制条件,限制用户指派关系。SSD还通过基数对策略违例做出了规定:如果系统的局部组织中有一个由5个角色组成的角色集,则在授权过程中仅能有不超过4个的用户角色数目。动态权责分割动态权责分割属于动态约束,在激活角色时才实施访问控制约束。DSD限制了对用户有效的许可,为每个用户的最小权限提供了不同的扩展支持。我们定义DSD是动态权责分割中对的集合,其中rs代表角色集,n代表基数。我们认为在任意一个DSD的情况下,不存在用户会话能从rs中同时获得大于等于n的角色个数。该结论证明如下:设t是rs的一个子集,据上述定义可得到:SSD能够在用户指派角色时,解决潜在的利害冲突;DSD则是在角色激活时,解决产生的策略冲突。3基于角色的访问控制应用在权限管理系统中,SSD用于用例设计,主要是对访问控制核心角色的定义;DSD用于访问控制,主要是对权限管理核心类的描述。系统用例设计在采用RBAC模型的权限管理系统中,角色功能图的用例框图如图2所示。该用例框图中的角色控制执行者主要有3个:安全管理员、用户和角色领域工程师。角色领域工程师是权限管理系统的核心角色,主要用于描述权限集,实施角色分层和附加约束操作。安全管理员管理负责管理基于角色的权限系统,为用户授权。用户被定义为一个真实的人或者一个外部的系统,他可以通过角色策略,要求系统执行针对某个对象的某种操作。访问控制模块访问控制模块是整个权限管理系统的核心部分,它的主要功能是用来验证用户或其角色是否具有访问权限。对外部系统而言,访问控制模块采用黑盒设计,通过返回值确定允许或拒绝用户的操作申请。此模块的流程图如图3所示,从建立权限与资源的对应关系入手,逐步实现角色实体与权限实体之间调用权限操作,从而建立权限实体与层次结构的关联。访问控制模块设计中的主要成员类有User、Session、Role、Permission、Constrain、Object,其中Role是核心类用作主要类的连接。User是一个接口,它包括RBAC控制模块中不同功能的实现类,每一个User■对应一个Sessiono在用户Logon成功后Session由系统提供,当会话时钟超时系统会要求用户重新进行身份验证。每一个Logon用户可以在自己的Session中激活符合条件的角色,在激活角色之前系统先要调用Constrain检查,确认用户角色之间是否存在冲突。Role类的设计也和Session一样使用了多例设计模式,其目的同样是为了控制被激活角色的数量。角色管理实...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

确认删除?