Skip to content

Commit

Permalink
Add a check for consistency between the Shibboleth 1.x authentication…
Browse files Browse the repository at this point in the history
… request binding and the corresponding IDPSSODescriptor's protocolSupportEnumeration attribute, per the Shibboleth Protocols and Profiles document, section 3.4.3.
  • Loading branch information
iay committed Feb 15, 2010
1 parent 7bcb192 commit 143f01a
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 0 deletions.
25 changes: 25 additions & 0 deletions build/check.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,31 @@
</xsl:template>


<!--
If an IDPSSODescriptor contains a SingleSignOnService with the Shibboleth 1.x
authentication request binding, the role descriptor's protocolSupportEnumeration
must include both of the following:
urn:oasis:names:tc:SAML:1.1:protocol
urn:mace:shibboleth:1.0
See the Shibboleth Protocols and Profiles document, section 3.4.3, for details.
-->
<xsl:template match="md:IDPSSODescriptor[md:SingleSignOnService[@Binding='urn:mace:shibboleth:1.0:profiles:AuthnRequest']]
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol'))]">
<xsl:call-template name="fatal">
<xsl:with-param name="m">Shibboleth 1.x auth request needs urn:oasis:names:tc:SAML:1.1:protocol in IDPSSODescriptor/@protocolSupportEnumeration</xsl:with-param>
</xsl:call-template>
</xsl:template>

<xsl:template match="md:IDPSSODescriptor[md:SingleSignOnService[@Binding='urn:mace:shibboleth:1.0:profiles:AuthnRequest']]
[not(contains(@protocolSupportEnumeration, 'urn:mace:shibboleth:1.0'))]">
<xsl:call-template name="fatal">
<xsl:with-param name="m">Shibboleth 1.x auth request needs urn:mace:shibboleth:1.0 in IDPSSODescriptor/@protocolSupportEnumeration</xsl:with-param>
</xsl:call-template>
</xsl:template>


<!--
Checks for an IdP whose KeyDescriptor elements do not include a @use attribute.
This causes problems with the Shibboleth 1.3 SP prior to V1.3.1, which
Expand Down
25 changes: 25 additions & 0 deletions build/check_imported.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,31 @@
</xsl:template>


<!--
If an IDPSSODescriptor contains a SingleSignOnService with the Shibboleth 1.x
authentication request binding, the role descriptor's protocolSupportEnumeration
must include both of the following:
urn:oasis:names:tc:SAML:1.1:protocol
urn:mace:shibboleth:1.0
See the Shibboleth Protocols and Profiles document, section 3.4.3, for details.
-->
<xsl:template match="md:IDPSSODescriptor[md:SingleSignOnService[@Binding='urn:mace:shibboleth:1.0:profiles:AuthnRequest']]
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol'))]">
<xsl:call-template name="fatal">
<xsl:with-param name="m">Shibboleth 1.x auth request needs urn:oasis:names:tc:SAML:1.1:protocol in IDPSSODescriptor/@protocolSupportEnumeration</xsl:with-param>
</xsl:call-template>
</xsl:template>

<xsl:template match="md:IDPSSODescriptor[md:SingleSignOnService[@Binding='urn:mace:shibboleth:1.0:profiles:AuthnRequest']]
[not(contains(@protocolSupportEnumeration, 'urn:mace:shibboleth:1.0'))]">
<xsl:call-template name="fatal">
<xsl:with-param name="m">Shibboleth 1.x auth request needs urn:mace:shibboleth:1.0 in IDPSSODescriptor/@protocolSupportEnumeration</xsl:with-param>
</xsl:call-template>
</xsl:template>


<!--
Checks for an IdP whose KeyDescriptor elements do not include a @use attribute.
This causes problems with the Shibboleth 1.3 SP prior to V1.3.1, which
Expand Down

0 comments on commit 143f01a

Please sign in to comment.