欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    信息安全技术鉴别与授权基于角色的访问控制模型与管理规范(GB-T 25062-2010).pdf

    • 资源ID:96297146       资源大小:537.21KB        全文页数:37页
    • 资源格式: PDF        下载积分:7.5金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要7.5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    信息安全技术鉴别与授权基于角色的访问控制模型与管理规范(GB-T 25062-2010).pdf

    ICS 35.040L80中中华华人人民民共共和和国国国国家家标标准准GB/T 信息安全技术鉴别与授权基于角色的访问控制模型与管理规范Information security technology Authentication and authorization Role-based access control model and management specification(报批稿)-发布-实施国国家家质质量量监监督督检检验验检检疫疫总总局局发布发布GB/T I目次前言.II引言.III1 范围.12 规范性引用文件.13 术语和定义.14 缩略语.25 一致性.26 RBAC 参考模型.26.1 概述.26.2 核心 RBAC.26.3 层次 RBAC.46.4 带约束的 RBAC.57 RBAC 系统和管理功能规范.77.1 概述.77.2 核心 RBAC.77.3 层次 RBAC.137.4 静态职责分离关系.167.5 动态职责分离.21附录 A(资料性附录)功能规范概述.26附录 B(资料性附录)组件原理.31附录 C(资料性附录)Z 语言示例.33GB/T II前言本标准的附录 A、附录 B 和附录 C 为资料性附录。本标准由全国信息安全标准化技术委员会(TC260)提出并归口。本标准起草单位:中国科学院软件研究所,信息安全共性技术国家工程研究中心。本标准主要起草人:冯登国、徐震、翟征德、张敏、张凡、黄亮、庄湧。GB/T III引言主流 IT 产品供应商开始在他们的数据库管理系统安全管理系统、网络操作系统等产品中大量实现基于角色的访问控制功能,然而却没有对其特征集达成一致。缺乏广为接受的模型,导致了对基于角色的访问控制效用和含义理解的不规范性和不确定性。本标准参照 ANSI INCITS 359-2004,使用一个参考模型来定义基于角色的访问控制的特征,并描述这些特征的功能规范,通过以上方法来解决这些不规范与不确定的问题。GB/T 1信息安全技术鉴别与授权基于角色的访问控制模型与管理规范1范围本标准规定了基于角色的访问控制(RBAC)模型、RBAC 系统和管理功能规范。本标准适用于信息系统中 RBAC 子系统的设计和实现,相关系统的测试和产品采购亦可参照使用。2规范性引用文件下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。ISO/IEC 13568-2002信息技术-Z 形式规范注释语法、形式系统和语义学3术语和定义下列术语和定义适用于本标准。3.1组件 component这里是指四个 RBAC 特征集之一:核心 RBAC层次 RBAC静态职责分离关系动态职责分离关系。3.2对象 object需要进行访问控制的系统资源,例如文件打印机终端数据库记录等。3.3操作 operation一个程序的可执行映像,当被调用时为用户执行某些功能。3.4权限 permission对受 RBAC 保护的一个或多个对象执行某个操作的许可。3.5角色 role组织语境中的一个工作职能,被授予角色的用户将具有相应的权威和责任。3.6用户 user人、机器网络自主智能代理等,进行资源或服务访问的实施主体。3.7会话 session从用户到其激活的角色集合的一个映射。3.8职责分离 separation of duty限制用户获得存在利益冲突的权限集的约束,例如用户不能同时获得会计和审计的权限。GB/T 24缩略语下列缩略语适用于本标准:RBAC基于角色的访问控制(Role Based Access Control)SSD静态职责分离(Static Separation of Duty)DSD动态职责分离(Dynamic Separation of Duty)USERS用户集(User Set)ROLES角色集(Role Set)OBJS对象集(Object Set)OPS操作集(Operation Set)SESSIONS会话集(Session Set)PRMS权限集(Privilege Management Set)ACL访问控制列表(Access Control List)5一致性对于特定的应用,并非所有的 RBAC 特征都是必要的。因此,本标准提供了一种通过对功能组件和同一功能组件内的特征进行选择,以组装构成所需要的 RBAC 特征的方法。本标准首先定义了一个RBAC 的特征核心集合,任何其他的特征包都必须包含这一核心特征集。在构建 RBAC 特征包时,角色层次,静态约束(静态职责分离),动态约束(动态职责分离)是可选组件。6RBAC 参考模型6.1概述RBAC 参考模型通过四个 RBAC 模型组件来进行定义核心 RBAC角色层次 RBAC静态职责分离关系动态职责分离关系。核心 RBAC 定义了能够完整地实现一个 RBAC 系统所必需的元素元素集和关系的最小集合,其中包括最基本的用户/角色分配和权限/角色分配关系。此外,它还引入了角色激活的概念作为计算机系统中用户会话的一个组成部分。核心 RBAC 对于任何 RBAC 系统而言都是必需的,其它 RBAC 组件彼此相互独立并且可以被独立地实现。角色层次 RBAC 组件支持角色层次。角色层次从数学上讲是一个定义角色之间级别关系的偏序,高级别的角色获得低级别角色的权限,低级别角色获得高级别角色的用户成员。此外,层次 RBAC 还引入了角色的授权用户和授权权限的概念。静态职责分离针对用户/角色分配定义了角色间的互斥关系。由于可能与角色继承产生不一致,静态职责分离关系组件在没有角色层次和存在角色层次的情况下分别进行了定义。动态职责分离关系针对用户会话中可以激活的角色定义了互斥关系。每个模型组件都由下列子组件来定义:a)一些基本元素集;b)一些基于上述基本元素集的 RBAC 关系;c)一些映射函数,在给定来自某个元素集的实例元素的情况下能够得到另一个元素集的某些实例元素。RBAC 参考模型给出了一种 RBAC 特征的分类,可以基于这些分类的特征构建一系列 RBAC 特征包。本标准的主要目的不是试图定义 RBAC 特征的全集,而是致力于提供一组标准的术语来定义已有的模型和商业产品中最主要的 RBAC 特征。6.2核心 RBACGB/T 3核心 RBAC 的元素集和关系在图 1 中进行了定义。核心 RBAC 包含了 5 个基本的数据元素:用户集(USERS)角色集(ROLES)对象集(OBJS)操作集(OPS)权限集(PRMS)。权限被分配给角色,角色被分配给用户,这是 RBAC 的基本思想。角色命名了用户和权限之间的多对多的关系。此外,核心 RBAC 中还包含了用户会话集,会话是从用户到该用户的角色集的某个激活角色子集的映射。角色是组织上下文中的一个工作职能,被授予了角色的用户将具有相应的权威和责任。权限是对某个或某些受 RBAC 保护的对象执行操作的许可。操作是一个程序的可执行映像,被调用时能为用户执行某些功能。操作和对象的类型依赖于具体系统,例如在一个文件系统中,操作可以包含读写执行;在数据库管理系统中,操作包含 select、insertdeleteupdate 等。访问控制机制的核心功能是保护系统资源。与以前的访问控制模型一致,RBAC 模型中的对象是包含或接收信息的实体。对一个实现 RBAC 的系统,对象可以代表信息容器(如操作系统中的文件和目录或数据库中的表视图字段),或者诸如打印机磁盘空间CPU 周期等可耗尽的系统资源。RBAC覆盖的对象包括所有在分配给角色的权限中出现的对象。RBAC 中一个很重要的概念是角色的相关分配关系。图 1 中给出了用户分配关系(UA)和权限分配关系(PA)。图中的箭头表示关系是多对多的(例如,一个用户可以被分配给多个角色并且一个角色可以被分配给多个用户)。这种安排带来了给角色分配权限和给角色分配用户时的灵活性和细粒度。如果没有这些,就有可能造成给用户分配过多的对资源的访问权限;能够更灵活地控制对资源的访问权限也有助于最小特权原则的实施。用户用户 角色角色 会话会话 用户用户/角色分配角色分配 角色角色/权限分配权限分配 会话角色会话角色 权限权限 操作操作 客体客体(UA)(RA)(ROLES)(OPS)(OBJS)(SESS-IONS)(Session_roles)(PRMS)会话用户会话用户(Session_users)(USERS)图 1 核心 RBAC用户在建立一个会话的时候可以激活他/她所被分配的角色的某个子集。一个会话只能与一个用户关联,一个用户可能同时拥有多个会话。函数 session_roles 返回一个会话激活的角色,函数 session_user给出会话的用户。在用户的会话中保持激活状态的角色的权限构成了用户的可用权限。以下为核心RBAC 规范:a),USERS ROLES OPS OBJS分别代表:用户集角色集操作集对象集;b)UAUSERSROLES,一个多对多的映射,代表用户/角色分配关系;c)_(:)2USERSassignedusers r ROLES,一 个 映 射,给 出 分 配 了 角 色 r 的 用 户,_()|(,)assignedusers ruUSERSu rUA;d)()2OPSOBSPRMS,权限集;GB/T 4e)PAPERMSROLES,一个多对多的映射,代表权限/角色分配关系;f)_(:)2 PRMSassignedpermissions r ROLES,一个映射,给出分配给角色 r 的权限,_()|(,)assignedpermissions rpPRMSp rPA;g)(:)ops p PRMSopOPS,权限到操作的映射,给出与权限 p 关联的操作;h)(:)obs p PRMSobOBS,权限到对象的映射,给出与权限 p 关联的对象;i)SESSIONS,会话集;j)_(:)sessionuser s SESSIONSUSERS,一个从会话 s 到对应用户的映射;k)_(:)2ROLESsessionroles s SESSIONS,一个从会话 s 到其激活的角色集的映射,_()|(_(),)sessionroles srROLESsessionusers srUA;l)_(:)2PRMSavailsessionperms s SESSIONS,一个从会话 s 到它拥有的权限集的映射,_()_()_()r sessionroles savailsessionperms sassignedpermission r。6.3层次 RBAC6.3.1概述如图 2 所示,层次 RBAC 引入了角色层次。角色层次通常被作为 RBAC 模型的重要部分,并且经常在 RBAC 商业产品中得以实现。角色层次可以有效地反映组织内权威和责任的结构。角色层次定义了角色间的继承关系。继承通常是从权限的角度来说的,例如,如果角色 r1“继承”角色 r2,角色 r2的所有权限都同时为角色 r1所拥有。在某些分布式 RBAC 实现中,角色层次是集中管理的,而权限/角色分配却是非集中管理的。对这些系统,角色层次的管理主要是从用户成员包含关系的角度进行的:如果角色 r1的所有用户都隐含地成为角色 r2的用户,则称角色 r1“包含”角色 r2。这种用户成员包含关系隐含了这样一个事实:角色 r1的用户将拥有角色 r2的所有权限。然而角色 r1和角色r2之间的权限继承关系并不对它们的用户分配做任何假设。本标准认可两种类型的角色层次通用角色层次和受限角色层次。通用角色层次支持任意偏序关系,从而支持角色之间的权限和用户成员的多重继承。受限角色层次通过施加限制来得到一个简单的树结构(一个角色可以拥有一个或多个直接祖先角色,即继承多个角色;但只能有一个直接后代角色,即被一个角色继承)。6.3.2通用角色层次a)RHROLES ROLES是一个称为继承的角色之间的偏序关系,记作。如果 r1r2,则角色 r1 拥有角色 r2 的所有权限并且角色 r1 的用户都将是角色 r2 的用户;b)_(:)2USERSauthorizedusers r ROLES,一个在角色层次存在的情况下从角色到该角色的授权用户的映射,_()|(,)authorizedusers ruUSERSrru rUA;c)_(:)2PRMSauthorizedpermissions r ROLES,一个在角色层次存在的情况下从角色到其GB/T 5授权权限的映射,_()|(,)authorizedpermissions rpPRMSr rp rPA。用户用户 角色角色 会话会话 用户用户/角色分配角色分配 角色角色/权限分配权限分配 会话角色会话角色 权限权限 操作操作 客体客体(UA)(RA)(ROLES)(OPS)(OBJS)(SESSIONS)(Session_roles)(PRMS)会话用户会话用户(Session_ users)角色层次角色层次(RH)(USERS)图 2 层次 RBAC通用角色层次支持多重继承的概念,从而使得一个角色可以从两个或者更多其它角色继承权限或用户成员。多重继承具有两个重要的性质。第一,多重继承使得可以通过从几个低级别的角色来构建较高级别角色的方式来定义角色间的关系以反映组织和事务的结构。第二,多重继承使得可以一致地对待用户/角色分配关系和角色/角色继承关系。用户也可以被包含在角色层次中,并且仍然用来代表用户/角色分配以及用户对角色权限的继承。在受限角色层次中,一个角色只能有一个直接后代。尽管受限角色层次不支持权限的多重继承,但与层次 RBAC 比较却具有管理上的优势。如果 r1r2并且这两个角色之间不存在其它的角色(即不存在不同于角色 r1和角色 r2的角色 r3,满足 r1r3r2),则 r1是 r2的直接祖先,记作 r1r2。6.3.3受限角色层次受到下述限制的通用角色层次:r,r1,r2ROLES,rr1rr2r1=r2。角色层次可以用偏序图来表示。图中的节点代表角色,如果 r1是 r2的直接后代,则存在从 r1指向r2的有向箭头。在角色层次的偏序图上,rxry当且仅当存在从 rx到 ry的有向路径。由于角色之间的偏序关系是传递和反对称的,所以不存在有向回路。通常,角色层次图上的箭头与角色间的继承关系相一致都是自上而下的,因此角色用户成员的继承是自上而下的,而角色权限的继承是自下而上的。6.4带约束的 RBAC6.4.1概述带约束的 RBAC 模型增加了职责分离关系。职责分离关系可以被用来实施利益冲突(Conflict OfInterest)策略(防止某个人或某些人同时对于不同的某些个人、某些集团或组织以及某种事物在忠诚度和利害关系上发生矛盾的策略)以防止组织中用户的越权行为。作为一项安全原则,职责分离在工商业界和政府部门得到了广泛的应用,其目的是保证安全威胁只有通过多个用户之间的串通勾结才能实现。具有不同技能和利益的工作人员分别被分配一项事务中不同的任务,以保证欺诈行为和重大错误只有通过多个用户的勾结才可能发生。本标准支持静态和动态的职GB/T 6责分离。6.4.2静态职责分离关系在 RBAC 系统中,一个用户获得了相互冲突的角色的权限就会引起利益冲突。阻止这种利益冲突的一个方法是静态职责分离,即对用户/角色分配施加约束。本标准中定义的静态约束主要是作用于角色,特别是用户/角色分配关系,也就是说,如果用户被分配了一个角色,他/她将不能被分配另一些特定的角色。从策略的角度,静态约束关系提供了一种有效的在 RBAC 元素集上实施职责分离和其它分离规则的有效手段。静态约束通常要限制那些可能会破坏高层职责分离策略的管理操作。以往的 RBAC 模型通常通过限制一对角色上的用户分配来定义静态职责分离(一个用户不能同时分配处于 SSD 关系下的两个角色)。尽管现实世界中确实存在这样的例子,这样定义的 SSD 在两个方面限制性太强:SSD 关系中角色集的成员数(只能为 2)和角色集中角色的可能组合情况(每个用户最多只能分配角色集中的一个角色)。在本标准中,静态职责分离通过两个参数定义:一个包含两个或更多角色的角色集和一个大于 1 的阈值(用户拥有的角色中包含在该角色集中角色的数量小于这个阈值)。例如,一个组织可能要求任何一个用户不能被分配代表采购职能的 4 个角色中的 3 个。正如图 3 所示,静态职责分离可能存在于层次 RBAC 中。在存在角色层次的情况下,必须注意不要让用户成员的继承违反静态职责分离策略。为此,层次 RBAC 也被定义为继承静态职责分离约束。在角色层次 RBAC 中,为了解决可能出现的不一致性,静态职责分离被定义为针对角色的授权用户的约束。用户用户 角色角色 会话会话 用户用户/角色分配角色分配 角色角色/权限分配权限分配 会话角色会话角色 权限权限 操作操作 客体客体(UA)(RA)(ROLES)(OPS)(OBJS)(SESS-IONS)(Session_roles)(PRMS)会话用户会话用户(Session_ users)角色层次角色层次(RH)(USERS)SSD 图 3 层次 RBAC 下的静态职责分离a)静态职责分离(2)ROLESSSDN由一组形如(rs,n)的对构成,其中 rs 是角色的集合,t 是 rs 的子集,2n,满 足 任 何 用 户 都 不 能 同 时 被 分 配rs中 的n个 或 者 更 多 角 色,(,),:|_()rtrs nSSDtrs tnassignedusers r 。b)层次 RBAC 下的静态职责分离在存在角色层次的情况下,静态职责分离基于角色的授权用户而不是直接分配了该角色的用户进行重新定义,(,),:|_()rtrs nSSDtrs tnauthorizedusers r 。6.4.3动态职责分离关系GB/T 7静态职责分离关系和动态职责分离(DSD)关系的目的都是限制用户的可用权限,不过它们施加约束的上下文不同。SSD 定义并且施加约束到用户总的权限空间上,而 DSD 通过约束一个用户会话可以激活的角色来限制用户的可用权限。DSD 使用户可用以在不同的时间拥有不同的权限,从而进一步扩展了对最小特权原则的支持。DSD 能够保证权限的有效期不超过完成某项职责所需要的时间段,这通常被称为信任的及时撤销。在没有 DSD 的情况下,动态的权限撤销是非常困难的,因此通常被忽略。SSD 解决在给用户分配角色的时候可能存在的利益冲突问题。DSD 允许用户同时拥有两个或者更多这样的角色:这些角色在各自独立地被激活时不会产生安全威胁,而同时被激活时就可能会产生违反安全策略的行为。动态职责分离被定义为针对用户会话激活的角色的约束(见图 4)。用户用户 角色角色 会话会话 用户用户/角色分配角色分配 角色角色/权限分配权限分配 会话角色会话角色 权限权限 操作操作 客体客体(UA)(RA)(ROLES)(OPS)(OBJS)(SESS-IONS)(Session_roles)(PRMS)会话用户会话用户(Session_ users)(USERS)DSD 图 4 动态职责分离关系2ROLESDSDN由一组形如(rs,n)的对构成,其中 rs 是角色的集合,2n,满足没有任何主体能激活 rs 中的 n 个或更多角色。2,(,)2,2,_2,(,),_,_()_ROLESROLESROLESrsnNrs nDSDnrsnsSESSIONSrsrolesubsetnNrs nDSD rolesubsetrs rolesubsetsessionroles srolesubsetn 7RBAC 系统和管理功能规范7.1概述RBAC 功能规范描述了创建和维护 RBAC 元素集和 RBAC 关系的管理操作;进行管理查询的管理查看函数;创建和维护用户会话的 RBAC 属性和进行访问控制决策的系统函数。本标准对这些函数进行了足够细致的定义,以便支持一致性测试和保证的需要,同时给开发者提供了足够的设计灵活性以满足用户的需求。RBAC 功能规范使用的 Z 标记方法由 ISO/IEC 13568-2002 定义。唯一的例外是模式表示如下:模式名(声明)谓词;谓词。这里使用的大多数抽象数据类型和函数都来自 RBAC 参考模型,但在必要的时候,将会引入新的抽象数据类型和函数。为了描述方便,这里首先需要引入符号 NAME。NAME 是个元素为实体标识的抽象数据类型,这些实体可能包含在 RBAC 系统之中或者之外(角色用户会话等)。7.2核心 RBAC7.2.1核心 RBAC 管理函数GB/T 8本节定义了核心RBAC的管理函数。a)AddUser该命令创建一个新的用户。当要待创建用户尚不存在于 USERS 集合中时,该命令可用。命令执行后,USERS 被更新,新创建的用户不拥有任何的会话。下面的模式形式化地描述了 AddUser:(:)AddUser user NAMEuserUSERSUSERSUSERSuserb)DeleteUser该命令从 RBAC 数据库中删除一个已经存在的用户。该命令可用当且仅当被删除的用户是 USERS数据集的一个成员。USERS 数据集UA 数据集和 assigned_users 函数被更新。如果一个正处在会话中的用户被删除,如何处理该用户的会话依赖于具体实现。实际 RBAC 系统可以等待该会话结束或者强行终止它。下面的模式形式化地描述了 DeleteUser:(:)_()():_:(_()DeleteUser user NAMEuserUSERSsSESSIONS usersessionuser sDeleteSession sUAUAr ROLES userrassignedusersr ROLESrassignedusers ruserUSERSUSERSuser c)AddRole该命令创建一个新的角色。该命令可用当且仅当要创建的角色尚且不存在于 ROLES 数据集。ROLES 数据集assigned_users 和 assigned_permisssions 函数被更新。初始时,新创建的角色没有分配任何用户和权限。下面的模式形式化地描述了 AddRole:(:)_AddRole role NAMEroleROLESROLESROLESroleassignedusersassignedusersroleassignedpermissionsassignedpermissionsroled)DeleteRole该命令从 RBAC 数据库中删除一个角色。该命令可用当且仅当被删除的角色是 ROLES 数据集的成员。如果被删除的角色在某些会话中尚且是激活的,如何处理这些话是一个具体实现需要决定的问题。实际 RBAC 系统可以等待这样的会话结束或强行终止它们或从会话中删除这个角色然后允许会话继续执行。下面的模式形式化地描述了 DeleteRole:GB/T 9(:)_()():_():,:(,)DeleteRole role NAMEroleROLESsSESSIONSrolesessionroles sDeleteSession sUAUAu USERS uroleassignedusersassignedusersroleassignedusers rolePAPAop OPS obj OBJSop objro _()leassignedpermissionsassignedpermissionsroleassignedpermissions roleROLESROLESrolee)AssignUser该命令给用户分配角色。该命令可用当且仅当该用户是 USERS 数据集的成员,该角色是 ROLES数据集的成员,并且该角色尚未分配给该用户。数据集 UA 和函数 assigned_users 被更新。下面模式形式化地描述了该命令:(,:);()_()(_()AssignUser user role NAMEuserUSERS roleROLES userroleUAUAUAuserroleassignedusersassignedusersroleassignedusers roleroleassignedusers roleuserf)DeassignUser该命令删除一个角色 role 到用户 user 的分配。该命令可用当且仅当 user 是 USERS 数据集的成员,role 是 ROLES 数据集的成员,并且角色 role 已经分配给了用户 user。如果 user 正拥有某些会话并且 role 在这些会话中是激活的,如何处理这样的会话是一个具体实现需要决定的问题。实际 RBAC 系统可以等待这样一个会话结束,或者强行终止它,或者取消激活该角色。下面模式形式化地描述了该命令:(,:);():_()_()()_DeassignUser user role NAMEuserUSERS roleROLES userroleUAs SESSIONS usersessionuser srolesessionroles sDeleteSession sUAUAuserroleassignedusersassignedusersroleassigne_()(_()dusers rolesroleassignedusers roleuserg)GrantPermission该命令给一个角色分配对一个对象执行某个操作的权限。该命令可用当且仅当给定的(操作,对象)代表了一项权限并且该角色是 ROLES 数据集的成员。在实际实现中,该命令可能实现为授予对应于该角色的组以相应的权限,即修改对象的 ACL。下面的模式形式化地定义了该命令:(,:)(,);(,)_()(GrantPermission object operation role NAMEoperation objectPERMS roleROLESPAPAoperation objectroleassignedpermissionsassignedpermissionsroleassignedpermissions rolesroleassi_()(,)gnedpermissions roleoperation objecth)RevokePermissionGB/T 10该命令从分配给角色的权限集中撤销对某个对象执行某个操作的权限。该命令可用当且仅当(操作,对象)代表一项权限,并且该权限已经分配给了该角色。在实际的实现中,该命令可能实现为撤销对应于该角色的组的权限,即修改对象的 ACL。下面的模式形式化地描述了该命令:(,:)(,);(,)(,)_RevokePermission operation object role NAMEoperation objectPERMS roleROLESoperation objectrolePAPAPAoperation objectroleassignedpermissionsassignedpermissionsroleassignedp()(_()(,)ermissions roleroleassignedpermission roleoperation object7.2.2核心 RBAC 支持系统函数本节定义了核心RBAC的支持系统函数。a)CreateSession该函数创建一个新的会话,以指定的用户作为会话拥有者,以指定的角色集作为激活角色集。该函数可用当且仅当用户 user 是 USERS 数据集的成员并且激活角色集是用户分配的角色集的子集。在实际RBAC 实现中,会话的角色集可能对应于一些组。下面的模式形式化的描述了该函数。Session 参数是一个由底层系统产生的用于标识会话的标识符。(:;:2;:);:|();_NAMESCreateSession user NAME arssession NAMEuserUSERS arsr ROLESuserrUAsessionSESSIONSSESSIONSSESSIONSsessionsessionusersessionusersessionusersessionrolessessionrolessessionarsb)DeleteSession该函数删除一个会话。该函数可用当且仅当会话标识符是 SESSIONS 数据集的成员。下面的模式形式化地描述了该函数。(:)_()_()DeleteSession session NAMEsessionSESSIONSsessionusersessionusersessionsessionuser sessionsessionrolessessionrolesessionsessionroles sessionSESSIONSSESSIONSsessionc)AddActiveRole该函数为给定的用户会话增加一个激活角色。该函数可用当且仅当:1)该用户是 USERS 数据集的成员;2)该角色是 ROLES 数据集的成员;3)会话标识符是 SESSIONS 数据集的成员;4)该角色已经分配给了该用户;5)该用户拥有该会话。在实现时,该角色可能对应于一个相应的组。下面的模式形式化地描述了该函数:GB/T 11(,:);_()();_()_(AddActiveRole user session role NAMEuserUSERS sessionSESSIONS roleROLES sessionusersessions useruserroleUA rolesessionroles sessionsessionrolessessionrolessessionsessionroles se)(_()ssionsessionsessionroles sessionroled)DropActiveRole该函数从给定用户会话中删除一个激活角色。该函数可用当且仅当该用户是 USERS 数据集的成员,会话标识是 SESSIONS 数据集的成员,该用户是该会话的拥有者并且该角色是该会话的一个激活角色。下面的模式形式化地描述了该函数:(,:);_();_()_()DropActiveRole user session role NAMEuserUSERS roleROLES sessionSESSIONSsessionusersessions user rolesessionroles sessionsessionrolessessionrolesessionsessionrole sessionsession(_()sessionroles sessionrolee)CheckAccess该函数决定一个给定的会话的主体是否允许对给定的对象执行某个给定的操作并返回一个布尔值。该函数可用当且仅当会话标识符是 SESSIONS 数据集的成员,该对象是 OBJS 数据集的成员,该操作是OPS 数据集的成员。会话的主体可以对该对象执行该操作当且仅当会话的某个激活角色拥有对应的权限。实际实现可能使用在对象的 ACL 中的对应于激活角色的组和其相应的权限。下面的模式形式化地描述了该函数:(,:;:);(:_()(,)CheckAccess session operation object NAME result BOOLEANsessionSESSIONS operationOPS objectOBJSresultr ROLESrsessionroles sessionoperatio n objectrPA 7.2.3核心 RBAC 查看函数本节定义了核心RBAC的查看函数。a)AssignedUsers该函数返回被分配给了某个指定角色的用户。该函数可用当且仅当该角色是ROLES数据集的成员。下面的模式形式化地描述了该函数:(:;:2):|()USERSAssignedUsers role NAME resultroleROLESresultu USERSuroleUAb)AssignedRoles该函数返回分配给了一个给定用户的角色。该函数可用当且仅当该用户是 USER 数据集的成员。下面的模式形式化地描述了该函数:(:;:2):|()ROLESAssignedRoles user NAME resultuserUSERSresultr ROLESuserrUA7.2.4核心 RBAC 高级查看函数本节定义了核心RBAC的高级查看函数。GB/T 12a)RolePermissions该函数返回分配给一个给定角色的权限。该函数可用当且仅当该角色是 ROLES 数据集的成员。下面的模式形式化地描述了该函数:(:;:2):;:|(,)PERMSRolePermission role NAME resultroleROLESresultop OPS obj OBJSop objrolePAb)UserPermissions该函数返回一个给定用户的权限。该函数可用当且仅当该用户是 USERS 数据集的成员。下面的模式形式化地描述了该函数:(:;:2):;:;:|()(,)(,)PERMSUserPermission user NAME resultuserUSERSresultr ROLES op OPS obj OBJSuserrUAop objrPAo p objc)SessionRoles该函数返回给定会话的激活角色。该函数可用当且仅当该会话标识符是 SESSIONS 数据集的成员。下面的模式形式化地描述了该函数:(:;:2)_()ROLESSessionRoles session NAME resultsessionSESSIONSresultsessionroles sessiond)SessionPermissions该函数返回给定会话的权限,即该会话的激活角色拥有的权限。该函数可用当且仅当会话标识符是SESSIONS 数据集的成员。下面的模式形式化地描述了该函数:(:;:2):;|_()(,)(,)PERMSSessionPermissions session NAME resultsessionSESSIONSresultr ROLES opOPS objOBJS rsessionroles ses sionop objrPAop obje)RoleOperationsOnObject该函数返回一个给定角色被允许的对给定对象执行的操作。该函数可用当且仅当该角色是 ROLES数据集的成员,该对象是 OBJS 数据集的成员。下面的模式形式化地描述了该函数:(:;:;:2):|(,)OPSRoleOperationsOnObject role NAME obj NAME resultroleROLESobjOBJSresultop OPSop objrolePAf)UserOperationsOnObject该函数返回给定用户被允许的针对给定对象执行的操作。该函数可用当且仅当该用户是 USERS 数据集的成员,该对象是该 OBJS 数据集的成员。下面模式形式化地描述了该函数:GB/T 13(:;:;:2):;:|()(,)OPSUserOperationsOnObject user NAME obj NAME resultuserUSERSobjOBJSresultr ROLES op OPSuserrUAop objrPA op7.3层次 RBAC7.3.1通用角色层次7.3.1.1通用角色层次管理函数7.2.1中的函数在本节当中都是有效的,这里还定义了一些新的函数。a)AddInheritance该命令在两个已经存在的角色 r_asc 和 r_desc 之间建立直接继承关系 r_ascr_desc。该命令可用当且仅当 r_asc 和 r_desc 都是 ROLES 数据集的成员,r_asc 不是 r_desc 的直接祖先,并且 r_desc 不继承r_asc(避免产生回路)。以下模式使用了下述记号:该命令的形式化描述如

    注意事项

    本文(信息安全技术鉴别与授权基于角色的访问控制模型与管理规范(GB-T 25062-2010).pdf)为本站会员(wo****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开