我是WSO2 IS的用户, 我需要在我的WSO2 IS中添加自定义RuleCombining算法。 我正在使用这个example balana,当我创建this时 WSO2中的策略是我获得此错误:不支持的权利策略。无法解析策略,这是WSO2 IS的日志:
ERROR {org.wso2.carbon.identity.entitlement.pap.PAPPolicyReader} - Error while parsing the policy org.wso2.balana.ParsingException: Error parsing combining algorithm in Policy
Caused by: org.wso2.balana.UnknownIdentifierException: unknown combining algId: urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:highest-effect
at org.wso2.balana.combine.BaseCombiningAlgFactory.createAlgorithm(BaseCombiningAlgFactory.java:138)
at org.wso2.balana.AbstractPolicy.<init>(AbstractPolicy.java:237)
编辑:
感谢David的回答,
在同一个示例页面中,我们可以看到我们可以使用自定义函数,算法和数据类型扩展WSO2 IS,添加balana配置文件:
但是,如果要问WSO2 Identity Server初始化 Balana通过阅读配置文件。你可以通过创建一个新的来做到这一点 配置文件名为“balana-config.xml”下的 / repository / conf / security目录。举个例子,说你 想要添加新规则组合算法以使用WSO2身份 服务器授权引擎。然后你可以按照同样的方式 用Balana配置它。有关更多信息,请参阅此博客文章 细节。但是,我想总结一下要遵循的步骤。
但是按照这些步骤后,它似乎无法正常工作。
我们将不胜感激为您解决这个问题。
我正在考虑将公理化作为XACML引擎,但似乎很难获得用于测试或初始目的的版本。你能否就这个问题给我任何启示?
答案 0 :(得分:1)
使用自定义组合算法扩展WSO2 IS是不可能的。您链接到州的帖子:
WSO2 Identity Server不处理那些因为大多数 应用程序使用标准的函数集,属性和组合 XACML规范中定义的算法。因此,通过 默认情况下,WSO2 Identity Server使用初始化Balana实例 默认标准配置。
如果您想使用组合算法,请改用Axiomatics Policy Server。
旁注:为什么要组合算法?您应该尝试坚持使用标准组合算法。 urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:highest-effect
做了什么?此外,您不能将OASIS命名空间用于组合算法。