基于属性的委托撤销研究1.doc

上传人:sccc 文档编号:5191875 上传时间:2023-06-12 格式:DOC 页数:9 大小:373.50KB
返回 下载 相关 举报
基于属性的委托撤销研究1.doc_第1页
第1页 / 共9页
基于属性的委托撤销研究1.doc_第2页
第2页 / 共9页
基于属性的委托撤销研究1.doc_第3页
第3页 / 共9页
基于属性的委托撤销研究1.doc_第4页
第4页 / 共9页
基于属性的委托撤销研究1.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《基于属性的委托撤销研究1.doc》由会员分享,可在线阅读,更多相关《基于属性的委托撤销研究1.doc(9页珍藏版)》请在三一办公上搜索。

1、精品论文推荐基于属性的委托撤销研究1叶春晓,吴中福 重庆大学计算机学院,重庆(400044) E-mail:yecx摘要:基于属性的委托模型中,受托者必须同时满足委托先决条件和委托属性表达式才能 被委托权限或角色。在该模型中,委托撤销完成将委托出去的权限收回到委托者处的工作。与常见委托撤销不同,针对基于属性委托模型中委托过程的特点,提出了两种新的撤销模式: 由于用户属性表达式变化引起的委托撤销;由于角色或权限属性表达式变化引起的撤销。这两种撤销模式能够确保当用户属性表达式不再满足委托权限或角色属性表达式时,系统能够 自动地完成相应的撤销操作,保证了委托过程的安全性。关键词:信息安全;访问控制;

2、委托;撤销;属性 中图法分类号:TP390.21 引 言委托(delegation )可实现将委托者(delegator )的全部或部分权限指派给受托者(delegatee)。撤销是委托的逆过程,其作用是将受托者获得的委托权限收回。在 RBAC 中1,URA97 定义了撤销关系,该撤销关系主要针对 URA 过程。由于委托过 程与 URA 过程类似,因而委托模型中的撤销与之类似。在现有的委托模型中,RBDM2,3提出了基于角色的委托模型,首次将角色概念引入到 委托模型中。RBDM 详细讨论了委托撤销,将其分为系统撤销和用户撤销两种。前者指撤 销操作由系统条件自动触发,后者指撤销操作由用户手工完成

3、。RBDM 对后者又进行了进 一步分类。RDM20004模型支持层次角色和多步委托,该模型详细讨论了不同的委托和撤销方式: 将委托分为初始用户委托(Original User Delegaiton )和受托者委托(Delegated User Delegation)两种。同时,将委托撤销分为由委托期限约束条件引起的撤销(Revocation using duration-restriction constraint)和用户撤销(User revocation)。并且将用户撤销分别分为非级 联撤销(Non-cascading revocation)和级联撤销(Cascading revocati

4、on)5,以及由委托者自 己撤销(can-revokeGI )和可由委托者及拥有比委托者级别高的角色的其他用户撤销(can-revokeGD)。PBDM6是为解决权限的部分委托而提出的模型,支持部分委托模式。但该模型主要针 对委托操作,对委托撤销未做深入研究。RPRDM7主要就 RBDM 和 RDM2000 中不能进行重复和部分权限委托进行改进和扩展, 定义了四种委托撤销:只有委托者才能完成撤销、具有委托角色的用户均可完成撤销、系统 自动撤销和系统管理员撤销。该模型对前两者进行了讨论,本质上这两种撤销方式与 RDM2000 和 RBDM 中的撤销操作相同。8-9-ABDMA就基于属性的委托进行

5、了讨论,其中并没有详细讨论委托撤销的问题。本文在此基础上,详细讨论了将属性引入到委托过程后,委托撤销所具有的特点并引入新的委托 撤销类型。本文的章节组织如下:第二节简要回顾了 ABDMA 模型,第三节详细讨论了基于 属性的委托撤销,第四节给出了委托撤销的实际应用,最后是本文的总结和进一步的工作。1本课题得到教育部博士点基金项目(基于用户和角色属性的访问控制研究,20040611002)的资助。2 ABDMA 模型简介在 ABDMA 中,委托约束条件既包含委托先决角色(CR),也包括委托属性表达式(DAE)。 只有同时满足 CR 和 DAE 的受托者才能获得委托角色或权限。ABDMA 考虑到永久

6、委托和临 时委托对受托者在资格和能力上的不同要求。ABDMA 中出现两种新委托类型:确定受托者委托(DDD)适用于委托者在委托之前就 指定了受托者的场合,现有委托模型中的委托操作与之类似;不确定受托者委托(UDD) 适用于委托者不知道受托者确切范围或委托者无法在委托前指定受托者的场合中。无论哪种 类型的委托,受托者不但要满足委托先决条件,而且其委托属性表达式还要满足委托权限的 委托属性表达式。ABDMA 还支持两种不同类型的委托:临时委托和永久委托。临时委托主要适用于即使 受托者不能完全满足委托属性表达式,但也需要进行委托操作的情形。相对于永久委托来说, 临时委托中对受托者的限制较弱。永久委托

7、要求受托者必须满足委托属性表达式的要求,限 制较强。相应的,ABDMA 中将这两种不同类型的委托属性表达式分为临时委托属性表达式(TDAE)和永久委托属性表达式(PDAE)。TDAE 只用于临时委托,而 PDAE 可用于两种类型的委托中。每个权限都同时拥有 PDAE 和 TDAE,其 PDAE 和 TDAE 可能相同,也可 能不同。ABDMA 模型的主要组件如图 1 所示。在 ABDMA 中,临时和永久委托是通过三个关系实现的: can-delegateDPRCRPDAETDRM , can-delegateDTRCRTDAETDRN 和can-delegateURUeeTDR。图 1 ABD

8、MA 模型Fig. 1 ABDMA model3 基于属性的委托撤销ABDMA 中同样支持手工撤销,包括系统管理员撤销和委托者自己撤销。由于手工撤销 方式与其他委托模型类似,并且,手工撤销中并不需要考虑属性,因而本文不详细讨论手工 撤销。3.1 自动撤销系统自动撤销通常利用一种自触发过程:系统按照某种撤销触发机制,如委托角色的时 限、委托先决角色的改变、其他委托约束条件的改变等,自动地判定并撤销委托角色。此处 对常见的可能触发系统自动撤销的触发机制作简略讨论:z委托时限 委托时限为委托持续有效的一段时间。当该时间的最后期限到来时,系统将自动触发该委托。利用时间作为委托自动撤销的触发机制将减少系

9、统管理员或委托者的委托撤销工作负 担。但如同文献4中指出的一样,这种方式实现起来不太方便,需要系统的其他方面的支 持。ABDMA 模型中暂不考虑这类委托撤销。z委托先决角色委托先决角色的改变将引起受托者可能因为不具有执行委托权限所需要的其他权限,而 使其无法执行委托权限。这显然应当撤销所有以此为先决条件的受托者的委托权限。特别是 当某些委托权限以其他委托权限为先决条件时,这些代表先决条件的权限的撤销当引起其他 委托权限的撤销。这种委托撤销比较容易实现。z其他委托约束委托约束的种类非常多,如 SOD、指派基数等。当委托约束变化后,如果原来的委托 不再满足新的约束条件,将会引起相应的委托撤销操作。

10、由于委托约束的种类较多,实现起 来相对困难。z由属性表达式的变化引起的撤销ABDMA 模型将用户、权限和临时委托角色的委托属性表达式(以下简称属性表达式) 作为委托约束条件。委托中必须要求用户属性表达式满足临时委托角色的属性表达式,因而 当用户的属性表达式不满足临时委托角色的属性表达式后,该用户不应当继续拥有该临时委 托角色。这种委托撤销建立在属性表达式基础上,由属性表达式的变化引起的,这种变化应 当作为委托撤销的触发机制。引起用户(比如 u)的属性表达式(记为 u.DAE)不再满足临时委托角色(比如 tdr)属性 表达式(记为 tdr.DAE)的原因主要有两个2:u.DAE 发生了变化和临时

11、委托角色中的委托权限(比如 p)的属性表达式(记为 p.DAE,包括 TDAE 和 PDAE)发生变化。如果 u.DAE 变化后 的不再满足 tdr.DAE 的要求,用户 u 就丧失了执行 tdr 中委托权限的资格和能力。同样,p.DAE 发生变化后,表明其对用户 u 的属性表达式有新的要求,同样会使得不再满足 p.DAE 的用 户不再拥有该权限。u.DAE 和 p.DAE 的变化频度不一样,一般情况下 u.DAE 的变化频度要高于 p.DAE 的变 化频度。实际应用中,用户的状态、资格和能力会随着时间的推移不断变化,这使得 u.DAE 也发生相应的变化。而权限和角色在角色工程阶段产生后相对比

12、较固定,因而使得 p.DAE 变化的可能性相对较小。显然,为保证系统安全,u.DAE 和 p.DAE 的变化均需要系统管理 员来控制。以下讨论不同属性表达式变化引起的委托撤销:2 实际上,如果 tdr 中包含角色,角色属性表达式的变化也会引起 tdr.DAE 的变化,但角色属性表达式的变 化归根到底是由该角色所包含的权限属性表达式变化引起的,因而此处只讨论权限属性表达式的变化。3.2 由用户属性表达式变化引起撤销当 u.DAE 发生变化后,会产生两种可能:变化后的 u.DAE 还满足原来的 tdr.DAE;变化 后的 u.DAE 不再满足 tdr.DAE。前一种情况不会引起委托撤销操作但后一种

13、情况肯定会引起 委托操作。例如,当项目经理 QE 将权限 inspect-java-code(p.DAE:language=java AND programming experience2 )委托给用 户 u ( u.DAE : language=java AND programming experience=2)。若 QE 的出差时间很长,以致于 u.DAE 发生了变化:language=java AND programming experience=3。显然,此时 u.DAE 还是满足权限的 p.DAE。这种情况下不会引 起委托撤销操作。再考虑一个例子:设 design-java-code

14、 ( p.DAE : language=java AND programming experience2 AND code quality=high)。该权限除了要求用户熟悉 java 语言、具有两年以上的 编程经验外,还要求其设计的代码质量高。若用户在某段期间内其代码质量降低,则不具备 继续设计代码的资格,自然也就不能再拥有该权限了。由于临时委托权限的 p.DAE 最终是通过临时委托角色的 tdr.DAE 表现出来,因而当 u.DAE 发生变化后是否会引起委托撤销操作,主要是看变化后的 u.DAE 是否还满足临时委 托角色的 tdr.DAE,即 u.DAEZtdr.DAE 是否成立8。为了定

15、义由 u.DAE 变化引起的自动委托撤销,此处先定义一个判断用户属性表达式是 否改变的函数:定义 1true( )DAEModified u = falseu.DAE发生变化u.DAE未发生变化定义 2由用户的 u.DAE 变化引起的自动委托撤销需满足下面关系:can-revoke-caused-by-delegateeUTDR,(u,tdr)can-revoke-caused-by-delegatee(tdrroles(u)(u.DAEZtdr.DAE)(DAEModified(u)=true)。其中 U 为用户,TDR 为临时委托角色。函数 roles(u)函数返回用户 u 当前具有的所有

16、角 色8。上面定义表明,当 u.DAE 发生变化后且不再满足其拥有的临时委托角色的 tdr.DAE,该tdr 将自动从 u 中撤销。3.3 由权限属性表达式变化引起的撤销当 p.DAE 发生变化后也会产生两种可能:受托者的 u.DAE 满足变化后的 p.DAE 和受托 者的 u.DAE 不满足变化后的 p.DAE。例如,当权限 inpsect-java-code 的 p.DAE 变为: language=java AND programming experience3 时,若 u.DAE 仍然为 language=java AND programming experience=2 时,此时应当

17、将该委托权限从用户 u 中撤销。而若该权限也同时 委托给另一个用户 u,该用户的 u.DAE 为 language=java AND programming experience=4, 则该 u.DAE 仍然满足变化后的权限的 p.DAE,u继续拥有该权限。由于权限的 p.DAE 实际上是通过临时委托角色的 tdr.DAE 体现出来的,因而主要是判断 受托者的 u.DAE 是否满足变化后临时委托角色的 tdr.DAE。同理,此处定义一个判断权限属性表达式是否改变的函数: 定义 3( )trueDAEModifie d p = falsep.DAE发生变化p.DAE未发生变化定义 4由权限的 p

18、.DAE 变化引起的自动委托撤销需满足下面关系:can-revoke-caused-by-permission UPTDR,(u,p,tdr)can-revoke-caused-by-permission(tdrroles(u)(u.DAEZtdr.DAE)(pper_d(tdr) (DAEModified(p)=true)其中 U 为用户,P 为权限,TDR 为临时委托角色。函数 per_d(tdr)返回临时委托角色 tdr所拥有的权限集合8。上面定义表明,当 tdr.DAE 中的 p.DAE 发生变化后,如果用户 u 的 u.DAE 不再满足临 时委托角色 tdr 的属性表达式 tdr.D

19、AE,该 tdr 将自动从 u 中撤销。根据 ABDMA 定义,一个权限 p 可以被委托给多个用户。这样,权限 p 可能存在于不同 的临时委托角色中。当 p 的属性表达式发生改变后,并不是所有包含该权限的临时委托角色 都被撤销。只有不再满足变化后的临时委托角色的用户才不再具有该角色,这一特性在定义 中体现出来了。对于单调权限,由于其 PDAE 和 TDAE 相同,因而其中任意一个属性表达式发生变化 均可能使得受托者属性表达式不再满足该权限属性表达式,从而引起撤销。对于非单调权限, 同样无论 PDAE 或 TDAE 发生变化,也可能造成受托者属性表达式不满足权限的属性表达 式,也会引起撤销操作。

20、本文并没有详细区分发生变化的权限属性表达式类型。3.4 撤销模式根据委托撤销时是否只撤销用户不再满足的权限,可将自动委托撤销分为以下两种模 式:z部分撤销 部分委托撤销是当用户的属性表达式或权限的属性表达式发生变化后,只有用户属性表达式不再满足其属性表达式的权限将被撤销掉。而用户属性表达式继续满足其属性表达式的 权限仍将保留。这种模式具有很大的灵活性,但实际上存在以下问题:1) 由于系统需要判断用户属性表达式不再满足哪些权限的属性表达式,增加了委托过程中 的操作复杂性和系统负担。特别是在委托和撤销操作相对频繁的场合中。2) 部分权限的撤销可能导致用户无法行使其他权限。根据最小权限原则,临时委托

21、角色中 的权限通常是用户完成某项工作或任务所需要的最少权限,撤销部分权限将可能导致在完成 工作或任务时的权限不够。由于存在上面的问题,本模型并不支持这种类型的委托撤销。z全部撤销 即一旦用户属性表达式不再满足临时委托角色中某个权限的属性表达式后,包含该权限的临时委托角色将整个被撤销掉。这样实现起来容易,也避免了上面提到的问题。前面的委 托撤销定义中实际上就是全部撤销。4 系统实现4.1 委托与撤销部件图 2 委托和撤销部件Fig. 2 Components of delegation and revocation表 1 委托和撤销服务部件的功能Table 1 Functions of comp

22、onents of delegation and revocation serviceComponentFunctionUser,Roleand Permission,PRA, Constraint Condition and URASpecifydelegationpermissionSave user, role, permission data and their DAEs, URAs, PRAs and other constraint conditions.Delegator canspecifydelegation permission.Generate TDRDelegator

23、creates a tdr and the system generates tdrs DAE and CR automatically.Specify delegatee Delegator can specify delegatee in DDD. Generate UeeSystem can generate Uee in UDDautomatically.Select delegatee Delegator can selecte delegatee form Uee.DAE seniority level judgmentConstraint conditionjudgmentThe

24、 system judges whether a users DAEsatisfy the tdrs DAE.The system judges whether the delegation satisfies other constraint conditi onUsers DAE monitorMonitor which users DAE has changedPermissionsDAEmonitorMonitor which permissions DAE has changed此处给出包含委托和撤销所需部件的主要构件,其中的委托部件在文献9中已经给出。图中用虚线围出委托和撤销所涉及

25、到的部件。表 1、2、3 分别给出各个委托和撤销部件的功 能、用户和权限的 DAE。表 2 用户及其 DA ETable 2 Users and their DAEsUserDAECxyfamiliar_test_tool1 AND testing_experience3 AND language=JAVA ANDdatabase=ORACLE AND familiar_with_test_theory=yes AND current _module=AXmwlanguage-VB ANDdatabase=ORACLEANDfamiliar_with_test_theory=yes AND c

26、urrent_module=noneYqffamiliar_test_tool1 AND testing_experience3 AND language=JAVA ANDdatabase=ORACLE AND current_module =A AND familiar_with_test_theory=yesJzlanguage=JAVA ANDdatabase=ORACLE ANDcurrent_module =noneYffamiliar_test_tool1 AND language=JAVA ANDdatabase=ORACLE AND current_module =B表 3 权

27、限及其 DAETable 3 permissions and their DAEsPermissionDAERequirements: professional in JAVA, two years test experience, professional in ORACLE, familiar with test theory, not aP1:design test case and dataP2:config test environmentP3:perform testmember of the team of module B.language=JAVA AND testing_e

28、xperience 2 AND database=ORACLE AND familiar_with_test_theory=yes ANDcurrent_moduleBRequirements: familiar with at least one tool, professional in JAVA and ORACLE, not a member of the team of module B. familiar_test_tool1 AND language=JAVA AND database=ORACLE AND current _moduleBRequirements: famili

29、ar with at least one tool, professional in JAVA and ORACLE, familiar with test theory, two years test experice, not a member of the team of module B.familiar_test_tool1 AND testing_experience2 AND language=JAVA AND database=ORACLE ANDfamiliar_with_test_theory=yes AND current _moduleB受托者 u 的属性表达式变化引起

30、的撤销过程中各个部件之间的关系为:1) Users DAE monitor 部件检测到用户 u 的属性表达式变化;2) Automatically Generate Delegatee 部件将 URA 中用户 u 与临时委托角色 tdr 之间的指派 关系传送到 DAE Seniority Level Judgment 部件;3) Users DAE monitor 部件将变化后的 u.DAE 传送到 DAE Seniority Level Judgment 部件;4) 由 Seniority Level Judgment 部件判断变化后 u.DAE 是否满足 tdr.DAE;5) 如果 u.D

31、AE 不满足 tdr.DAE,则从 u 中撤销 tdr,结果写回 URA 中。 由委托权限 p 的属性表达式变化引起的撤销过程中各个部件之间的关系为:1) Permissions DAE monitor 部件检测到权限 p 的属性表达式变化;2) Permissions DAE monitor 部件将变化后的 p.DAE 传送到 Generate TDR 部件;3) Generate TDR 部件将产生新的 tdr.DAE;4) DAE Seniority Level Judgment 部件将重新比较 tdr.DAE 和所有指派该 tdr 角色的用户的 属性表达式;5) DAE and Con

32、straint Judgment 将撤销不满足的用户和 tdr 之间的指派关系,结果写回 URA中。4.2 撤销实例在某段时间内,由于测试人员较少,使得大量测试工作无法进行下去。采取的措施是临 时将 p1、p2、p3 指派给其他人员,如程序员,由他们和测试员一起来完成对程序的测试工作。按照 ABDMA 规定的委托操作,只有 Cxy、Yqf 获得这三个权限。委托过程在文献8中详细介绍,此处不再赘述。此处将详细说明当用户或权限表达式发生变化后系统如何进行撤 销操作。z用户属性表达式的改变设想当前进行测试的为 B 模块,显然按照测试的一般原则,测试人员是不能参与 B 模块的 开发的。当测试过程中发现

33、模块有错误后,需要修改模块 B。现假设用户 Cxy 现在从事 B 模块的修改工作。此时 Cxy 的 DAE 应改为:familiar_test_tool1 AND testing_experience3 AND language=JAVA AND database=ORACLE AND familiar_with_test_theory=yes AND current_module=B。显然, 此时用户 Cxy 的属性表达式不能满足权限 p1、p2、p3 属性表达式,应当撤销用户所拥有的 上述三个权限。z权限属性表达式的改变随着测试工作的进行,需要用户对 SQL SERVER 数据库非常熟悉。

34、p1、p2、p3 的属性表达 式将 分别 改变 为: language=JAVA AND testing_experience 2 AND database=SQL SERVER AND familiar_with_test_theory=yesANDcurrent_moduleB 、familiar_test_tool1 AND language=JAVA AND database=SQL SERVERANDcurrent_moduleB 、familiar_test_tool1 AND testing_experience2 ANDlanguage=JAVAANDdatabase=SQLS

35、ERVERANDfamiliar_with_test_theory=yesAND current_moduleB。显然,如果用户 Cxy 和 Yqf 对 SQL SERVER 数据库不熟悉的话,其属性表 达式不能满足 p1、p2、p3 的属性表达式,需要将上述三个权限从用户处撤销掉。5 总结与进一步的工作撤销是委托模型必不可少的功能,作为 ABDMA 模型的重要组成部分,本文和文献8 分别从撤销和委托两个方面说明了基于属性的委托模型中撤销与委托操作。基于属性的撤销 主要考虑了当用户和权限属性表达式发生变化后,ABDMA 如何进行撤销操作。文中给出了 与撤销相关的部件,并给出了实际例子。本文只讨

36、论了最基本的撤销操作,进一步的工作将 包括如何进行基于属性的多步和多重撤销。参考文献1 Ravi Sandhu, Edward Coyne, Hal Feinstein and et al. Role-Based Access Control ModelsJ. IEEE Computer 29(2): 38-47.2 Ezedin Barka, Ravi Sandhu, Framework for Role-Based Delegation ModelsA. In: Proc of 16th AnnualComputer Security Application Conference (ACS

37、AC2000). New Orleans, USA: IEEE Computer Society Press,20003 Ezedin Barka, Ravi Sandhu. A role-based delegation model and some extensionsA. In:Proc of 23rdNational Information Systems Security Conference (NISSC 2000). Baltimore, USA, 2000.4 Longhua Zhang, Gail-Joon Ahn, and Bei-Tseng Chu. A rule-bas

38、ed framework for role-based delegationA.In:Proc of SACMAT01. Chantilly, VA, USA: ACM press, 2001.5 Roberto Tamassia, Danfeng Yao, and William H. Winsborough. Role-based cascaded delegationA. In:Proc of the SACMAT04. Yorktown Heights, New York, USA: ACM press, 2004.6 Xinwen Zhang, Sejong Oh, and Ravi

39、 Sandhu. PBDM: A Flexible Delegation Model in RBAC A. In: Procof the SACMAT03. Como, Italy: ACM press, 2003.7 赵青松 , 孙玉 芳 , 孙波 .RPRDM: 基于 重复 和部 分角 色的 转 授 权 模 型 . 计算 机研 究与发展 J,2003,40(2):221-2278 叶春晓 , 吴中福 , 符云 清 , 钟将, 冯永 . 基于属性的扩展委托模型 . 计算机研究与发展 J , 200643(6):1050-10579 叶春晓.基于角色访问控制(RBAC)中属性约束委托模型研究:

40、 D. 重庆:重庆大学,2005.Study on Attribute-Based Revocation in DelegationYe Chunxiao, Wu ZhongfuCollege of computer science, Chongqing University, Chongqing (400044)AbstractIn Attribute-Based Delegation Model (ABDM), delegatee must satisfy both delegation prerequisitecondition (CR) and delegation attribute

41、 expression (DAE) when assigned to a delegation role. In ABDM, revocation focus on how to revoke those delegated roles or permissions from delegatee. Considering the characteristics of delegation operation in ABDM, this paper proposes two new revocations: revocation caused by the change of users del

42、egation attribute expression and revocation caused the change of delegation roles or permissions delegation attribute expression, which is different from usual revocation. In ABDM, these two revocations can automatically revoke delegation roles or permissions from delegatee when their DAEs are no longer satisfy delegation roles or permissions DAEs either, thus guarantee the security of delegation.Keywords: Information security; Access Control; Delegation; Revocation; Attribute作者简介:叶春晓,男,1973 年生,重庆人,博士,副教授,研究领域为访问控制,数据 库和软件工程,承担“863”、国家发改委项目多项,目前从事涉密信息系统测评工作。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号