第四章 基于覆盖粒计算的关联冲突分析
冲突关系这个问题,因为覆盖本质上具有对称性。
设U是所有客体,C是U的一个覆盖,?K?C,K中的客体是相互冲突的。这样的覆盖C被称为利益冲突族,以区分文献[98]里的模型中的利益冲突类,它是划分。在这个覆盖下,x?U,x的敌人定义为conflict(x)??{K?C|x?K}?{x}。如果一个主体已经访问过客体x,那么这个主体不能访问conflict(x)中的任何一个客体。相应地,x的同盟集定义为ally(x)?U?conflict(x)。作为U上的二元关系,IAR可以定义为IAR?{(x,y)|y?ally(x)}。
评论4.2 在覆盖模型中,数据集的访问权或者需求权可以如下这样授予: 假设一个主体已经访问或需求了的客体是x1,...,xm,而这个主体要求访问或需求客体o。只有在客体o不在conflict(x1)?...?conflict(xm)中,才授予这个主体访问或需求o的权力。换句话说,只有在客体o在ally(x1)?...?ally(xm)中,这个主体才能访问或需求
o。
例4.1 假设一个顾问公司CONSULT为下列公司提供服务:U?{A,B,C,D,E,F,G},这些被服务公司之间的利益冲突关系见下表4.1,利益冲突族为C?{K1,K2,K3,K4,K5},其中K1?{A,C,E},K2?{C,D},K3?{A,F},K4?{C,G},K5?{B,D,E},那么每个公司的敌人集(conflict(x))和同盟集(ally(x))如下:
conflict(A)?{C,E,F},conflict(B)?{D,E},conflict(C)?{A,D,E,G},
conflict(D)?{B,C,E},conflict(E)?{A,B,C,D},conflict(F)?{A},conflict(G)?{C};ally(A)?{A,B,D,G},ally(B)?{A,B,C,F,G},ally(C)?{B,C,F},ally(D)?{A,D,F,G},ally(E)?{E,F,G},ally(F)?{B,C,D,E,F,G},ally(G)?{A,B,D,E,F,G}。
例4.2 举例说明长城安全策略。
假设利益冲突关系如例4.1所示。长城安全策略将是这样的:起初,CONSULT公司的一个工作人员可以访问或需求任何一个公司的数据集,例如这个工作人员访问或需求了公司A,那么他不能访问公司C、E、和F,因为这些公司都在conflict(A)中。但他可以访问或需求ally(A)中B、D和G公司的数据集。所以,如果他再选择访问
28
第四章 基于覆盖粒计算的关联冲突分析
或需求公司D后,他就不允许访问conflict(A)?conflict(D)中的B、C、E和F,但他仍可以访问或需求ally(A)?ally(D)中的A、D和G公司,以此类推下去。
综合考虑,我们将选择比较合适的覆盖冲突模型应用到关联冲突的分析和建模当中去。
表4.1 公司的利益冲突关系
company A A A B B C C C C D D D E E E E F G company C E F D E A D E G B C E A B C D A C 4.4粒计算视角下的关联冲突
冲突存在于不同的等级层次当中[106]。引起冲突的原因是为了某种利益对象之间相互作用而导致的。当有外部因素作用于这些对象上后,冲突就会发生,因为处于冲突中的对象本身并不能导致冲突的发生。换句话说,当冲突发生后,外部因素和这些对象之间就建立了一种关系,我们称这种关系为一个冲突过程或一个冲突事件。我们知道,粒计算是一门研究基于多层次粒结构的思维方法、问题求解方法、信息处理模式及其相关理论、技术和工具的学科。它覆盖了所有和粒度相关的理论、方法和技术。如果我们将冲突看成是有着不同结构层次的粒化过程的话,将会有一些非常有意思的发现,也就是说有这样一些情况,单个冲突事件或过程中事实上包含了两个或两个以上的冲突关系。
29
第四章 基于覆盖粒计算的关联冲突分析
4.4.1关联冲突定义
图4.1 关联冲突
受粒计算思想理论的启发,我们引入了关联冲突(如图4.1所示),在给出概念之前先对这个流程图做一下详细的解释:
这个图可以被看作是一个冲突过程或事件,在这个过程或事件当中有两个分别代表着不同冲突层次的关系。一个是处于第一层次上的主动关系,用来表示agents和冲突对象集之间的关系,其中agents是主体而冲突对象是客体,主动关系可以随agents的改变而改变,例如agents的个数、范围和顺序等,agents在这个关系中是外部因素或触发源,当agents作用于这些冲突对象后,利益冲突就会发生,即关系就会建立(如例4.2中一个工作人员访问了需要访问的公司的数据库后);对于所有的agents来说,另一个关系是处于第二层次上的隐含关系,它是一个固定的不能被改变的关系,用来表示冲突对象集和隐含的冲突对象集之间的关系,就像一个工程需要一些固定的不变的程序或资源一样,每个冲突对象也固定不变的需要一些隐含的冲突对象的支持,因此这个关系是不能改变的,它是固定,也就是说冲突对象集和隐含的冲突对象集之间的关系本来就有的,另外,二者都是冲突源,相对于隐含的冲突对象集来说,冲突对象集是外部因素,但相对于agents来说,隐含的冲突对象集就是隐含着的了。 评论4.3 正如图4.1所示,我们称这个过程或事件为关联冲突,它是由两个独特的关系连接着一个触发源、一个冲突对象集源和一个隐含的冲突对象集源组成。因此,我们也可以定义多联冲突,它是由至少三个关系连接一个触发源、一个冲突对象集源和至少两个以上的隐含冲突对象集源组成,隐含的冲突对象集之间的关系可以如上面描述的隐含关系。
4.4.2关联冲突分析建模
为了能尽可能全面的分析关联冲突的各种情况,我们将以服务——资源为例,不考虑相关的应用背景,意图是为了帮助了解关联冲突的概念和构建关联冲突的分析模型。而进一步的相关应用背景的分析将在4.5节进行讨论。
30
第四章 基于覆盖粒计算的关联冲突分析
表4.2 服务的利益冲突关系
表4.3 资源的利益冲突关系
service A A A B B C C C C D D E E E E F G service B C E A C A B D E C E A C D G G F
resource a a a a b c c c d d d d d d resource d f g h f d e g a c e f g h resource e e e f f f f g g g g g h h resource c d g a b d g a c d e f a d 为了方便起见,我们将表4.2和4.3的表头用相应的英文表示。
假设:有七种服务(冲突对象集),U1?{A,B,C,D,E,F,G},这七种服务之间的
U2?{a,b,c,d,e,f,g,h} 利益冲突关系如表4.2所示;有八种资源(隐含的冲突对象集),
,这八种资源的利益冲突关系如表4.3所示。
因此,在表4.2中,每一个服务的冲突集是conflict(A)?{B,C,E},
31
第四章 基于覆盖粒计算的关联冲突分析
conflict(B)?{A,C},conflict(C)?{A,B,D,E},conflict(D)?{C,E},conflict(E)?{A,C,D,G},conflict(F)?{G},conflict(G)?{E,F}和同盟集是all(y)?A{,AD,F,,Gally(B)?{B,D,E,F,G},ally(C)?{C,F,G},ally(D)?{A,B,D,F,G},ally(E)?{B,E,F},ally(F)?{A,B,C,D,E,F},ally(G)?{A,B,C,D,G}。
在表4.3中,每一个资源的冲突集是conflict(a)?{d,f,g,h},conflict(b)?{f},
conflict(c)?{d,e,g},conflict(d)?{a,c,e,f,g,h},conflict(e)?{c,d,g},
conflict(f)?{a,b,d,g},conflict(g)?{a,c,d,e,f},conflict(h)?{a,d}和同盟集是ally(c)?{a,b,c,f,h},ally(d)?{b,d},ally(a)?{a,b,c,e},ally(b)?{a,b,c,d,e,g,h},
ally(e)?{a,b,e,f,h},ally(f)?{c,e,f,h},ally(g)?{b,g,h},ally(h)?{b,c,e,f,g,h}。
服务集和资源集都是冲突源,所以他们的关系(隐含的固有不变的关系)是固有的不变的。我们假定他们之间的关系是A?{a,c},B?{g,a,h},C?{a,b},
D?{d,f},E?{c,e,b,g},F?{d},G?{h,f}。因此,对于给定的冲突源来说,关
系是已经确定了的,不能改变且不受任何外界因素的影响。
现在有五个agents(外部因素或触发源)作用于(访问或需求)这些服务。这样二者之间的关系(主动关系)已经建立了,假定他们之间的关系是agent(1)?{D,A},
agent(2)?{A,G},agent(3)?{E,B,D},agent(4)?{C},agent(5)?{D,F,C,G},
因为agents是外部因素,所以二者之间的关系可以随agents的个数、优先级和访问或需求范围等因素而改变。
为了让关联冲突分析的模型更具有适应性和普遍性,我们做如下假设(外部条件):第一层次的冲突源中每个服务的优先级是相同的;第二层次的冲突源中每一个资源的优先级也是相同的并且每个资源同一时间可以最多使用三次,即每个资源同一时间可以最多提供给三个服务使用(每个资源的数量在不同的应用背景下可以是不同的或者是互不相同的);另外,访问或需求服务的每个agent的优先级可能不同,优先级向量暂设为x?(215,415,615,115,215)(可以改变),其中
1?p?|agent|且|x|?|agent|,对应着每一个
|agent|?p?1x(p)?1,
agent的优先级。其他的一些外部条件将
在4.5部分进行讨论。
最后,根据覆盖冲突分析模型的授予的访问权和需求权策略,我们可以构建关联
32