XACML实现

时间:2013-01-29 19:18:26

标签: java authorization access-control xacml authzforce

我是XACML政策的新手。您能指定我如何实施XACML策略吗?我尝试过不同的API。但对于我的项目,我需要实现XACML评估引擎。那么,你能帮我提供实施细节吗?哪种语言最适合实施评估引擎。

先谢谢。

4 个答案:

答案 0 :(得分:8)

我想,实施XACML评估引擎并非易事。您需要在https://www.oasis-open.org/committees/xacml/处查看XACML规范并根据它进行实施。如果您能找到已经实现的基于XACML的授权引擎,那就更好了。

“Balana”是XACML实现之一(部分XACML 3.0)  版本)这是基于java的开源项目。

因此,您可以自由使用它,您可以从https://svn.wso2.org/repos/wso2/trunk/commons/balana/找到源核心。

此外,如果你真的想要实现一个新的XACML引擎,你可以通过Balana源代码,并可以获得一些想法实现或重用它的源代码。有关Balana和XACML的更多详细信息,请参阅http://xacmlinfo.com/上的博客文章。我想,java会很容易处理,因为你需要使用更多的XML东西。

答案 1 :(得分:6)

您想要查看当前存在的XACML实现。

以下是今天可用的所有开源实现:

以下是供应商实施:

  • Axiomatics Policy Server:完全XACML 2.0和XACML 3.0实现 - 也证明了一致性(这是XACML 3.0编辑器的工作原理)。实施证明:https://lists.oasis-open.org/archives/xacml/201010/msg00002.html
  • IBM DataPower:包含XACML 2.0引擎
  • Quest:通过收购Bitkoo,他们也获得了XACML支持。
  • 甲骨文

上面引用的所有开源实现都是Java。 Axiomatics和Bitkoo也提供了C#引擎。

如果您想自己动手,则需要使用JAXB从XACML模式生成XACML对象。但是,这不会给你评估逻辑。

答案 2 :(得分:1)

不确定“评价”是什么意思。您是否有需要评估的访问请求以确定是否授予访问权限?

为此,我能够快速运行WSO2 Identity Server,编写XACML 3.0策略并检查访问控制请求。

服务器:http://wso2.com/products/identity-server/ 帮助我的博客:http://xacmlinfo.com/2012/06/13/pdp-pep-communication-wso2is/

答案 3 :(得分:0)

就“策略编辑”而言,有一个方便的工具可以使用:ALFA(https://www.axiomatics.com/blog/how-can-i-use-policy-references-in-alfa/)。 这是一个Eclipse插件,使您可以将策略转换为XACML格式。