首页> 中国专利> 一种基于二进制序列集合的访问控制策略合成方法

一种基于二进制序列集合的访问控制策略合成方法

摘要

本发明公开一种基于二进制序列集合的访问控制策略合成方法,首先定义二进制序列集合元素以及基于二进制序列的集合运算规则,根据以上定义,从属性约束层对实际的策略进行属性分解,并通过集合内部元素分离将策略正确的表达成为基于二进制序列的逻辑表达式。然后通过语义检查和移位合并,用以消除规则冗余和语义冲突问题。在此基础上,根据实际的安全需求定义基于二进制序列集合的逻辑合成算子,将合成方式转换成逻辑表达式。利用二进制序列可直接作为数据结构的特点,根据逻辑表达式可直接对基于二进制建模的策略空间计算合成结果,作为一种无需逻辑转换的策略代数实现机制。最后,将基于二进制集合形式的合成策略翻译成属性项策略。

著录项

  • 公开/公告号CN102932328A

    专利类型发明专利

  • 公开/公告日2013-02-13

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201210364329.7

  • 发明设计人 潘理;刘晨燕;訾小超;

    申请日2012-09-26

  • 分类号H04L29/06;

  • 代理机构上海汉声知识产权代理有限公司;

  • 代理人郭国中

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2024-02-19 18:13:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-01-13

    授权

    授权

  • 2013-04-10

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20120926

    实质审查的生效

  • 2013-02-13

    公开

    公开

说明书

技术领域

本发明涉及的是一种分布式系统中域间授权安全互操作方法,具体地说,是 一种基于二进制序列集合(Bsset)的访问控制策略合成方法。

背景技术

随着大规模分布式网络应用的迅速发展,自治域之间的合作也会越来越频繁。 其中,域间访问控制策略合成是分布式技术中聚合资源访问的关键安全要素。基 于属性的访问控制能解决复杂系统中的细粒度的访问控制,为开放的分布式环境 提供了较为理想的访问控制方案。并且利用离散代数可以将复杂的基于属性的策 略合成方式用严谨的代数系统表达,基于代数的域间访问控制策略合成方法具体 是指一类首先在逻辑层面对策略合成语义进行分析和定义,进而建立运算规则系 统(即代数系统)进行合成演算的基于属性授权的访问控制策略合成方法。这类 方法通常需要将实际的访问控制策略通过逻辑转换器转化为逻辑代数符号才能由 计算机程序实现合成演算,因此可实现性差、运算效率低。

经对现有技术的文献检索发现,Bertino、Li Ninghui等人在《An Algebra for  Fine-Grained Integration ofXACML Policies》一文中基于XACML策略描述形式提 出用MTBDD(Multi-Terminal Binary Decision Diagrams)策略树转译实际策略的方 法,以及相应的策略合成代数系统可解决细粒度的域间访问控制策略合成。这是 目前已报道的最佳解决方法。但是,这一方法虽然解决了逻辑代数符号的转换代 价,却由于策略树自身数据结构对于布尔属性约束的依赖性,会造成合并过程中 的冗余以及系统规模庞大的问题,这也限制了该方法的合成运算性能。

发明内容

针对上述现有技术存在的不足,本发明要解决的问题是提供一种基于二进制 序列集合的访问控制策略合成方法,采用二进制序列集合对域间访问控制策略进 行基于属性约束的建模,这种建模方式无需通过逻辑转换器就可被计算机程序实 现,并且基于这种建模方式设计了授权项间的逻辑算子,可进行多样化的域间策 略合成演算。本发明可作为一种高效和易实现的域间访问控制策略合成方法。

为实现上述目的,本发明采用的技术方案是:首先定义二进制序列集合元素 以及基于二进制序列的集合运算规则,根据以上定义,从属性约束层对实际的策略 进行属性分解,并通过集合内部元素分离将策略正确的表达成为基于二进制序列 的逻辑表达式。然后通过语义检查和移位合并,用以消除规则冗余和语义冲突问 题。在此基础上,根据实际的安全需求定义基于二进制序列集合的逻辑合成算子, 将合成方式转换成逻辑表达式。利用二进制序列可直接作为数据结构的特点,根 据逻辑表达式可直接对基于二进制建模的策略空间计算合成结果,作为一种无需 逻辑转换的策略代数实现机制。最后,将基于二进制集合形式的合成策略翻译成 属性项策略。

本发明所述的基于二进制序列集合的访问控制策略合成方法,包括如下步骤:

步骤一:策略面向属性层分解;

步骤二:对步骤一的策略进行基于BSset的逻辑转换;

步骤三:对步骤二进行语义检查和移位化简;

步骤四:推导基于BSset的合成语义算子;

步骤五:根据步骤三和步骤四,用逻辑表达式刻画合成结构;

步骤六:对步骤五实现合成演算,输出策略合成结果。

进一步的,所述的步骤一,具体操作是:先对主体属性约束、客体属性约束、 行动属性约束等基于属性约束翻译成一个原子布尔表达式aT*v,*∈(=,<,≤,>,≥)。 然后对一个策略集中含有有限个不同的原子布尔表达式,依次编码 一条策略规则就可以被抽象为通过逻辑符号与“∧”和或“∨”连接 的原子布尔表达式组成的一个复合布尔表达式。进而,策略就可以用三组布尔表 达式逻辑集合分别表示三值策略的允许集,拒绝集,以及“不适用”集,由于“不适 用”的策略评估是允许集和拒绝集产生的矛盾,所以暂不考虑。

进一步的,所述的步骤二,具体为:首先根据二进制序列和序列集合的定义, 步骤一所得策略二元组进一步转换成基于二进制序列集合BSset的逻辑形式;其 次,将策略属性项集合进一步通过元素分离:(1)策略的允许集[S]Y和拒绝集[S]N分别与空集φ进行并运算U;(2)去除[S]Y和[S]N集合之间的交集部分[S]Y∩[S]N。 即:

(1)[S]Y=[S]Y∪φ,[S]N=[S]N∪φ;

(2)[S]Y=[S]Y-([S]Y∩[S]N),[S]N=[S]N-([S]Y∩[S]N);

通过上述两个步骤转换成定义的二进制序列集合形式。

进一步的,所述的步骤三,具体为:检查步骤二后的二进制序列集合,是否存 在语义冲突的项,若存在用条件判断语句检测并删除冲突路径。然后进行移位合 并算法,消除冗余路径。

进一步的,所述的步骤四,具体为:根据实际的策略合成安全需求,组合基于 BSset集合运算设计的5个基础语义算子推导出满足 合成期望的合成语义算子。

进一步的,所述的步骤五,具体为:根据步骤三的结果,基于BSset的逻辑 建模策略,和步骤四的结果,根据安全需求推导出的合成语义算子,将多策略的 合成方式转换为合成逻辑表达式。

进一步的,所述的步骤六,具体为:根据步骤五的逻辑表达式,对合成空间 计算合成结果,实现合成演算,并且对每次合并的结果进行语义冲突检测,去除 矛盾的二进制序列,再进行移位合并化简,输出策略合成布尔表达式并进一步转 换成语义描述形式。

本发明采用二进制序列集合元素对基于属性的访问控制策略进行逻辑建模, 这种建模方式可被计算机程序直接实现。其次,将策略描述层的代数规则扩展到 逻辑层,设计了基于二进制序列集合的逻辑运算合成算子。从而将多策略的合成 方式转换为合成逻辑表达式实现合成演算,建立了一种新型的基于属性的细粒度 策略代数合成方法。与基于MTBDD策略树的策略代数合成方法相比,消除了对 于布尔表达式评估顺序依赖的特性,减小了系统规模,并且扩展了合成语义算子, 具有更好的实际应用前景。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它 特征、目的和优点将会变得更明显:

图1为基于二进制序列集合实施策略合成框架图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的 技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本 领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形 和改进。这些都属于本发明的保护范围。

本发明提出的是一种基于二进制序列集合的访问控制策略合成方法,为更好 的理解本发明,首先给出相关定义。

定义1:二进制序列

一个二进制序列BinaryString(简称BS)为形如x0x1...xn-1的字符串,用以表 示析取布尔表达式x0∧x1∧...∧xn-1,即BS≡(x0x1...xn-1),其中每一个xi(i=0,1,...,n-1) 的取值∈{0,1,*}。

在策略属性中,xi表示第i个属性约束;根据属性布尔表达式的香农分解: 若xi值为1表示属性约束xi取值为真;若xi值为0表示属性约束xi取值为假。并 且引入*元素,简单将其看作1∨0=*合并,对于在某条规则中无需评估的原子布 尔表达式,xi取值就为*。在具体方法中,*经转换可用0和1表示,因此属性约 束的取值可只用0和1表示,每个xi可看作是一个二进制位bit。

定义2:二进制序列集合

一个二进制序列集合[S](简称BSset)是由n个长度相等的二进制序列所组成 的集合,[S]={S1,S2,...,Sn-1}表示布尔表达式S1∨S2∨...∨Sn-1,且 Si∩Sj=null(i≠j,1≤i,j≤n)。其中,每个Si表示析取布尔表达式x0∧x1∧...∧xn-1

定义3:二进制序列间两种关系定义

关系S1的第i位值和S2的第i位值相同,或S2的第i位值为*。

关系⊂⃒:S1⊂⃒S2S1和S2不满足S1S2.

定义4:二进制序列及集合间的逻辑运算

定义二进制序列间的三种二元运算∩,-和一种一元运算以及二进制 序列集合间的三种二元运算U,∩,-和一种一元运算

定义5:基于二进制序列集合的合成语义算子

策略代数模型具体是,将各种策略合成方式抽象为策略代数表达式。基于属性 的代数系统中基础算子是并已证明其完备性和最小性。因此,根 据二进制序列集合及定义的集合运算推导出这5个基本算子,其他合 成语义算子都可由这5个符号逻辑组合表示。

定义4中的各运算规则具体如下:

●二进制序列S1∩S2与运算规则

二进制序列S1和S2按位进行与操作,位与运算按照以下运算法则:

 0∩0=0  0∩1=null   0∩*=0  1∩0=null  1∩1=1   1∩*=1  *∩0=0  *∩1=1   *∩*=*

按位与运算的结果中若存在null,则S1∩S2的结果即为null,否则按位与的结 果即为S1∩S2的结果仍为二进制序列。

●二进制序列S1-S2减运算规则

BS减运算:定义序列减运算的结果通常为一个序 列集合。

●二进制序列S1∪S2并运算规则

BS并运算:定义序列并运算的结果通常为一个序 列集合。

●非运算规则

二进制序列按位进行非操作,非运算按照以下运算法则:

按位非的结果即为的结果,结果仍为二进制序列。

●二进制序列集合(BSset)[S]1∩[S]2与运算规则

BSset与运算:定义[S]1∩[S]2={Sk|Sk∈[S]1且Sk∈[S]2}。

●二进制序列集合(BSset)[S]1-[S]2减运算规则

BSset减运算:定义[S]1-[S]2={Sk|Sk∈[S]1且Sk[S]2}。

●二进制序列集合(BSset)[S]1U[S]2并运算规则

BSset并运算:定义[S]1U[S]2={Sk|Sk∈[S]1或Sk∈[S]2}。

●非运算规则

对于二进制序列集合的非运算,对集合中的每个元素进行非运算,即

定义5中的各基于二进制序列集合的基础合成语义算子如下:

●PY算子:all permit策略

PY.[S]Y={**...*};PY.[S]N=null

表示一条新的访问控制策略对于任何的授权项请求都授予允许。

●PN算子:all deny策略

PN.[S]Y=null;PN.[S]N={**...*}

表示一条新的访问控制策略对于任何的授权项请求都授予拒绝。

●+算子:策略加运算

PC=P1+P2PC.[S]Y=P1.[S]YP2.[S]Y

PC.[S]N=(P1.[S]N-P2.[S]Y)U(P2.[S]N-P1.[S]Y)

表示一条新的访问控制策略对于授权项请求如果被P1允许或者被P2允许,那 么它被P1+P2允许;如果被P1或P2拒绝同时不被另一策略允许,那么它被P1+P2拒 绝。

●&算子:策略与运算

PC.[S]N=P1.[S]N∩P2.[S]N

表示一条新的访问控制策略对于授权项请求如果被P1允许并且被P2允许,那 么它被P1 & P2允许;如果同时被P1和P2拒绝,那么它被P1 & P2拒绝。

●算子:策略非运算

PC.[S]N=P.[S]Y

表示一条新的访问控制策略对于授权项请求如果被P允许,那么它被拒 绝;如果被P拒绝,那么它被允许。

根据上述的定义,建立了一个基于BSset的访问控制代数合成框架。主要分为 三个部分:基于BSset的策略逻辑建模(Policy Modeling,PM),基于BSset的合 成语义算子推导(Composition Algebra,CA)和策略合成演算实现(Policies  Composition,PC)。其中,各部分分别由不同的模块组成,各模块间关系如(附图 1)所示。各部分步骤如下。

策略逻辑建模(PM)是指基于BSset对策略进行逻辑抽象,PM的输入是有待 合成的访问控制策略,PM的输出作为合成演算(PC)模块的一个输入。具体分 为三个步骤:

1.步骤一:策略面向属性层分解

如果用集合S(subject),A(action),O(object)和C(condition)分别表示主体集,动 作集,客体集以及动作条件集,那么可将访问控制策略表示为S×A×O×C的一个 子集,以实体属性为参数进行策略合成的具体过程是围绕访问主体、客体和访问 实施动作等几方面实体展开的。任意一个实体属性都有一个属性名称aT,并且有 对应值域dom(aT)中的值。将所有(s,a,o,c)∈S×A×O×C的属性展开,定义aT1, aT2,...,aTk为属性名称,对应的值vi∈dom(aTi)(1≤i≤k),那么访问策略P≡{(aT1,v1), (aT2,v2),...,(aTk,vk)}。在实际的访问控制策略中,策略由策略规则组成,每条规则 对同一访问请求给予允许、拒绝的评估结果。按照评估结果,策略可被定义成一 个二元组<RY,RN>,其中RY是对访问请求授予允许的规则集合,RN是授予拒绝的集 合,特别地,对于一个三值策略{Y,N,NA},不适用的评估结果{NA}可通过RY与 RN的交集推得。

根据属性布尔表达式的香农分解:任何一个属性实 体均可翻译成一个原子布尔表达式aT*v,*∈(=,<,≤,>,≥),作为一个属性约束。一 个策略集中含有有限个不同的原子布尔表达式,依次编码其中xi表示不同的属性约束,取为真或假。进而,一条策略规则就可以被抽象为通过逻 辑符号与“∧”和或“∨”连接的原子布尔表达式组成的一个复合布尔表达式。综上, 定义一条策略P用两集合表示<[S]Y,[S]N>,其中[S]Y为策略P对请求授予允许的复 合布尔表达式,中[S]N为策略P对请求授予拒绝的复合布尔表达式。

2.步骤二:对步骤一的策略进行基于BSset的逻辑转换

根据二进制序列和序列集合的定义,步骤一所得[S]Y和[S]N进一步转换成基 于二进制序列集合的逻辑形式。首先,在策略属性中,xi表示第i个属性约束; 根据属性布尔表达式的香农分解:若xi值为1表示属性约束xi取值为真;若xi值 为0表示属性约束xi取值为假。并且引入*元素,简单将其看作1∨0合并,对于 在某条规则中无需评估的原子布尔表达式,xi取值就为*。那么[S]Y和[S]N即转化 为,如{1*1*1,1**11*}这类形式。

其次,根据序列集合定义,其元素满足两两不相交,即s1∩s1=nul1,1≠1。 显然[S]Y和[S]N并不满足,因此将[S]Y和[S]N集合分别两两元素分离,即进行如下 操作:[S]Y=[S]YUφ,[S]N=[S]NUφ。

最后,分别去除[S]Y和[S]N集合之间的公共部分,即先计算[S]Y和[S]N的公共 部分[S]and=[S]Y∩[S]N,然后[S]Y和[S]N分别删去公共部分[S]Y=[S]Y-[S]and, [S]N=[S]N-[S]and  。

3.步骤三:对步骤二进行语义检查和移位化简

经过上述步骤之后,仍然存在布尔表达式本身符合访问控制策略要求,但是 实际语义产生矛盾。如存在布尔表达式为role=manager∧role=staff∧...,但实际上一 个人的角色不能同时为经理和员工,因此产生了语义的冲突,需要进行删除。具 体操作可以将限制约束转换为布尔表达式组,用条件判断语句检测并删除冲突路 径。

对于n个原子布尔表达式,其编码顺序有2n种,MTBDD策略树的构造是根 据给定的某种编码顺序,无法保证其为最简形式。因此造成了大量的冗余规则。 基于二进制序列集合的策略建模和策略树建模方式虽都受限于编 码顺序,但是作为二进制序列从x0x1...xn-1到xn-1x0x1...xn-2,只需向右循环移动1bit 位,如此往复n次就相当于不断在改变编码顺序。并且对于形如x0...xk...xn-1和 的两条路径的合并,也可被简化为1∨0=*的合并问题。因此,在基于 二进制序列集合策略建模的基础上,在策略集合中通过循环移动bit位,每次寻找 形如Si=x0x1...xn-20和Sj=x0x1...xn-21的可合并序列,并合并为x0x1...xn-2*,从而化 为最简形式。

例如可以使用如下移位合并算法进行化简,具体操作如下:

第一步对初始二进制序列集合[S],取得集合长度n([S]中所含二进制序列 个数)。

第二步遍历集合[S]中的每个元素Si,寻找可与Si合并元素Sj,若Sj存在, 则按规则合并Sm=combine(Si,Sj)并将Sm加入结果集合[Sresult];若Sj不存在,则 直接将Si加入结果集合[Sresult]。

第三步[Sresult]中所有二进制序列向右1bit位旋转,令[Sresult]→[S]。

第四步循环次数count++,若count达到集合长度n次,则转第五步,若没达 到,则转第二步。

第五步输出移位化简结果[S]。

合成语义算子推导(CA)是指用逻辑算子抽象合成语义。具体步骤如下:

4.步骤四:推导基于BSset的合成语义算子

根据实际的策略合成安全需求,组合基于BSset集合运算设计的5 个基础语义算子推导出满足合成期望的合成语义算子,即可用代 数表达式刻画不同的基于属性运算的策略合成语义。将推导出的合成语义算子作 为合成演算(PC)模块的另一个输入。

基于BSset的策略逻辑合成(PC)是实现演算部分。具体的步骤如下:

5.步骤五:根据步骤三和步骤四,用逻辑表达式刻画合成结构

根据步骤三的结果,基于BSset的逻辑建模策略,和步骤四的结果,根据安 全需求推导出的合成语义算子,将多策略的合成方式转换为合成逻辑表达式。如 某种合成方式转换为:

6.步骤六:对步骤五实现合成演算

根据步骤五的逻辑表达式,对合成空间计算合成结果,实现合成演算,并且 对每次合并的结果进行语义冲突检测,去除矛盾的二进制序列,再进行移位合并 化简,输出策略合成布尔表达式。最后,二进制形式的策略翻译成语义描述形式 的策略,即对于PC的Permit策略,只需要将所有PC.[S]Y翻译得到的表达式用∨连 接,对于PC的Deny策略,只需要将所有PC.[S]N翻译得到的表达式用∨连接,就 可以得到策略合成的最终结果。

基于上述描述,给出以下应用实例说明:

1.策略面向属性层分解

P1.Rule11:role=manager,act=read or update,time=[8am,6pm],effect=Permit. P1.Rule12:role=staff,act=read,effect=Deny.

P2.Rule21:role=manager or staff,act=read,time=[8am,8pm],effect=Permit. P2.Rule22:role=staff,act=update,effect=Deny.

将原子布尔表达式进行编码如下:

  X0  X1  X2  X3  X4  X5  role=manager   role=staff   act=read   act=update   8≤t≤18   18≤t≤20

用基于约束的布尔表达式来定义上述两条策略:

[P1.Y]={role=manager∧(act=read∨act=update)∧8≤t≤18}

[P1.N]={role=staff∧act=read}

[P2.Y]={(role=manager∨role=staff)∧act=read∧8≤t≤20}

[P2.N]={role=staff∧act=update}

[P1.N]={X1∧X2}

[P2.Y]={(X0∨X1)∧X2∧(X4∨X5)}

[P2.N]={X1∧X3}

[P1.Y]={(X2∧X2∧X4)∨(X0∧X3∧X4)}

[P1.N]={X1∧X2}

[P2.Y]={(X0∧X2∧X4)∨(X1∧X2∧X4)∨(X0∧X2∧X5)∨(X1∧X2∧X5)}

[P2.N]={X1∧X3}

2.策略基于BSset逻辑转换

P1.[S]Y={1*1*1*,1**11*}

P1.[S]N={*11***}

P2.[S]Y={1*1*1*,*11*1*,1*1**1,*11**1}

P2.[S]N={*1*1**}

P1.[S]Y=P1.[S]Y Uφ={1*1*1*,1*011*}

P1.[S]N=P1.[S]NUφ={*11***}

P2.[S]Y=P2.[S]YUφ={1*1*1*,011*1*,1*1*01,011*01}

P2.[S]N=P2.[S]NUφ={*1*1**}

P1.[S]and=P1.[S]Y∩P1.[S]N={111*1*}

P1.[S]Y=P1.[S]Y-P1.[S]and={101*1*,1*011*}

P1.[S]N=P1.[S]N-P1.[S]and={011***,111*0*}

P2.[S]and=P2.[S]Y∩P2.[S]N={11111*,111101}

P2.[S]Y=P2.[S]Y-P2.[S]and={101*1*,101*01,11101*,111001,011*1*,011*01}

P2.[S]N=P2.[S]N-P2.[S]and={01*1**,1101**,111100}

3.语义检查和移位化简

一个人的role不可以既是manager又是staff,即P2.[S]Y的111001,P2.[S]N的 1101**等等出现语义冲突,删除冲突元素后为:

P1.[S ]Y={101*1*,1*011*}

P1.[S]N={011***}

P2.[S]Y={101*1*,101*01,011*1*,011*01}

P2.[S]N={01*1**}

这里的移位化简为其自身,即此实例策略建模过程中不存在冗余路径。

4.根据安全需求,推导合成语义算子

组合基于BSset集合运算<U,∩,-,->设计的5个基础语义算子<PY,PN,+,&,->, 根据实际的安全需求,推导出满足合成期望的合成语义算子。

5.用逻辑表达式刻画合成方式,对形式化策略空间计算合成结果

如求PC=P1+P2,步骤如下:

1)PC.[S]Y=P1.[S]Y UP2.[S]Y

={101*1*,1*011*}U{101*1*,101*01,011*1*,011*01}

={101*1*,1*011*,101*01,011*1*,011*01}

2)P1.[S]N-P2.[S]Y={011***}-{101*1*,101*01,011*1*,011*01}

={011*00}

P2.[S]N-P1.[S]Y={01*1**}-{101*1*,1*011*}

={01*1**}

PC.[S]N=(P1.[S]N-P2.[S]Y)U(P2.[S]N-P1.[S]Y)

={011*00,0101**,01111*,011101}

∴PC=P1+P2的结果为:

PC.[S]Y={101*1*,1*011*,101*01,011*1*,011*01}

PC.[S]N={011*00,0101**,01111*,011101}

6.对合并结果进行语义检测以及移位化简,将合成结果布尔表达式翻译成原 意

首先,经过语义冲突检测得到,

PC.[S]Y={101*1*,1*011*,101*01,011*1*,011*01}

PC.[S]N={011*00,0101**}

然后,进行“旋转合并”,可以看到二进制序列集合不变。

最后,每个二进制序列得到如下翻译:

PC.[S]Y

PC.[S]N

对于PC的Permit策略,只需要将所有PC.[S]Y翻译得到的表达式用∨连接,对 于PC的Deny策略,只需要将所有PC.[S]N翻译得到的表达式用∨连接,就可以得 到策略合成的最终结果。

虽然移位合并操作在上述实例里没有明显的效果,但是在实际大规模策略合成 以及规则集多策略中有很重要的作用,下面简述一个移位操作的例子。

[S]={101*1,101*0,111*1,111*0,0*001,1*001}

最后,[S]={1*1**,**001}

从上面的例子中可以看出,原先的[S]集合的长度为6,也就是说它所对应的布 尔表达式还有6个析取分量,而进行“移位合并”之后,[S]集合的长度减小为2, 更重要的是,在转换的过程中,[S]集合所代表的布尔表达式的语义并没有改变。

本发明采用二进制序列集合元素对基于属性的访问控制策略进行逻辑建模, 这种建模方式可被计算机程序直接实现。与Bonatti等基于逻辑的代数模型相比, 本发明自动解决了逻辑程序转换和评估技术限制,与MTBDD策略树的策略代数 相比,消去了对于布尔表达式评估顺序依赖的特性同时减小了系统规模,并且扩 展了传统的合成语义算子,可支持更广泛的合成语义和实际应用。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限 于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形 或修改,这并不影响本发明的实质内容。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号