3.3.2.4 元素<AuthzDecisionQuery>

本博客采用知识共享署名 4.0 国际许可协议进行许可

<AuthzDecisionQuery>元素用来进行查询“鉴于这些证据,指定主体应该被允许在指定的资源上执行这些动作吗?”。成功的响应将会以包含授权决策声明的断言的格式返回。

注意:<AuthzDecisionQuery>特性在SAML 2.0版本中已经被冻结了,未来也没有增强计划。要求额外功能的用户可以考虑使用eXtensible Access Control Markup Language[XACML],该语言提供了增强的授权决策特性。

<AuthzDecisionQuery>元素是AuthzDecisionQueryType类型,该类型继承自SubjectQueryAbstractType类型,且额外的添加了下列的元素和属性:

  • Resource [必须]

一个URI引用,表示希望授权的资源。

  • <saml:Action> [一个或多个]

希望授权的动作。此元素的更多信息,可以参考2.7.4.2章节。

  • <saml:Evidence> [可选]

SAML机构在做出授权决策时可能会依赖的一系列断言。此元素的更多信息,可以参考2.7.4.3章节。

作为对授权决策查询的响应,SAML机构返回包含如下授权决策声明的断言:

  • 第3.3.4节中给出的与查询的元素匹配的规则确定了哪些断言会被返回。

下列的schema片段定义了<AuthzDecisionQuery>元素和它的 AuthzDecisionQueryType复杂类型:

<element name="AuthzDecisionQuery" type="samlp:AuthzDecisionQueryType"/>
<complexType name="AuthzDecisionQueryType">
    <complexContent>
        <extension base="samlp:SubjectQueryAbstractType">
            <sequence>
                <element ref="saml:Action" maxOccurs="unbounded"/>
                <element ref="saml:Evidence" minOccurs="0"/>
            </sequence>
            <attribute name="Resource" type="anyURI" use="required"/>
        </extension>
    </complexContent>
</complexType>

Last updated

Was this helpful?