以编程方式生成XACML 2.0策略?

时间:2014-04-05 20:41:39

标签: jaxb xacml xacml3 xacml2

我想以编程方式生成XACML 2.0策略。有没有办法做到这一点或将一组XACML 3.0策略转换为XACML 2.0策略?

由于

1 个答案:

答案 0 :(得分:1)

是的,是的。

首先,您能以编程方式生成XACML 2.0策略吗?是的你可以。这同样适用于XACML 3.0或任何基于模式的XML内容。在Java中这样做的方法是使用JAXB。

JAXB将采用您编写的XML Schema并创建一组与该模式对应的类。 JAXB实用程序将创建用于操作该XML的数据结构层次结构。 (引自What is JAXB and why would I use it?)。

只需向JAXB提供XACML 2.0和XACML 3.0模式,您将获得一组可用于以编程方式创建XACML策略,请求和响应的类。

关于转换,有几种可能的方法:

  • 使用JAXB XACML 2.0对象自行实现逻辑并转换为JAXB XACML 3.0对象
  • 编写XSLT为您完成。 XSLT是一种将采用XML模式(或模式实例)并将该模式​​转换为几乎任何东西(网页,PDF,当然还有XML)的语言。 XSLT非常适合从XACML 2.0转换为3.0。
  • 让XML工具为您做繁重的工作。这个空间中最好的工具(将生成代码和XSLT)是Altova的XML套件(我不隶属于他们)。

HTH, 大卫。