我将 XACML 与多个策略集和策略一起使用。这些策略共享相同的变量,我希望能够在某种“全局”字典中定义它们。虽然这似乎是相当基本的要求,但我找不到任何有关此类选项的文档、示例或讨论。有什么办法吗?
谢谢。
我将 XACML 与多个策略集和策略一起使用。这些策略共享相同的变量,我希望能够在某种“全局”字典中定义它们。虽然这似乎是相当基本的要求,但我找不到任何有关此类选项的文档、示例或讨论。有什么办法吗?
谢谢。
XACML 为 OOTB 提供的唯一功能是变量定义和变量引用的概念。但是,它并不能完全满足您的需求。
对于初学者,变量定义是全局定义的,但只能在规则内部使用。您不能在目标内部使用它们。变量定义由 XACML 表达式组成,即可以在条件中表达的任何内容(如字符串、函数等)。
变量定义在策略中定义,其可见性仅限于该策略。这限制了它们的用处。
如果您想要一个跨策略变量/常量,则必须在 XACML 之外执行此操作,定义您的策略,然后对它们进行后处理以用您的值替换占位符。如果您直接在 XML 上工作,那么您可以使用 XSLT 来做到这一点。否则,它将在很大程度上取决于您使用的 IDE。