为解决网络中多安全域间的访问控制难题, 提出一种基于角色和信任度的访问控制模型.将角色和信任度相关联, 根据用户角色等级定义角色评价权重, 利用角色评价权重和角色行为计算其信任度.在引入直接信任度、推荐信任度和反馈信任度的基础上, 通过调节各自的评价权重参与综合信任度评价, 实现了细粒度的访问控制.在局域网环境下利用web应用系统构建具有多安全域的访问控制模型, 并进行了仿真实验, 实验结果证明该模型具有较高的安全性、可扩展性和灵活性.
To solve the problem of access control among different security domains in networks, an access control model is presented based on role and trust degree. Each role associates with a trust value, the role evaluation weights are defined in terms of user's role rank and the trust degree is calculated according to the role evaluation weights and role behavior. Direct trust degree, recommendation trust degree and feedback trust degree are introduced in this model to achieve fine-grained access control. The three trust degrees mentioned above participate in the comprehensive trust degree evaluation by adjusting their weights. Simulation is conducted in local area network environment in which a web system is used to construct an access control model with multi-domain. Experiment demonstrates that the model is of higher security, expansibility and flexibility.
随着网络技术和应用的高速发展,网络交互也越来越频繁,网络安全形势将更加严峻复杂.保证信息系统的安全成为应用中的关键问题.访问控制保证了主体对客体的所有直接访问都是经过授权的,同时防止合法用户对系统资源的非法访问,是实现数据保密性和完整性的主要手段[1].基于角色和信任度的访问控制模型具有诸多优点,已被广泛应用.如何有效解决角色与信任度的关联问题以及如何设计信任评价体系一直以来都是业内的研究热点.
1 相关工作Barker等[2]提出了基于身份的访问控制模型,采用自治代理的方式,通过分析请求者当前和历史的事件和行为,判定是否为允许访问请求.该自治模型具有较好的自动推理能力,缺点是系统资源占用率较高.
Han等[3]提出一个C/S架构的信任分散访问控制框架.通过客户端的临时监控器和服务器端的主监控器评估应用程序的访问请求,并在主题上下文感知访问控制中保护私有数据.该方法的缺陷是增加了客户端和服务端的负担,当客户端出错时,服务端无法觉察并修复.
Li等[4]提出一种弹性访问控制策略,该策略确保在用户离线的情况下,独立用户组仍然有权执行关键任务,但是该策略的性能有待提升.
笔者提出了采用基于角色和信任度的访问控制方法,提出了反馈信任度、角色信任度评定权重等概念,结合直接信任度和推荐信任度对用户的访问行为进行信任度综合评价,从而实现了动态细粒度的访问控制.
2 模型框架基于角色和信任的实体访问控制框架(见图 1),描述了各组件的关系.该框架主要包括实体识别和信任管理两大部分,这两部分将在下文中给予说明.
该框架中的实体识别主要用于识别登录实体(组件用户)的等级,从而获取其信任评价权重,用于其后细粒度的信任评价.实体识别的功能还包括若为异域实体互访,则进行实体映射等操作.在此过程中,若实体为匿名实体也不会影响到与其他实体的交互.
匿名实体拥有最低的身份等级,若符合资源的访问信任度阈值也能按照既定的流程进行交互.非匿名实体在其会话过程中通过以上框架进行信任度的计算,参与信任评估,为避免匿名用户恶意诋毁,匿名用户不参与信任评价.
2.2 信任管理信任管理[5]包括信任度计算、信任收集和更新以及信任生命周期管理等.信任管理模型结构如图 2所示.信任度的计算可以分为交互实体的直接信任计算、反馈信任计算和网络中其他实体的推荐信任计算3部分.在上述计算过程中,赋予3类计算结果不同的权重系数.
若交互实体是新加入网络的,可通过第三方权威赋予一个初始的信任度值,并为其分配一定的访问权限.未加入系统的实体也可以使用匿名实体,由系统自动赋予一个较小的信任度值和一个最小权限操作的角色.
3 角色与信任度根据用户在安全域中的角色划分为不同等级,并设定相应的权重系数参与信任度评价.在基于信任度访问控制[6-9]和基于角色访问控制[10-11]的基础上,提出了反馈信任度和角色信任度评价权重概念,给出了综合信任度的计算方法.
3.1 角色管理与角色信任度评价在进行角色管理[10]时,需要解决的主要问题是角色映射策略、角色的添加和删除策略以及角色冲突解决策略等.根据角色的不同设立不同的等级,又根据等级设立了不同的参与信任度评价的权重,即角色评价权重.
1) 角色映射.两个对等的安全域进行资源互访时,须将本域内角色映射成为目标资源域中的角色.这里提出的访问控制模型系统中,对于不信任安全域间映射与信任安全域间映射采取不同的角色映射策略.对于不信任安全域间的角色映射选择缺省略.对于信任安全域间的角色映射采用部分明确策略,使得访问控制具有更高的灵活性和扩展性.因为不需要为每个外域角色与本域内部角色之间建立映射关系,而通过传递映射与域内角色层次树明确外域角色在角色映射中的层次位置.
2) 角色的添加.当添加新的角色时,新角色的映射关系根据模型所采取的映射策略自动生成.
3) 角色的删除.删除一个本域角色,则到此角色的映射将被替代为映射至其所有子角色.
4) 角色冲突的解决.访问控制模型的角色冲突解决方法为赋予外域角色在本地角色层次映射中所允许的最高转换角色.
5) 角色信任度评价.根据用户在访问控制模型中安全域内和各个安全域中的作用设立了不同的角色,每一种角色赋予不同的评价权重,权重越高反映出用户等级权限越高.
表 1所示为仿真实验中设置的角色等级与角色评价权重取值的一个示例,在实际环境中,可根据需要设定更多的用户等级,并根据经验设定与等级相适的评价权重.
根据文献[7],将时刻t节点ni对节点nj的直接信任度定义为D(ni, nj, t).为网络中的每个网络节点分配一个直接信任表,该表中的每个单元格为与该节点直接交互的节点.根据所有节点的直接信任表,构建一个二维的直接信任关系矩阵,定义其为M1,节点ni对节点nj的直接信任度用M1(ni, nj)来表示.
在时刻t,若节点ni和节点nj发生了一次交互,则直接信任度D(ni, nj, t)为
(1) |
其中:e-(t-tij)为时间衰减函数,它描述了直接信任度随着时间递减的情况.
在时刻t,若节点ni和节点nj发生了多次交互,则其直接信任度用交互的均值来表示
(2) |
其中:
根据文献[7],定义时刻t节点ni对节点nj的推荐信任度R(ni, nj, t)为
(3) |
节点nj的推荐信任度是由推荐节点ni对nj的评价而得出的.其中,wi是节点ni对节点nj的信任评价权重,定义为
(4) |
在直接信任度基础上,笔者提出反馈信任度的概念,并给出反馈信任度的计算方法.与直接信任度和推荐信任度不同,反馈信任度是通过反馈自己的访问行为而得到的评价,而且这种反馈评价有助于用户快速调整信任行为.
定义1 反馈信任度是一种激发用户对自己的访问行为负责的机制.用户只有按照规定、安全可靠地使用信息系统中的资源才会提升自己的信任度,进而才能有权限享受到更安全、可靠的服务.
在提出的访问控制模型中,对于每个节点ni都建立一个二维反馈信任矩阵.这个矩阵中记录了所有节点之间的反馈信任评价值.定义其为M2,节点ni对节点nj的反馈信任度用M2(ni, nj)来表示.
定义在时刻t,节点ni对节点nj的反馈信任度为
(5) |
式(5) 仅是考虑到交互次数为一次的情况,若节点ni和节点nj交互多次,那么它的反馈信任度的计算可取交互的平均值.
(6) |
X(ni, nj, tk)表示tk时刻,节点ni反馈给节点nj的此次操作评价,取值区间为[0, 1].式(6) 中,
直接信任度、推荐信任度和反馈信任度从不同的角度描述了用户的信任度,而把它们结合起来定义为综合信任度,则可以全面准确地描述用户信任度.对于任意节点ni,nj,则
(7) |
其中:T(ni, nj, t)表示在时刻t节点ni对节点nj的综合信任度.
当有第三方身份认证机构参与信任度评价时,节点ni,nj在时刻t的综合信任度计算公式可表示为
(8) |
其中:P(ni, nj, t)是一个状态函数,表示在时刻t,ni对nj访问的身份角色是否允许. P(ni, nj, t)的取值为0表示身份允许,取值为1则表示身份不允许.
当交互间隔时间t过长时,信任度会随时间而发生衰减,当前网络节点的状况就不能由直接信任度D(ni, nj, t)来真实反映,而推荐信任度R(ni, nj, t)和反馈信任度F(ni, nj, t)则能较准确地反映节点当前的状况.因而在计算出直接信任度D(ni, nj, t)、推荐信任度R(ni, nj, t)和反馈信任度F(ni, nj, t)后,可通过对式(8) 中的3种信任度增加权重,计算得出综合信任度为
(9) |
其中:α+β+γ=1, α≥0, β≥0, γ≥0.
在实际情况中,若某些安全组件只是服务的提供者,则其不具备反馈信任度.此条件下的综合信任度为
(10) |
其中:α+β=1, α≥0, β≥0.同理,若某些安全组件并没有提供服务和资源,则其不具备直接信任度.此条件下的信任度为
(11) |
其中:β+γ=1, β≥0, γ≥0.
4 实验与结果4.1 实验环境在实验室局域网环境下进行仿真实验.将一台服务器作为总访问控制中心,2台PC分别为两个不同的域管理中心,其他3台PC为分属于不同域的安全组件.仿真实验模型结构如图 3所示.
图 3中,A1为模型访问控制总中心,负责用户管理,提供安全信任策略,动态访问控制决策,通过请求分析进行实体识别、信任评估、交互评估、交互监控和信任更新. B1、B2分别为安全域B1和B2的域管理中心,管理自己所在的安全域. B11、B12、B21分别为属于安全域B1和安全域B2的安全组件.
4.2 实验过程与结果在仿真实验模型中,ub11和ub12是同处于安全域B1的两个安全组件.根据表 1对不同用户进行角色定级并确定角色评价权重的取值.在实验初始阶段对信任度和信任情况的关系进行了定义,如表 2所示.
在模型创建安全组件用户的过程中都被赋予了0.7的初始推荐信任度,此时的直接信任度和反馈信任度均为0.
在模型用户创建时立即进行访问测试,故此时的时间衰减可忽略不计(计算结果近似等于0.7,即为时间衰减导致),因此第1次互访的信任度为
(12) |
其中:α+β+γ=1, α≥0, β≥0, γ≥0.
由式(11) 计算得到T(ub11, ub12, t0)=T(ub12, ub11, t0)≈0.7,即在时刻t0,组件ub11对组件ub12的访问信任度为0.7;同时ub12对ub11的访问信任度为0.7.根据模型设定ub11的资源“文档1”的读写信任度阈值分别为0.5和0.7,此时ub12拥有对“文档1”进行读写操作的权限;同理,ub11有对ub12的资源“文档2”进行读写操作的权限.
测试结果如表 3所示.初始条件如下:系统建立角色时给定的推荐信任度为0.7,文档名称1和2读写信任度阈值分别为0.5,0.7.详细测试时读写操作交替进行,初始交互评价取值为0.9,读写交互评价均以每次0.05降低.
从表 3可以看出,当评价信任度逐渐降低时,总信任度就会随着下降;反之,当用户提供了比较好的服务、资源或是安全可靠地行使自己的合法权限时就会得到较高的信任度评价,从而总信任度就会随着提高.测试结果说明笔者所提出的访问控制模型是可行的、有效的.
5 结束语提出了一种基于角色和信任度的访问控制方法和反馈信任度、角色信任度评定权重等概念,结合直接信任度和推荐信任度对用户的访问行为进行信任度综合评价,并通过实验仿真验证了该模型的有效性.
随着云计算技术的发展,云应用越来越广泛,如何将本模型应用到混合云中,这将是下一步研究的重点.
[1] | Tolone W, Ahn G J, Pai T. Access system[J].Journal of ACM Computing Surveys, 2005, 37(1): 29–41. doi: 10.1145/1057977 |
[2] | Barker S, Sergot M J, Wijesekera D. Status-based access control[J].ACM Transactions on Information and System Security, 2008, 12(1): 1–47. |
[3] | Han W, Xu M, Zhao W, et al. A trusted decentralized access control framework for the client/server architecture[J].Journal of Network and Computer Applications, 2010, 33(2): 76–83. doi: 10.1016/j.jnca.2009.12.012 |
[4] | Li Ninghui, Wang Qihua. Resiliency policies in access control [C]//Proceedings of the 13th ACM Conference on Computer and Communications Security. New York: ACM Press, 2009: 113-123. |
[5] | Abassi R, El F S G. Towards a generic trust management model [C]//2012 19th International Conference on Telecommunications. Piscataway: IEEE Press, 2012: 1-6. |
[6] | Ma Shunan, He Jingsha, Gao Feng. An access control model based on multi-factors trust[J].Journal of Networks, 2012, 7(1): 173–178. |
[7] |
王亮, 郭亚军. P2P系统中基于声誉的信任评估机制[J]. 计算机工程与应用, 2009, 45(15): 136–138.
Wang Liang, Guo Yajun. Reputation-based on trust evaluation mechanism for P2P system[J].Computer Engineering and Applications, 2009, 45(15): 136–138. doi: 10.3778/j.issn.1002-8331.2009.15.039 |
[8] |
刘武, 段海新, 张洪, 等. TRBAC:基于信任的访问控制模型[J]. 计算机研究与发展, 2011, 48(8): 1414–1420.
Liu Wu, Duan Haixin, Zhang Hong, et al. TRBAC: trust based access control model[J].Journal of Computer Research and Development, 2011, 48(8): 1414–1420. |
[9] | Wang Xiao. A study of P2P access control strategy based on trust and security grade[C]//2011 International Conference on Computer Science and Service System. Washington D C: IEEE Computer Society, 2011: 126-128. |
[10] | Feng Xiaosheng, Ge Bin, Sun Yang, et al. Enhancing role management in role-based access control[C]//2010 3rd IEEE International Conference on Broadband Network and Multimedia Technology. Washington D C: IEEE Computer Society, 2010: 677-683. |
[11] | Kabir M, Wang Hua, Bertino E. A role-involved purpose-based access control model[J].Information Systems Frontiers, 2012, 14(3): 809–822. doi: 10.1007/s10796-011-9305-1 |