Balana和WSO2 Identity Server给出了不同的结果

Balana和WSO2 Identity Server给出了不同的结果,wso2,xacml,wso2is,xacml3,Wso2,Xacml,Wso2is,Xacml3,我有一个策略,当我在WSO2 Identity Server中运行请求时,我得到了预期的许可决定。但当我从中创建另一个示例策略时: 并再次发送相同的请求,我收到以下错误: <Response xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"> <Result> <Decision>Indeterminate</Decision> <Status>

我有一个策略,当我在WSO2 Identity Server中运行请求时,我得到了预期的许可决定。但当我从中创建另一个示例策略时:

并再次发送相同的请求,我收到以下错误:

<Response xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17">
   <Result>
      <Decision>Indeterminate</Decision>
      <Status>
        <StatusCode Value="urn:oasis:names:tc:xacml:1.0:status:missing-attribute"/>
        <StatusMessage>Couldn't find AttributeDesignator attribute</StatusMessage>
        <StatusDetail>
          <MissingAttributeDetail AttributeId="http://kmarket.com/id/role" DataType="http://www.w3.org/2001/XMLSchema#string" Category="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject" ></MissingAttributeDetail>
        </StatusDetail>
      </Status>
   </Result>
</Response>

不确定的
找不到AttributeDesignator属性
由于某些原因,正在针对此示例策略而不是我的原始策略运行请求。现在有趣的是,我下载了Balana(WSO2 Identity Server使用的XACML引擎)源代码,并使用策略和请求运行了测试,我得到了预期的许可。但当我在WSO2中做同样的事情时,它不起作用,我得到了不确定的错误。我尝试了“试用”功能和“使用PDP评估”,结果相同

这是我使用的请求,为什么它通过WSO2而不是Balana应用于示例策略而不是我的原始策略

<Request xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17" CombinedDecision="false" ReturnPolicyIdList="false">
    <Attributes Category="urn:oasis:names:tc:xacml:3.0:attribute-category:action">
        <Attribute AttributeId="urn:oasis:names:tc:xacml:1.0:action:action-id" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">write</AttributeValue>
        </Attribute>
    </Attributes>

    <Attributes Category="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject">
        <Attribute AttributeId="urn:samhsa:names:tc:company:1.0:subject:provider-npi" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">1548797430</AttributeValue>
        </Attribute>
    </Attributes>

    <Attributes Category="urn:oasis:names:tc:xacml:1.0:subject-category:recipient-subject">
        <Attribute AttributeId="urn:samhsa:names:tc:company:1.0:subject:provider-npi" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">1347570297</AttributeValue>
        </Attribute>
    </Attributes>

    <Attributes Category="urn:oasis:names:tc:xacml:1.0:subject-category:purpose-of-use">
        <Attribute AttributeId="urn:samhsa:names:tc:company:1.0:purpose-of-use-code" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">TREAT</AttributeValue>
        </Attribute>
    </Attributes>

    <Attributes Category="urn:oasis:names:tc:xacml:3.0:attribute-category:resource">
        <Attribute AttributeId="urn:oasis:names:tc:xacml:1.0:resource:resource-id" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string">@outlook.com</AttributeValue>
        </Attribute>
    </Attributes>

    <Attributes Category="urn:oasis:names:tc:xacml:3.0:attribute-category:environment">
        <Attribute AttributeId="urn:oasis:names:tc:xacml:1.0:environment:current-dateTime" IncludeInResult="false">
            <AttributeValue DataType="http://www.w3.org/2001/XMLSchema#dateTime">2013-07-12T00:00:00-04:00</AttributeValue>
        </Attribute>
    </Attributes>

</Request>

写
1548797430
1347570297
对待
@outlook.com
2013-07-12T00:00:00-04:00

根据错误,似乎没有配置属性查找器。我猜策略有一个名为“”的属性id,但它不在请求中,因此调用了属性查找器。您需要注册一个属性查找器来支持它。。。请从此处[1]查找示例属性查找器。在balana示例中,该属性查找器已经与示例一起出现


[1]

那么我需要注册属性id吗?如何从WSO2 Identity Server管理控制台注册?现在无法从管理控制台注册。。您需要编写一个PIP模块并将其插入。。请检查样品PIP