Reputation: 193
I am trying to set up SLO with a Shibboleth SP and a Gigya IDP. The IDP has SLO set up and all the redirections appear to be working, however the IDP is expecting a saml:NameID tag to be present within the LogoutRequest, and Shibboleth is not doing this by default.
Here is the request that Shibboleth is currently generating:
<samlp:LogoutRequest
Destination="............"
ID="_863ce41c221f009f853ebe1fbad30548" IssueInstant="2016-09-01T01:14:44Z" Version="2.0"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">..........</saml:Issuer>
<samlp:Extensions><aslo:Asynchronous xmlns:aslo="urn:oasis:names:tc:SAML:2.0:protocol:ext:async-slo"/></samlp:Extensions>
<saml:EncryptedID xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
<xenc:EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc"/>
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<xenc:EncryptedKey xmlns:xenc="http://www.w3.org/2001/04/xmlenc#">
<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p">
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"/>
</xenc:EncryptionMethod>
<xenc:CipherData>...</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedKey>
</ds:KeyInfo>
<xenc:CipherData>
<xenc:CipherValue>...</xenc:CipherValue>
</xenc:CipherData>
</xenc:EncryptedData>
</saml:EncryptedID>
</samlp:LogoutRequest>
I would like to have the below tag included within the samlp:LogoutRequest tag.
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified">.......</saml:NameID>
I know a nameid is being generated because I see the tag present in the login response saml. Can the SLO request be configured to include this value? Thanks!
Upvotes: 1
Views: 1185
Reputation: 193
As Mehmet Y. pointed out, the nameID attribute was in fact already being included, though it was encrypted. I had to explicitly set the encryption attribute on the Logout tag to false in order to get the IDP to recognize it.
Upvotes: 1