您能否解释一下我如何使用提供的 XACML 列表中的转换函数来创建策略规则中的条件。比如那个函数。
urn:oasis:names:tc:xacml:3.0:function:integer-from-string
我正在使用 AuthzForce,我的Apply
containsAttributeValue
和AttributeDesignator
. 我的 PDP 请求仅包含字符串类型,我想在策略中所需的类型中进行转换。
我试图这样做,但我得到了error-message - policyset is invalid
.
<Condition>
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:and">
<Apply FunctionId="urn:oasis:names:tc:xacml:3.0:function:all-of">
<Function FunctionId="urn:oasis:names:tc:xacml:1.0:function:integer-greater-than-or-equal"/>
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#integer">100</AttributeValue>
<Apply FunctionId="urn:oasis:names:tc:xacml:3.0:function:integer-from-string">
<AttributeDesignator
Category="urn:oasis:names:tc:xacml:3.0:attribute-category:testvalue"
AttributeId="urn:oasis:names:tc:xacml:1.0:testvalue-category:strvalue"
DataType="http://www.w3.org/2001/XMLSchema#string"
MustBePresent="true"/>
</Apply>
</Apply>
</Apply>
</Condition>