好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

工作流访问控制模型.ppt

60页
  • 卖家[上传人]:cl****1
  • 文档编号:567695832
  • 上传时间:2024-07-22
  • 文档格式:PPT
  • 文档大小:506.51KB
  • / 60 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 二00九年十一月第十四讲工作流访问控制模型 内容提要o安全策略o访问控制模型 安全策略的实质 o当设计所涉及的那个系统在进行操作时,必须明确在安全领域的范围内;n什么操作是明确允许的;n什么操作是一般默认允许的;n什么操作是明确不允许的;n什么操作是默认不允许的o我们不要求安全策略作出具体的措施规定以及确切说明通过何种方式能够够达到预期的结果;o但是应该向安全构架的实际搭造者们指出在当前的前提下,什么因素和风险才是最重要的 信息安全体系结构 oISO7498标准是目前国际上普遍遵循的计算机信息系统互连标准;o1989年12月国际标准化组织(ISO)颁布了该标准的第二部分,即ISO7498-2,并首次确定了开放系统互连(OSI) 参考模型的信息安全体系结构;o我国将其作为GB/T9387-2标准,并予以执行 安全策略的实施原则 o(1)最小特权原则:最小特权原则是指主体执行操作时,按照主体所需权利的最小化原则分配给主体权力最小特权原则的优点是最大限度地限制了主体实施授权行为,可以避免来自突发事件、错误和未授权用主体的危险o(2)最小泄漏原则:最小泄漏原则是指主体执行任务时,按照主体所需要知道的信息最小化的原则分配给主体权力。

      o(3)多级安全策略:多级安全策略是指主体和客体间的数据流向和权限控制按照安全级别的绝密(TS)、秘密(S)、机密(C)、限制(RS)和无级别(U)五级来划分多级安全策略的优点是避免敏感信息的扩散具有安全级别的信息资源,只有安全级别比他高的主体才能够访问 访问控制的安全策略实现方式o按照ISO 7498-2中OSI安全体系结构中的定义n基于身份的安全策略n基于规则的安全策略 基于身份的安全策略 o基于身份的安全策略(IDBACP:Identification-based Access Control Policies);o它的目的是过滤对数据或资源的访问,只有能通过认证的那些主体才有可能正常使用客体的资源;o基于身份的策略包括基于个人的策略和基于组的策略 基于规则的安全策略 o基于规则的安全策略中的授权通常依赖于敏感性在一个安全系统中,数据或资源应该标注安全标记代表用户进行活动的进程可以得到与其原发者相应的安全标记o基于规则的安全策略在实现上,由系统通过比较用户的安全级别和客体资源的安全级别来判断是否允许用户可以进行访问 访问控制的目的 o访问控制的目的是保护信息资源不被未授权用户浏览或修改,从而实现数据的保密性和完整性。

      工作流的访问控制 o工作流系统相关的安全问题包括认证、授权、访问控制、审计、数据保密性、数据完整性、抗抵赖性等;o其中最重要的安全问题之一就是访问控制 工作流访问控制策略 o(1) 对工作流任务的合法性进行检验;o(2) 由任务授权的用户所拥有的权限满足权限最小化原则(Least privilege); o(3) 根据任务之间的相互关系和用户的职能来决定任务的用户授权,保证职责分离原则(Separation of duties);o(4) 在工作流运行期间,动态的对任务的授权进行检验和调整;o(5) 对任务的执行时间进行控制为了使工作流管理系统的访问控制设计做到安全可靠,我们必须遵守这些准则 访问控制模型 o访问控制矩阵(ACM );oTake-Grant模型;o自主访问控制模型(DAC);o强制访问控制模型(MAC) ;o基于角色的访问控制RBACnFerraio lo 和Kuhn 1992 年提出的 ( role-based-access-control)模型上;nFerraio lo 和Sandhu 等人对此作了大量研究;n并于2001 年形成了美国国家标准化和技术委员会(N IST ) 的RBAC 推荐标准。

      访问控制RBAC模型 o在访问控制领域中,Ravi Sandhu在1996年提出的RBAC模型是一个被频繁引用的模型oRBAC 模型中引入了角色这个中介,安全的管理就可以根据需要定义各种各样的角色,并设置合适的访问权限,而用户根据其责任和权利被指派为不同的角色,并由此取得该角色所对应的所有权限o这样整个访问控制过程就被分成了两部分,即访问权限与角色相关联,角色再与用户相关联,从而实现了用户与访问权限的逻辑分离 访问控制方法(RBAC)的两大特征 o1.由于角色/权限之间的变化比角色/用户关系之间的变化相对要慢得多,减小了授权管理的复杂性,降低管理开销o2.灵活地支持企业的安全策略,并对企业的变化有很大的伸缩性 RBAC模型里的角色 o角色是权限的集合,或者说权限是角色的原子划分(不可再分的划分);o一个原子任务(不可再分的任务)也对应一个权限的集合,等级最低的角色的划分依据是某个原子任务所需的权限;o由于角色之间有继承关系,使得多个角色可以组成一个角色,任务之间也是存在等级的,任务是由一些子任务组成的;o用户也可以被看成是具有执行任务能力的集合这样,用户既是权限的集合,又是角色的集合,也是具有执行任务能力的集合。

      RBAC的应用oRBAC 的优点是通过角色能够表达企业内部组织和人员之间的复杂关系,角色可以代表企业部门或工作职位,用户能够灵活地在不同角色之间切换,从而便于授权管理;o工作流是由一些具体任务组成的,这些任务是人为的逻辑划分,因此这些任务具有特殊性若为了保证权限最小化原则而要求每个任务有一个角色与之相对应,则需要大量的建立针对不同具体任务的角色这不仅降低了角色的使用效率,而且在管理角色上增加了沉重的负担;o角色使得用户仅被授予完成某项工作所需的最小权限,从而支持最小权限原则 Who、What、How oRBAC认为权限授权实际上是Who、What、How的问题o在RBAC模型中,who、what、how构成了访问权限三元组,也就是“Who对What(Which)进行How的操作” RBAC模型定义的基本概念和术语(1)o1)、主体(subject):是访问操作中的主动实体;o2)、客体(object):是访问操作中被动实体;o3)、访问控制(Access control):限制访问系统资源的过程,只有被授权的程序或过程才能访问系统资源;o4)、角色(Role):组织内部的工作职能,担任某角色的人要有相应的权利和责任;o5)、约束(Constraints):两个或多个角色之间的关系;o6)、权限(Permissions):被授权的主体和客体之间的交互类型的描述;o7)、管理角色(Administrative role):具有修改用户集合、角色集合、权限集合、用户赋值关系和权限赋值关系的权限的角色; RBAC模型定义的基本概念和术语(2)o8)、角色层次结构(Role hieratchy):建立在角色间的部分序关系;o9)、会话(Session):一个用户和该用户所担任的角色集合的子集的映射。

      当一个用户激活他所有角色的一个子集的时候,建立一个session.每个Session和单个的user关联,并且每个User可以关联到一或多个Session;o10)、分配(assignment):包含两个方面,用户分配( user assignment) 和 许 可 分 配 ( permission assignment)用户分配表示的是,将用户或用户组分配给特定的角色许可分配表示的是,为角色分配访问许可o11)、系统管理员(System administrator):制定系统安全策略、担任管理角色的个人(individual) RBAC0模型 o1996年,Sandhu等人提出了一个RBAC模型簇,后来称为RBAC96RBAC96包含四个模型,分别为RBAC0、RBAC1、RBAC2和RBAC3oRBAC0为基本型,描述任何支持RBAC的系统的最小要求oRBAC0包含四个元素:用户、角色、会话和访问权限用户在一次会话中激活所担任角色的一个子集并获得一组访问权限,这组权限是子集中所有角色的全部权限未激活的角色其权限在该会话中是被禁止的 RBAC0RBAC0的形式化定义的形式化定义 o定义4.1:RBAC0模型具有下列组件:oU,R,P和S分别表示用户集合,角色集合,权限集合和会话集合。

      oPA≤P×R,多对多关系oUA≤U×R,多对多关系ouser:S→U,是一对一映射,user(s)为一个用户oroles:S→2R,是一对一映射,roles(s) ≤{r|(user(s),r)∈UA},会话s中的权限为∪r∈user(s){p|(p,r)∈PA} 基于角色的访问控制方法的优点o由于实现了用户与访问权限的逻辑分离,基于角色的策略极大地方便了权限的管理o例如, 如一个用户的职位与任务发生了变化, 只要将用户当前的角色去掉加入代表新的职务或任务的角色即可o在实际的工作中,角色—权限之间的变化远比角色—用户之间的变化相对慢的多,同时给用户赋给角色并不需要好多的技术,可以直接有行政办公人员来完成,但配置权限给角色还是需要一定的技术的,这可以在程序实现时由程序员来实现,但不给他们将角色分配给用户的权利,这在现实的工作中对加强安全的管理有很好的帮助的;o基于角色的访问控制方法实现最少权限原则和职责分离的原则 基于角色的工作流模型 o一个完整的工作流模型是由一系列最基本的活动或任务,按照一定的逻辑顺序规则组成的,这些活动或任务及其逻辑关系可以直观地映射成为由一个节点和连接弧组成的有向图。

      o有向图中的节点表示一个可以执行的活动或任务,连接连接两个节点之间的有向弧表示工作流模型中的先后顺序关系 基于角色工作流模型形式化定义(1) o(1) 有向图G= {N ,L }为一个二元组,N = {n1, n2,. . . ni}为节点的集合,L = {l1, l2,. . . lj}为连接弧的集合,其中l1=(nM , nK, ) 为从nM 指向nK 的连接弧,nM , nK∈No( 2) 对于任意的nM , nK∈N,若有l= (nM , nK ) ∈L,则nM是nK 的一个前趋节点, nK 是nM 的一个后继节点,l称为nM的一条输出连接弧或nK 的输入连接弧o(3) 若N′∈N,且N′= {n′|(n′, n) ∈L },则N′为节点n的前趋节点集记为P re (n) ;若N′∈N,且N ′= {n′| (n, n′)∈L },则N ′为节点n 的后继节点集记为Post (n) 基于角色工作流模型形式化定义(2)(4) 节点状态对于任意的n∈N,有状态函数state (n) ={ 0, 1},当节点n 处于非执行状态时,state (n) = 0;当节点n处于执行状态时,state (n) = 1。

      初始时刻对于任意的n∈N,state (n) = 05) 节点角色定义在工作流模型中,节点的角色是与节点紧密相联系的,角色决定着该节点在系统中所能做的工作对于任意的n∈N,有角色函数role (n) = {0, 1},当role (n) =1 时, 表示该节点有做这项工作的权限;role (n) = 0 时,表示该节点没有做这项工作的权限6) 转移函数对于任意的l∈L,有转移函数trans ( l) ={ 0, 1},如果trans ( l) = 1,则连接弧l 允许发生转移;如果trans (l) = 0,则连接弧l 不能转移是否发生转移则要取决于后面的演进规则 基于角色工作流模型形式化定义(3)o(7) 演进规则有向图的演进由节点状态的改变与连接弧发生转移两个动态因素相互作用而完成,其规则包含下面两个方面的内容:oi) 对于任意的n∈N,当state (n) = 0 且role (n) = 1 时,若存在l= (n′, n) 发生转移,则state (n) = 1;当state (n) = 1时,若节点n 执行完毕时,则state (n) = 0oii) 对于任意的l= (n′, n) ∈L,当state (n) 从1 变为0 时,若trans ( l) = 1 且role (n) = 1,则连接弧l 发生转移;若trans( l) = 0 或role (n) = 0,则连接弧l 不发生转移,直至下一次state (n) 从1 变为0 时再使用该规则。

      基于角色的安全控制过程 o在基于角色的工作流系统中,角色控制用来增强实际应用系统的安全性o用户—角色是角色授权保护方法中的一种,在这种方式下,用户被授权拥有某种角色的权力,这些角色的权力必须在一个角色的访问控制列表中指定;o对于不同的角色,它的访问控制列表中包含了授权访问此角色的标识符 角色访问控制列表的定义o角色访问控制列表的定义如下:< id1,. . . , idn>,其中idi∈ID 是一个用户标识符user 或一个组标识符group,其中ID∈userid∪group ido在基于角色的安全系统中,除了在角色访问控制列表中指定的访问控制外,其他的访问都是被禁止的;o所以在基于角色的安全系统中,每个角色必须拥有一个相关连的访问控制列表,即:任意的r∈R,一定存在r,使得racl= < . . . , id,. . . > 安全角色的定义o安全角色的定义为:o一个安全角色是一个形式化三元组的命名特权集合,n其中rname 是角色名,nrp set 是特权集,nracl是它的访问控制列表,且它只有一个访问控制列表 判断用户使用系统的权限在判断用户使用系统的权限时,是一个二阶段的过程:o· 必须保证有一个用户—角色授权,即用户的标识或组的标识符在角色的访问控制列表上。

      o· 必须保证对客体所希望的访问控制方式在特权集中存在,称之为用户—权限授权,这意味着用一个二阶段的过程来证实一个授权 基于角色的工作流访问控制模型基于角色的工作流访问控制模型 o基于角色的访问控制系统需要确定用户、角色、权限之间的关系;o在工作流环境中,还需要确定活动与角色、活动与许可、活动实例与用户之间的关系 基本概念o该模型的基本概念包括用户、角色、活动、应用数据、数据对象、操作、许可、权限、静态约束和动态约束o用户(U ser)等前面已经进行了介绍,另外的几个未介绍的概念分别是:n活动(Activity) 是指在一段持续时间内,为实现某一目标由人工或自动完成的任务集合,是组成工作流过程的最基本单元n应用数据(Application Data) 指工作流应用数据,如销售订单、公文等n数据对象(Data Object) 则是应用数据的实例,指某个活动实例所处理的具体数据,如某个销售订单、某份公文等n操作(Operation)是一个可执行的程序映像,被用户所使用以完成某种功能,一个应用数据通常拥有多个操作,例如销售订单拥有的操作包括增加、修改、浏览、删除等n许可(Permission) 是指具有执行某个应用数据操作的能力。

      n权限(privilege) 是对执行某个数据对象操作的批准许可通常与角色关联,而权限通常与用户关联 冲突的含义o在工作流环境中,许可、角色、活动和用户都存在发生冲突的可能性,冲突的含义是如果在授权过程中不加约束则将增加商业欺诈的风险 四种类型的冲突(1)(1) 许可冲突:若同一用户执行两个操作存在商业欺诈的可能性,则称这两个操作存在许可冲突,如开支票与支票审核操作,工作流环境中经常会出现多个活动具有相同操作的情况,例如同一支票可能需要由三个不同人员进行审核,同一用户通常不允许对同一数据对象多次执行相同操作因此,我们规定许可冲突具有自反性,即任何操作与自身存在许可冲突 四种类型的冲突(2)o(2) 角色冲突:若两个角色拥有冲突的许可,则称这两个角色冲突如出纳(拥有开支票操作的许可) 与会计(拥有支票审核操作的许可)o(3) 活动冲突:若一个工作流过程中的两个活动需要完成的操作存在许可冲突,则称这两个活动冲突,如支付过程中的开支票与支票审核活动o(4) 用户冲突:若两个用户有可能合谋进行商业欺诈,则称这两个用户冲突例如,出纳和会计应当避免由同一家庭中的两个成员担任 授权约束规则o这些冲突可以通过授权约束规则进行描述,授权约束可分为静态约束(Static Constraint) 和动态约束(Dynamic Constraint) 两种类型。

      o静态约束独立于任何过程实例,在创建时进行冲突检查o动态约束则依赖于过程实例的执行历史,在运行时进行冲突检查o此外,动态约束还包括责任绑定,责任绑定指同一过程实例中的不同活动必需由同一用户完成 基于角色的工作流系统访问控制模型基于角色的工作流系统访问控制模型 o一个用户可以属于不同角色,一个角色也可以拥有多个用户;o每个工作流活动可以由某个或多个角色的用户完成,一个角色也可以分配完成不同的活动;o一个活动可以处理多条应用数据,一条应用数据也可以被多个活动处理o许可与二元组(应用数据,操作) 一一对应o在运行时,一个活动往往会存在多个活动实例,一个用户属于某个活动关联的角色,仅仅意味该用户具有完成该活动的能力,但并不意味该用户具有完成所有活动实例的权限,用户权限的授予通常是动态进行的 基于角色的工作流系统访问控制模型基于角色的工作流系统访问控制模型 o角色层次定义了角色之间的继承关系,其含义是若角色r1 继承r2,则r1 的用户拥有r2 用户的所有权限角色继承关系自然地反映了一个组织内部的权利和责任关系(例如经理继承职员的所有权限,而总经理又继承经理的所有权限),从而便于权限管理o角色还可能存在最大用户个数的限制,如副经理最多不能超过三人。

      o静态约束主要存在于创建时许可/角色、许可/活动、用户/角色和角色/活动分配过程中,静态约束检查需要考虑角色之间的继承关系o动态约束存在于运行时,在选择完成某个活动实例的用户时进行动态约束检查 基于角色的工作流系统访问控制模型基于角色的工作流系统访问控制模型 企业材料采购工作流为例o设材料采购工作流由以下5个任务组成:提出采购申请(task1),填制采购单(task2),审批采购单(task3),确认采购单(task4),执行采购(task5);o其中task1由项目经理角色pr执行,task2由财务职员角色cl执行,task3由总经理角色ma和财务主管角色su协同执行,task4由角色pr执行,task5由角色cl执行. 材料采购工作流程 任务执行约束o用户u已执行task1或task2,则禁止u执行task3和task5,但u已执行task1,则u必须执行task4. otask3必须先由ma激活,再由su激活,而两个不同用户分别使用ma激活task3的先后次序无关紧要 时间授权约束o周期时间授权约束为:从2002年1月~2002年10月;o每月15日8点~15点执行task1,每月15日和16日8点~15点执行task2,每月18日8点~12点执行task3,每月18日14点~17点执行task4,每月18日和19日8点~12点执行task5. 访问控制策略o策略1. 工作流任务执行必须在特定的时间(包括周期时间)由特定的用户使用特定的角色完成. o策略2. 在工作流任务实例的一次执行中,多角色可以分别一次或多次激活任务. o策略3. 在工作流任务实例的一次执行中,多用户可以分别一次或多次激活任务. o策略4. 在工作流任务实例的一次执行中,多用户或多角色激活任务必须是有序的. 基于任务的工作流访问控制模型o传统的工作流,用角色很好操作;o但有很多工作流,上一步的操作决定了下一步的走向,并且,很难确定角色。

      关于任务o任务是一个跟业务或者设计密切相关的概念;o任务是一个比较主观的概念,任务是一个个操作的统称;o任务是一个逻辑单元,是可以区分的一个动作,或者一系列动作,任务的划分肯定与完成任务的方便,效率等相关的,跟业务的实际需要;o任务里面肯定是一个操作的集合,这些操作是按照一定的顺序进行组织的;o为此,在计算机中,要设计一个概念与任务映射 任务的状态 o任务的执行有个过程,也就是说,任务是有生命周期的,任务具有完成时间;o是我们可以把任务的执行过程分成不同的阶段,从而定义为不同的状态 权限与操作、能力 o权限是跟主体相关联的,说到权限,肯定是说主体可以执行什么操作,或者,不可以执行什么操作,是主体与操作之间的一种对应关系,或者说是函数o能力与权限似乎是一码事情,只是不是很恰当地描述了主体的一种特性,能力往往是描述主体的一个概念,能力是内因,而权限是外因,能力是来自自身的一种特性,而权限是外界对个体的一种限制 访问控制的定义o访问控制是通过显示的方式,限制主体的访问能力及范围,从而达到保护关键数据,防止非法用户的访问及合法用户的误操作;o访问控制的目的是保护资源;o授权是访问控制的主要工作,授权模型或者授权函数是研究的重点。

      授权步(authorization step)o表示一个原始授权处理步,是指在一个工作流程中对处理对象的一次处理过程.它是访问控制所能控制的最小单元,授权步由受托人集(trustee-set)和多个许可集(permissions set)组成.o受托人集是可被授予执行授权步的用户的集合,许可集则是受托集的成员被授予授权步时拥有的访问许可.o当授权步初始化以后,一个来自受托人集中的成员将被授予授权步,我们称这个受托人为授权步的执行委托者,该受托人执行授权步过程中所需许可的集合称为执行者许可集.o在TBAC中,一个授权步的处理可以决定后续授权步对处理对象的操作许可,我们将这些许可称为激活许可集.o执行者许可集和激活许可集一起称为授权步的保护态. 授权步 授权结构体o授权结构体(authorization unit).授权结构体是由一个或多个授权步组成的结构体,它们在逻辑上是联系在一起的.o授权结构体分为一般授权结构体和原子授权结构体.o一般授权结构体内的授权步依次执行;o原子授权结构体内部的每个授权步紧密联系,其中任何一个授权步失败都会导致整个结构体的失败.o依赖(dependency).依赖是指授权步之间或授权结构体之间的相互关系,包括顺序依赖、失败依赖、分权依赖和代理依赖.依赖反映了基于任务的访问控制的原则 传统访问控制模型o传统访问控制模型的授权一般用三元组(S,O,P)表示,其中S表示主体,O表示客体,P表示许可.o如果存在元组(S,O,P),则表明S可在O上执行P许可.否则,S对O无任何操作许可.o这些三元组都是预先定义好并静态地存放在系统中,且无论何时都是有效的.对于用户的权限限制,访问控制是被动的、消极的. TBACo在TBAC中,授权需用五元组(S,O,P,L,AS)来表示 .其 中 S,O,P的 意 义 同 前 ,L表 示 生 命 期(lifecycle),AS表示授权步.oP是授权步AS所激活的权限,而L则是授权步AS的存活期限.oL和AS是TBAC不同于其他访问控制模型的显著特点. TBAC授权过程o在授权步AS被触发之前,它的保护态是无效的,其中包含的许可不可使用.o当授权步AS被触发时,它的委托执行者开始拥有执行者许可集中的权限,同时它的生命期开始倒记时.o在生命期期间,五元组(S,O,P,L,AS)有效.o当生命期终止,即授权步AS被定为无效时,五元组(S,O,P,L,AS)无效,委托执行者所拥有的权限被回收. 授权步的状态o(1) 睡眠状态,表示授权步还未生成; o(2) 激活状态,表示授权步被请求激活,此时授权步已经生成; o(3) 有效状态,表示授权步开始执行,随着权限的使用,它的保护态发生变化; o(4) 挂起状态,表示授权步被管理员或因执行条件不足而强制处于挂起状态,它可以被恢复成有效状态,也可能因生命周期用完或被管理员强制为无效状态; o(5) 无效状态,表示授权步已经没有存在的必要,可以在任务流程中删除. 授权步的状态 TBACTBAC的形式化定义 TBAC模型 谢谢!谢谢! 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.