首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Balana和WSO2身份服务器给出不同的结果

Balana和WSO2身份服务器给出不同的结果
EN

Stack Overflow用户
提问于 2013-08-01 23:31:48
回答 1查看 894关注 0票数 0

我有一个策略,当我在WSO2标识服务器中运行一个请求时,我会得到预期的许可决定。但是,当我创建另一个示例策略时:

http://svn.wso2.org/repos/wso2/carbon/platform/tags/4.0.7/products/is/4.1.0/modules/distribution/conf/policies/sample-kmarket-sliver-policy.xml

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

代码语言:javascript
复制
<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>

由于某些原因,请求是针对此示例策略运行的,而不是我的原始策略。现在有趣的是,我下载了Balana (XACML,由WSO2身份服务器使用)源代码,并使用策略和我的请求运行测试,而且我正在获得预期的许可。但是当我在WSO2中做同样的事情时,它就不起作用了,而且我得到了不确定的错误。我尝试了“尝试它”和“用PDP进行评估”这两个功能,结果都是一样的。

下面是我使用的请求,为什么要通过WSO2而不是巴拉那将其应用于示例策略而不是我的原始策略?

代码语言:javascript
复制
<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>
EN

回答 1

Stack Overflow用户

发布于 2013-08-02 08:39:48

根据错误,似乎没有配置属性查找器。我猜策略有一个名为"http://kmarket.com/id/role“的属性id,但是它不在请求中,所以属性查找器被调用。你需要注册一个属性查找器来支持它.请从这里找到示例属性查找器1。在balana示例中,该属性查找器已经与示例本身一起存在。

1

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18006371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档