On Thu, Mar 13, 2014 at 6:25 AM, <
ronnie.j...@ist.com> wrote:
>
> I think I spoke to fast.... I am not able to extract the extension from the
> AuthnRequest.
> Reading this
>
http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf confirms
> that there is no Extension in the AuthnRequest... and it doesn't look like
> there is any way of sending any custom data along in the AuthnRequest.
No, that's not true. The samlp:AuthnRequestType is based on the
samlp:RequestAbstractType, which is fully extensible. Relevant
snippets from the schema are included below for convenience.
Tom
<element name="AuthnRequest" type="samlp:AuthnRequestType"/>
<complexType name="AuthnRequestType">
<complexContent>
<extension base="samlp:RequestAbstractType">
<sequence>
<element ref="saml:Subject" minOccurs="0"/>
<element ref="samlp:NameIDPolicy" minOccurs="0"/>
<element ref="saml:Conditions" minOccurs="0"/>
<element ref="samlp:RequestedAuthnContext" minOccurs="0"/>
<element ref="samlp:Scoping" minOccurs="0"/>
</sequence>
<attribute name="ForceAuthn" type="boolean" use="optional"/>
<attribute name="IsPassive" type="boolean" use="optional"/>
<attribute name="ProtocolBinding" type="anyURI" use="optional"/>
<attribute name="AssertionConsumerServiceIndex"
type="unsignedShort" use="optional"/>
<attribute name="AssertionConsumerServiceURL" type="anyURI"
use="optional"/>
<attribute name="AttributeConsumingServiceIndex"
type="unsignedShort" use="optional"/>
<attribute name="ProviderName" type="string" use="optional"/>
</extension>
</complexContent>
</complexType>
<complexType name="RequestAbstractType" abstract="true">
<sequence>
<element ref="saml:Issuer" minOccurs="0"/>
<element ref="ds:Signature" minOccurs="0"/>
<element ref="samlp:Extensions" minOccurs="0"/>
</sequence>
<attribute name="ID" type="ID" use="required"/>
<attribute name="Version" type="string" use="required"/>
<attribute name="IssueInstant" type="dateTime" use="required"/>
<attribute name="Destination" type="anyURI" use="optional"/>
<attribute name="Consent" type="anyURI" use="optional"/>
</complexType>