XML-BB模型:保护XML文档中的关系
1. 现有访问控制模型的问题
在处理XML文档的访问控制时,一些现有模型存在表达访问控制需求的困难。例如,使用最后匹配原则时,可能会导致不符合预期的访问权限分配。以John和Mary的访问控制需求为例,某些模型无法准确表达他们的访问权限。
具体来说,在一个示例中,根据某些规则组合,John最终被允许读取每个Hospital节点及其子节点,这显然不是我们期望的结果。同样,对于Mary的访问控制需求,这些模型也无法有效表达。类似的问题在应用其他访问控制模型时也会出现。
2. 新的解决方案:引入Block概念
为了解决上述问题,我们提出使用新的Block概念来指定XML文档的访问控制模型。通过这种方式,John和Mary的访问控制需求可以用不同的块来建模:
– BEGIN BLOCK HOSPITAL
GRANT read /P ON /Hospital
TO John, Mary
REVOKE read /P ON
/Hospital/Department/Patient
TO John, Mary
END BLOCK HOSPITAL
– BEGIN BLOCK PATIENT
GRANT read ON /Hospital TO Mary
GRANT read /P /S ON
/Hospital/Department/Patient
TO John, Mary
END BLOCK PATIENT
在块内部,我们同时应用累积原则和连接性原则;而在不同块之间,仅应用累积原则,不应用连接性原则