约束一致性检查的通用算法
在流程相关的基于角色的访问控制(RBAC)模型中,确保模型的一致性至关重要,这不仅涉及设计阶段的约束定义和分配关系检查,还包括运行时任务实例分配的一致性检查。下面将详细介绍一系列用于一致性检查的通用算法和过程。
1. 设计时一致性算法
1.1 约束定义检查
1.1.1 检查是否允许在两个任务类型上定义新的SME约束
Algorithm 1. Check if it is allowed to define a (new) SME constraint on two task types.
Input: task1, task2 ∈TT
1: if task1 == task2 then return false
2: if task1 ∈dme(task2) then return false
3: if task1 ∈rbt(task2) then return false
4: if task1 ∈sbt(task2) then return false
5: if ∃r ∈R | r ∈town(task1) ∧r ∈town(task2)
6:
then return false
7: if ∃s ∈S | r1 ∈rown(s) ∧r2 ∈rown(s) ∧
8:
r1 ∈town(task1) ∧r2 ∈town(task2)
9:
then return false
10: return true
该算法会对多个条件进行检查:
- 任务类型不能与自身互斥(第1行)。
- 检查是否满足特定的一致性
流程RBAC模型约束一致性检查通用算法
超级会员免费看
订阅专栏 解锁全文
1339

被折叠的 条评论
为什么被折叠?



