7

是否可以在 SAML 身份验证请求中发送属性?

<samlp:AuthnRequest
   xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
   xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
   ID="aaf23196-1773-2113-474a-fe114412ab72"
   Version="2.0"
   IssueInstant="2004-12-05T09:21:59Z"
   AssertionConsumerServiceIndex="0"
   AttributeConsumingServiceIndex="0">
   <saml:Issuer>https://sp.example.com/SAML2</saml:Issuer>
   <samlp:NameIDPolicy
     AllowCreate="true"
     Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/>
 </samlp:AuthnRequest>
4

2 回答 2

7

从技术上讲,是的,这是可能的,因为 AuthnRequest 可以包含一个 Extensions 元素,该元素可以包含任何内容 - 请参阅SAML“核心”规范:AuthnRequest(第 3.4.1 节)派生自 RequestAbstractType(第 3.2.1 节),它有一个可选的扩展。发送者和接收者必须就以这种方式发送的数据的语法和语义达成一致。

我看不到更“传统”的方法来做到这一点,因为属性通常在断言中,而不是在 AuthnRequests 中。

于 2009-02-10T07:36:51.840 回答
0

在某些情况下,属性将成为身份验证请求的一部分。这样我们就可以从请求中获取该属性名称以构造相同的响应断言。

因为服务提供商通过比较属性名称来验证响应。我们可以以 Salesforce 作为服务提供商为例,同样的情况也会发生。

于 2013-02-07T06:45:47.930 回答