1.一种基于多粒度决策系统的最优客体粒度确定方法,其特征在于:包括以下步骤:A:判定待处理的访问控制系统是新建的访问控制系统还是待优化的访问控制系统,若为新建的访问控制系统,则进入步骤B;若为待优化的访问控制系统,则进入步骤F;
B:根据新建的访问控制系统的实际使用需求,判断数据库中是否存储有与新建的访问控制系统一致的多粒度层次的客体粒度决策模型,若数据库中不存在一致的多粒度层次的客体粒度决策模型,则进入步骤C;若数据库中存储有一致的多粒度层次的客体粒度决策模型,则进入步骤E;
C:在单粒度层次的客体粒度决策模型的基础上,通过对访问客体的访问权限取不同的粒度层次,在访问控制系统中构建多粒度层次的客体粒度决策模型;然后进入步骤D;
D:根据步骤C中所构建的多粒度层次的客体粒度选择模型中的粒度层数,若粒度层数小于等于三层,则计算并使用全局最优客体粒度作为确定的最优客体粒度,若粒度层数大于三层,则计算并使用局部最优客体粒度的集合作为确定的最优客体粒度;然后将步骤C中所构建的多粒度层次的客体粒度选择模型及确定的最优客体粒度存储至数据库中;
E:在数据库中调取与新建的访问控制系统一致的多粒度层次的客体粒度决策模型,对访问客体做约简操作,根据新建的访问控制系统的实际使用需求,选取部分访问主体,利用数据库中调取的多粒度层次的客体粒度决策模型,得到针对访问客体的最优客体粒度;
F:分别计算出待优化的访问控制系统的全局最优客体粒度和所有客体的局部最优客体粒度的集合,然后计算出全局最优客体粒度的偏差率p和所有客体的局部最优客体粒度的偏差率的平均值q,最后通过比较全局最优客体粒度的偏差率p和所有客体的局部最优客体粒度的偏差率的平均值q的大小,若p≥q,选择计算得到的全局最优客体粒度作为确定的最优客体粒度,若p<q,选择计算得到的局部最优客体粒度的集合作为确定的最优客体粒度。
2.根据权利要求1所述的基于多粒度决策系统的最优客体粒度确定方法,其特征在于,所述的步骤C中:单粒度层次的客体粒度决策模型为一个三元组OGDM=(S{r},O,J);其中,S 为访问主体,O为访问客体,J为访问权限,r为访问结果, 设S={x1,x2,...,xn},O={a1,a2,...,am},其中,x1,x2,…,xn分别表示第1个访问主体、第2个访问主体、…、第n访问主体,a1,a2,...,am分别表示第1个访问客体、第2个访问客体、…、第m个访问客体;
访问主体S在访问权限J上根据不同的尺度取不同的观测值,即可得到多粒度层次的客k体粒度决策模型OGDM ,其中k表示层数,包含了所能构造的所有粒度层;设多粒度层次的客k体粒度决策模型OGDM 构造的粒度层次数是I,由细粒度向粗粒度逐层构造,访问主体S={x1,x2,...,xn},每一层的访问客体集记为 1≤k≤I,分别表示第k层客体粒度决策模型中的第1个访问客体、第2个访问客体、…、第m个访问客k k体,即得到了多粒度层次的客体粒度决策模型OGDM=(S{r},O,J)。
3.根据权利要求2所述的基于多粒度决策系统的最优客体粒度确定方法,其特征在于,所述的步骤D中:全局最优客体粒度的确定方法为:
k
D11:在多粒度层次的客体粒度决策模型OGDM中的每一层上,把各个访问客体按访问主体进行划分,假设访问客体 下的访问主体x1,x2,…,xn和访问客体 下的访问主体x1,x2,…,xn一一对应相同,则把 和 划分为一类,以此类推,记录划分结果并得到每一层划分结果的集合,记为RO;
k
D12:在多粒度层次的客体粒度决策模型OGDM中的每一层上,把各个访问客体按访问结果进行划分,假设访问客体 和 允许被访问,访问客体 和 不允许被访问,则按照访问结果进行划分,将 和 划分为一类,将 和 划分为一类,依次类推,记录划分k结果并得到所有访问客体a在每一层上的集合,记为Rr;
D13:比较划分结果RO和划分结果Rr,如果 则判断此层决策系统是协调的;如果则判断此层决策系统是不协调;首次出现不协调的粒度层数的上一层即为全局最优客体粒度;RO表示访问客体按照访问主体划分所得到的集合,Rr表示访问客体按照权限结果划分所得到的集合;
局部最优客体粒度的确定方法为:
k
D21:在多粒度层次的客体粒度决策模型OGDM中的每一层上,把各个访问客体按访问主体进行划分,假设访问客体 下的访问主体x1,x2,…,xn和访问客体a2下的访问主体x1,x2,…,xn一一对应相同,则把 和 划分为一类,以此类推,记录划分结果并得到各个访问k客体a所在的集合,记为 k表示层数;
k
D22:在多粒度层次的客体粒度决策模型OGDM中的每一层上,把各个访问客体按访问结果进行划分,假设访问客体 和 允许被访问,访问客体 和 不允许被访问,则按照访问结果进行划分,将 和 划分为一类,将 和 划分为一类,依次类推,记录划k分结果并得到各个访问客体a所在的集合,记为[a]r;
k k
D23:比较步骤2中各个访问客体a所在集合[a]r是否包含步骤1中各个访问客体a所在k集合 若 则判断该访问客体a所在层的决策系统是协调的;若
k
则判断该访问客体a所在层的决策系统是不协调;首次出现不协调的粒度层数的上一层即k为访问客体a 的局部最优客体粒度,即 且. 时,第k层粒度是关于访k
问客体a的局部最优客体粒度;并由此得到所有访问客体的局部最优客体粒度的集合。
4.根据权利要求3所述的基于多粒度决策系统的最优客体粒度确定方法,其特征在于,所述的步骤E中:k k
在多粒度层次的客体粒度决策模型OGDM =(S{r},O ,J)中,给定 若 且k k
对于任意 不成立,则称B 是多粒度层次的客体粒度决策模型OGDMk k
=(S{r},O ,J)的一个约简,其中 表示访问客体按照部分访问客体B 划分所得到的集k k合,Rr表示访问客体按照权限划分所得到集合,b表示部分访问主体B中的一个或多个访问k k客体, 是指访问客体B中去除主体b的另一部分主体的集合。
5.根据权利要求4所述的基于多粒度决策系统的最优客体粒度确定方法,其特征在于,所述的步骤F包括以下具体步骤:F1:根据步骤D计算得出待优化的访问控制系统的全局最优客体粒度和所有客体的局部最优客体粒度的集合;
F2:根据下述公式计算出待优化的访问控制系统的全局最优客体粒度的偏差率记为p,并计算出所有客体的局部最优客体粒度的偏差率然后取平均值记为q;
当 时,偏差率为 当 时,偏差率为 其中,N为步骤C中所构建的多粒度层次的客体粒度决策模型总共的粒度层数,k为步骤D中所获取的最优客体粒度,i为待优化的访问控制系统正使用的客体粒度;
F3:若p≥q时,选择计算得到的待优化的访问控制系统的全局最优客体粒度作为确定的最优客体粒度,若p<q时,选择计算得到的待优化的访问控制系统的局部最优客体粒度的集合作为确定的最优客体粒度。
6.根据权利要求5所述的基于多粒度决策系统的最优客体粒度确定方法,其特征在于:所述的步骤F中,偏差率是指当前偏差值占最大偏差值的比例,偏差值为按照步骤D所获得的待优化的访问控制系统的最优客体粒度与待优化的访问控制系统正使用的客体粒度存在的偏差大小,偏差值为 N为步骤C中所构建的多粒度层次的客体粒度决策模型总共的粒度层数,k为步骤D中所获取的最优客体粒度,i为待优化的访问控制系统正使用的客体粒度,当前偏差值指正使用的客体粒度与按照步骤D所获得的待优化的访问控制系统的最优客体粒度的差值,最大偏差值指当前偏差值可取的最大值;当 时,偏差率为 当时,偏差率为 其中,偏差率的取值范围为[0,1]。