首页 > 国家标准(GB) > GB/T 25062-2010 信息安全技术 鉴别与授权 基于角色的访问控制模型与管理规范
GB/T 25062-2010

基本信息

标准号: GB/T 25062-2010

中文名称:信息安全技术 鉴别与授权 基于角色的访问控制模型与管理规范

标准类别:国家标准(GB)

标准状态:现行

发布日期:2010-09-02

出版语种:简体中文

下载格式:.rar .pdf

下载大小:KB

相关标签: 信息安全 技术 鉴别 授权 基于 角色 访问控制 模型 管理 规范

标准分类号

关联标准

出版信息

出版社:中国标准出版社

标准价格:0.0 元

出版日期:2011-02-01

相关单位信息

发布部门:中华人民共和国国家质量监督检验检疫总局 中国国家标准化管理委员会

标准简介

GB/T 25062-2010 信息安全技术 鉴别与授权 基于角色的访问控制模型与管理规范 GB/T25062-2010 标准下载解压密码:www.bzxz.net

标准图片预览






标准内容

ICS35.040
中华人民共和国国家标准
GB/T××××××××
信息安全技术鉴别与授权
基于角色的访问控制模型与管理规范Information security technology -Authentication and authorization-Role-basedaccesscontrol model andmanagementspecification(报批稿)
X×××-××-××发布
X×××-××-××实施
国家质量监督检验检疫总局发布前言
1范围
2规范性引用文件
3术语和定义
4缩略语.
5一致性,
6RBAC参考模型
6.1概述
6.2核心RBAC.
6.3层次RBAC.
6.4带约束的RBAC.
7RBAC系统和管理功能规范
7.1概述,
7.2核心RBAC.
7.3层次RBAC.
7.4静态职责分离关系
7.5动态职责分离
附录A(资料性附录)功能规范概述.附录B(资料性附录)组件原理
附录C(资料性附录)Z语言示例目
GB/T×XXX—XXXX
本标准的附录A、附录B和附录C为资料性附录本标准由全国信息安全标准化技术委员会(TC260)提出并归口。GB/Txxxx—xxxx
本标准起草单位:中国科学院软件研究所,信息安全共性技术国家工程研究中心。本标准主要起草人:冯登国、徐震、翟征德、张敏、张凡、黄亮、庄、I
GB/T xxxxxxxx
主流IT产品供应商开始在他们的数据库管理系统、安全管理系统、网络操作系统等产品中大量实现基于角色的访问控制功能,然而却没有对其特征集达成一致。缺乏广为接受的模型,导致了对基于角色的访问控制效用和含义理解的不规范性和不确定性。本标准参照ANSIINCITS359-2004,使用一个参考模型来定义基于角色的访问控制的特征,并描述这些特征的功能规范,通过以上方法来解决这些不规范与不确定的问题。
1范围
信息安全技术鉴别与授权
基于角色的访问控制模型与管理规范GB/TxxXX—XXXx
本标准规定了基于角色的访问控制(RBAC)模型、RBAC系统和管理功能规范本标准适用于信息系统中RBAC子系统的设计和实现,相关系统的测试和产品采购亦可参照使用。2规范性引用文件
下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。ISO/IEC13568-2002
信息技术--乙形式规范注释语法、形式系统和语义学3术语和定义
下列术语和定义适用于本标准。3.1
组件component
这里是指四个RBAC特征集之一:核心RBAC、层次RBAC、静态职责分离关系、动态职责分离关系。
对象object
需要进行访问控制的系统资源,例如文件、打印机、终端、数据库记录等。3.3
操作operation
一个程序的可执行映像,当被调用时为用户执行某些功能。3.4
权限permission
对受RBAC保护的一个或多个对象执行某个操作的许可。3.5
角色role
组织语境中的一个工作职能,被授予角色的用户将具有相应的权威和责任。3.6
用户user
人、机器、网络、自主智能代理等,进行资源或服务访问的实施主体。3.7
会话session
从用户到其激活的角色集合的一个映射。3.8
职责分离separationofduty
限制用户获得存在利益冲突的权限集的约束,例如用户不能同时获得会计和审计的权限。1
4缩略语
下列缩略语适用于本标准:
SESSIONS
5一致性
基于角色的访问控制(RoleBased Access Control)静态职责分离(StaticSeparationofDuty)动态职责分离(DynamicSeparationofDuty)用户集(UserSet)
角色集(RoleSet)
对象集(ObjectSet)
操作集(OperationSet)
会话集(SessionSet)
权限集(PrivilegeManagementSet)访间控制列表(AccessControlList)GB/Txxxx—Xxxx
对于特定的应用,并非所有的RBAC特征都是必要的。因此,本标准提供了一种通过对功能组件和同一功能组件内的特征进行选择,以组装构成所需要的RBAC特征的方法。本标准首先定义了一个RBAC的特征核心集合,任何其他的特征包都必须包含这一核心特征集。在构建RBAC特征包时,角色层次,静态约束(静态职责分离),动态约束(动态职责分离)是可选组件。6RBAC参考模型
6.1概述
RBAC参考模型通过四个RBAC模型组件来进行定义一一核心RBAC、角色层次RBAC、静态职责分离关系、动态职责分离关系核心RBAC定义了能够完整地实现一个RBAC系统所必需的元素、元素集和关系的最小集合,其中包括最基本的用户/角色分配和权限/角色分配关系。此外,它还引入了角色激活的概念作为计算机系统中用户会话的一个组成部分。核心RBAC对于任何RBAC系统而言都是必需的,其它RBAC组件彼此相互独立并且可以被独立地实现。角色层次RBAC组件支持角色层次。角色层次从数学上讲是一个定义角色之间级别关系的偏序,高级别的角色获得低级别角色的权限,低级别角色获得高级别角色的用户成员。此外,层次RBAC还引入了角色的授权用户和授权权限的概念。静态职责分离针对用户/角色分配定义了角色间的互斥关系。由于可能与角色继承产生不一致,静态职责分离关系组件在没有角色层次和存在角色层次的情况下分别进行了定义。动态职责分离关系针对用户会话中可以激活的角色定义了互斥关系,每个模型组件都由下列子组件来定义:a)一些基本元素集;
一些基于上述基本元素集的RBAC关系:b)
一些映射函数,在给定来自某个元素集的实例元素的情况下能够得到另一个元素集的某些实例元素。
RBAC参考模型给出了一种RBAC特征的分类,可以基于这些分类的特征构建一系列RBAC特征包。本标准的主要目的不是试图定义RBAC特征的全集,而是致力于提供一组标准的术语来定义已有的模型和商业产品中最主要的RBAC特征。6.2核心RBAC
GB/T ×XXX—XXXX
核心RBAC的元素集和关系在图1中进行了定义。核心RBAC包含了5个基本的数据元素:用户集(USERS),角色集(ROLES),对象集(OBJS)、操作集(OPS)、权限集(PRMS)。权限被分配给角色,角色被分配给用户,这是RBAC的基本思想。角色命名了用户和权限之间的多对多的关系。此外,核心RBAC中还包含了用户会话集,会话是从用户到该用户的角色集的某个激活角色子集的映射。
角色是组织上下文中的一个工作职能,被授予了角色的用户将具有相应的权威和责任。权限是对某个或某些受RBAC保护的对象执行操作的许可。操作是一个程序的可执行映像,被调用时能为用户执行某些功能。操作和对象的类型依赖于具体系统,例如在一个文件系统中,操作可以包含读、写、执行:在数据库管理系统中,操作包含select、insert、delete、update等。访问控制机制的核心功能是保护系统资源。与以前的访问控制模型一致,RBAC模型中的对象是包含或接收信息的实体。对一个实现RBAC的系统,对象可以代表信息容器(如操作系统中的文件和目录或数据库中的表、视图、字段),或者诸如打印机、磁盘空间、CPU周期等可耗尽的系统资源。RBAC覆盖的对象包括所有在分配给角色的权限中出现的对象。RBAC中一个很重要的概念是角色的相关分配关系。图1中给出了用户分配关系(UA)和权限分配关系(PA)。图中的箭头表示关系是多对多的(例如,一个用户可以被分配给多个角色并且一个角色可以被分配给多个用户)。这种安排带来了给角色分配权限和给角色分配用户时的灵活性和细粒度。如果没有这些,就有可能造成给用户分配过多的对资源的访问权限:能够更灵活地控制对资源的访问权限也有助于最小特权原则的实施。用户/角色分配
(USERS)
会话用户
(ROLES)
(Sessionyusers)
角色/权限分配
会话角色
Z(Session_roles)
(SESS-IONS)
图1核心RBAC
(PRMS)
(OBJS)
用户在建立一个会话的时候可以激活他/她所被分配的角色的某个子集。一个会话只能与一个用户关联,一个用户可能同时拥有多个会话。函数session_roles返回一个会话激活的角色,函数session_user给出会话的用户。在用户的会话中保持激活状态的角色的权限构成了用户的可用权限。以下为核心RBAC规范:
USERS,ROLES,OPS,OBJS分别代表:用户集、角色集、操作集、对象集:UA二USERS×ROLES,一个多对多的映射,代表用户/角色分配关系;assigned_users(r:ROLES)→2uSERs,一个映射,给出分配了角色r的用户,assigned_users(r)=(ueUSERs(u,r)eUA) :PRMS ≤2(OPSxOBS),权限集:d)
PA≤PERMS×ROLES,一个多对多的映射,代表权限/角色分配关系:GB/Txxxx—xxxx
assigned_permissions(r:ROLES)→2PRMS,一个映射,给出分配给角色r的权限,assigned_permissions(r)=(pEPRMSI(p,r)EPA):ops(p:PRMS)→(opCOPS),权限到操作的映射,给出与权限p关联的操作:obs(p:PRMS)一→(ob二OBS),权限到对象的映射,给出与权限p关联的对象:SESSIONS,会话集:
session_user(s:SESSIONS)一→USERS,一个从会话s到对应用户的映射;session_roles(s: SESSIONS)→2ROLES,一个从会话s 到其激活的角色集的映射,session_roles(s)C(rEROLES(session_users(s),r)eUA):avail_session_perms(s:SESSIONS)→2PRMs,一个从会话s到它拥有的权限集的映射,D
avail_session_pers(s)=Uresesion_mole(a) assigned_permission(r)。6.3层次RBAC
6.3.1概述
角色层次
用户/角色分配
(USERS)
会话用户
(Session
users)
(ROLES)
角色/权限分配
会话角色
(Session_roles)
(SESSIONS
(PRMS)
(OBJS)bZxz.net
图2所示,层次RBAC引入了角色层次。角色层次通常被作为RBAC模型的重要部分,并且经常在RBAC商业产品中得以实现。角色层次可以有效地反映组织内权威和责任的结构。角色层次定义了角色间的继承关系。继承通常是从权限的角度来说的,例如,如果角色r,“继承”角色r2,角色r的所有权限都同时为角色ri所拥有。在某些分布式RBAC实现中,角色层次是集中管理的,而权限/角色分配却是非集中管理的。对这些系统,角色层次的管理主要是从用户成员包含关系的角度进行的:如果角色r的所有用户都隐含地成为角色r2的用户,则称角色r“包含”角色r2。这种用户成员包含关系隐含了这样一个事实:角色r的用户将拥有角色r2的所有权限。然而角色T和角色4
2之间的权限继承关系并不对它们的用户分配做任何假设。GB/T×xxx—Xxxx
本标准认可两种类型的角色层次一通用角色层次和受限角色层次。通用角色层次支持任意偏序关系,从而支持角色之间的权限和用户成员的多重继承。受限角色层次通过施加限制来得到一个简单的树结构(一个角色可以拥有一个或多个直接祖先角色,即继承多个角色:但只能有一个直接后代角色,即被一个角色继承)。
6.3.2通用角色层次
RHcROLES×ROLES是一个称为继承的角色之间的偏序关系,记作一。如果rl-2,则角色rl拥有角色r2的所有权限并且角色r1的用户都将是角色r2的用户;authorized_users(r: ROLES)→2USERS一个在角色层次存在的情况下从角色到该角色的授权用户的映射,authorized_users(r)={ueUSERSr\_r^(u,r)eUA)authorized_ permissions(r: ROLES) →2PRMs一个在角色层次存在的情况下从角色到其授权权限的映射,authorized_permissions(r)= (pePRMS Ir_r\^(p, r)ePA)。角色层次
用户/角色分配
(USERS)
会话用户
(Session
users)
(SESSIONS)
(ROLES)
角色/权限分配
会话角色
(Session_roles)
图2层次RBAC
(PRMS)
(OBJS)
通用角色层次支持多重继承的概念,从而使得一个角色可以从两个或者更多其它角色继承权限或用户成员。多重继承具有两个重要的性质。第一,多重继承使得可以通过从几个低级别的角色来构建较高级别角色的方式来定义角色间的关系以反映组织和事务的结构。第二,多重继承使得可以一致地对待用户/角色分配关系和角色/角色继承关系。用户也可以被包含在角色层次中,并且仍然用一来代表用户角色分配以及用户对角色权限的继承。在受限角色层次中,一个角色只能有一个直接后代。尽管受限角色层次不支持权限的多重继承,但与层次RBAC比较却具有管理上的优势。如果r一r2并且这两个角色之间不存在其它的角色(即不存在不同于角色ri和角色r2的角色3满足i_3_2),则是rz的直接祖先,记作>>r245
6.3.3受限角色层次
受到下述限制的通用角色层次:r,,r2EROLES,r>>r>>2=>=r2。GB/TxxXX—XxXX
角色层次可以用偏序图来表示。图中的节点代表角色,如果是I2的直接后代,则存在从指向t2的有向箭头。在角色层次的偏序图上,x_Ty当且仅当存在从x到t,的有向路径。由于角色之间的偏序关系是传递和反对称的,所以不存在有向回路。通常,角色层次图上的箭头与角色间的继承关系相一致都是自上而下的,因此角色用户成员的继承是自上而下的,而角色权限的继承是自下而上的。6.4带约束的RBAC
6.4.1概述
带约束的RBAC模型增加了职责分离关系。职责分离关系可以被用来实施利益冲突(ConflictOfInterest)策略(防止某个人或某些人同时对于不同的某些个人、某些集团或组织以及某种事物在忠诚度和利害关系上发生矛盾的策略)以防止组织中用户的越权行为。作为一项安全原则,职责分离在工商业界和政府部门得到了广泛的应用,其目的是保证安全威胁只有通过多个用户之间的串通勾结才能实现。具有不同技能和利益的工作人员分别被分配一项事务中不同的任务,以保证欺诈行为和重大错误只有通过多个用户的勾结才可能发生。本标准支持静态和动态的职责分离。
6.4.2静态职责分离关系
在RBAC系统中,一个用户获得了相互冲突的角色的权限就会引起利益冲突。阻止这种利益冲突的一个方法是静态职责分离,即对用户/角色分配施加约束。本标准中定义的静态约束主要是作用于角色,特别是用户/角色分配关系,也就是说,如果用户被分配了一个角色,他/她将不能被分配另一些特定的角色。从策略的角度,静态约束关系提供了一种有效的在RBAC元素集上实施职责分离和其它分离规则的有效手段。静态约束通常要限制那些可能会破坏高层职责分离策略的管理操作。以往的RBAC模型通常通过限制一对角色上的用户分配来定义静态职责分离(一个用户不能同时分配处于SSD关系下的两个角色)。尽管现实世界中确实存在这样的例子,这样定义的SSD在两个方面限制性太强:SSD关系中角色集的成员数(只能为2)和角色集中角色的可能组合情况(每个用户最多只能分配角色集中的一个角色)。在本标准中,静态职责分离通过两个参数定义:一个包含两个或更多角色的角色集和一个大于1的阅值(用户拥有的角色中包含在该角色集中角色的数量小于这个阅值)。例如,一个组织可能要求任何一个用户不能被分配代表采购职能的4个角色中的3个。正
—-角
GB/Txxxx—xxxx
图3所示,静态职责分离可能存在于层次RBAC中。在存在角色层次的情况下,必须注意不要让用户成员的继承违反静态职责分离策略。为此,层次RBAC也被定义为继承静态职责分离约束。在角色层次RBAC中,为了解决可能出现的不一致性,静态职责分离被定义为针对角色的授权用户的约束。SSD
—角色层次
用户/角色分配
(USERS)
会话用户
(Session
(ROLES)
角色/权限分配
会话角色
(Session_roles)
(SESS-IONS)
图3层次RBAC下的静态职责分离
静态职责分离
(PRMS)
(OBJS)
SSD≤(2ROLES×M)由一组形如(rs,n)的对构成,其中rs是角色的集合,t是rs的子集,n≥2,满足任何用户都不能同时被分配rS中的n个或者更多角色,v(rs,n)SsD,t≤rs:/t≥n=assigned_users(r)=0层次RBAC下的静态职责分离
在存在角色层次的情况下,静态职责分离基于角色的授权用户而不是直接分配了该角色的用户进行重新定义,v(rs,n)eSsD,Vt≤rs:tn=eauthorized_users(r)=①。6.4.3动态职责分离关系
静态职责分离关系和动态职责分离(DSD)关系的目的都是限制用户的可用权限,不过它们施加约束的上下文不同。SSD定义并且施加约束到用户总的权限空间上,而DSD通过约束一个用户会话可以激活的角色来限制用户的可用权限。DSD使用户可用以在不同的时间拥有不同的权限,从而进一步扩展了对最小特权原则的支持。DSD能够保证权限的有效期不超过完成某项职责所需要的时间段,这通常被称为信任的及时撤销。在没有DSD的情况下,动态的权限撤销是非常困难的,因此通常被忽略。SSD解决在给用户分配角色的时候可能存在的利益冲突问题。DSD允许用户同时拥有两个或者更多这样的角色:这些角色在各自独立地被激活时不会产生安全威胁,而同时被激活时就可能会产生违反安全策略的行为。
动态职责分离被定义为针对用户会话激活的角色的约束(见
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。