2014-10-16 73 views
0

在过去一周中,我一直试图在wso2IdendityServer 4.5.0版本的policyset内定义policy如何在XACML策略集内定义XACML策略

  1. 我能够用policysetpolicyset编辑wso2IdentidyServer 4.5.0还能够添加在policy创建,但问题是XML格式。

我产生POLICYSET这个样子(样本POLICYSET)

<PolicySet> 
    <Target> 
     ... 
    </Target> 
    <PolicyIdReference>simple1</PolicyIdReference> 
</PolicySet> 

问题

如果我们<PolicyIdReference>标签看,它采取的政策 “simple1” 的参考。但是,我的要求是不是只采用引用名称“simple1”,而应该用这个完整的策略来代替这个完整的策略。正如我在一些示例中所看到的。类似这样的:

<PolicySet> 
    <Target> 
    </Target> 
    <PolicyIdReference>urn:oasis:names:tc:xacml:2.0:example:policyid:3</PolicyIdReference> 
    <Policy PolicyId="urn:oasis:names:tc:xacml:2.0:example:policyid:2" RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides"> 
     <Description> 
    Policy for any medical record in the 
    http://www.med.example.com/schemas/record.xsd namespace 
    </Description> 
     <Target/> 
     <Rule RuleId="urn:oasis:names:tc:xacml:2.0:example:ruleid:1" Effect="Permit"/> 
     <Rule RuleId="urn:oasis:names:tc:xacml:2.0:example:ruleid:2" Effect="Permit"/> 
     <Rule RuleId="urn:oasis:names:tc:xacml:2.0:example:ruleid:4" Effect="Deny"/> 
    </Policy> 
</PolicySet> 

正如我们在标签中看到的那样,它在策略集中的添加策略。

所以我的问题是哪个版本的wso2 IdentityServer创建这种类型的策略集还使用了哪个版本的xacml模式版本?

感谢和问候 Deepali辛格

回答

0

WSO2 Identity Server的策略集编辑器只允许你定义策略设置为政策ID引用。因此,选定的政策将作为参考添加。如果您需要在策略集内添加完整策略,则可以使用XML视图编辑器来完成。基本上,您可以使用XML视图编辑创建的策略集,并将其添加到其中。这不会影响PDP运行时间。两个选项都可以工作。 这只是从编辑器UI创建策略集的限制。不过,我想这将得到改善,以在将来从策略集编辑器UI添加完成的策略。

+0

嗨阿塞拉,感谢您的宝贵答复。它帮助我解决了这个问题。希望能从你身边看到更多这样有价值的答复。 – 2014-10-16 12:29:54

0

您可以使用Eclipse的ALFA插件以及Axiomatics策略管理点来创建完全符合XACML 3.0的策略和策略,包括引用策略/策略集的选项或直接根据您的要求嵌入它们。

也就是说,在有意义时引用策略可能是一种更好的做法,因为它使策略生命周期变得更简单。