Skip to content

Commit

Permalink
Fix multi-predicate support in check_saml1 ruleset
Browse files Browse the repository at this point in the history
From commit hash ukf/ukf-testbed/1a81732a7c90d839c48a97e408b302903423c8e5

See ukf/ukf-meta#416 for details
  • Loading branch information
Phil Smart committed Apr 16, 2024
1 parent b23632a commit 9bef3e5
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions mdx/_rules/check_saml1.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@
An IdP with a SAML 1.1 AttributeAuthority needs an AttributeService with an appropriate Binding.
-->
<xsl:template match="md:AttributeAuthorityDescriptor
[contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol')]
[not(md:AttributeService[@Binding='urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding'])]
[contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol') and
not(md:AttributeService[@Binding='urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding'])]
">
<xsl:call-template name="error">
<xsl:with-param name="m">SAML 1.1 AttributeAuthority missing appropriately bound AttributeService</xsl:with-param>
Expand All @@ -45,8 +45,8 @@
Use of SAML 1.0 bindings requires SAML 1.1 in protocolSupportEnumeration.
-->
<xsl:template match="md:IDPSSODescriptor
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol'))]
[md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol')) and
md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
<xsl:call-template name="error">
<xsl:with-param name="m">
<xsl:text>SAML 1.0 binding requires SAML 1.1 token in IDPSSODescriptor/@protocolSupportEnumeration</xsl:text>
Expand All @@ -58,8 +58,8 @@
Use of SAML 1.0 bindings requires SAML 1.1 in protocolSupportEnumeration.
-->
<xsl:template match="md:AttributeAuthorityDescriptor
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol'))]
[md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol')) and
md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
<xsl:call-template name="error">
<xsl:with-param name="m">
<xsl:text>SAML 1.0 binding requires SAML 1.1 token in AttributeAuthorityDescriptor/@protocolSupportEnumeration</xsl:text>
Expand All @@ -71,8 +71,8 @@
Use of SAML 1.0 bindings requires SAML 1.1 in protocolSupportEnumeration.
-->
<xsl:template match="md:SPSSODescriptor
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol'))]
[md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
[not(contains(@protocolSupportEnumeration, 'urn:oasis:names:tc:SAML:1.1:protocol')) and
md:*/@Binding[starts-with(., 'urn:oasis:names:tc:SAML:1.0:')]]">
<xsl:call-template name="error">
<xsl:with-param name="m">
<xsl:text>SAML 1.0 binding requires SAML 1.1 token in SPSSODescriptor/@protocolSupportEnumeration</xsl:text>
Expand Down

0 comments on commit 9bef3e5

Please sign in to comment.