Service Provider / SAML SSO: Identity Mapping Attribute

OOTB, it uses uid as the mapping attribute. That works fine. However, we want to leverage another identity attribute. This other identity attribute, named ‘nameId’ essentially holds the same value as uid, and is searchable. However, when we select that identity attribute to be used as the Identity Mapping Attribute, that broke the SSO experience.

We’ve validated that the identity has the same uid and nameId value, matched casing between the two strings.

What might be causing it not to work as expected?

Are there multiple identities with that same nameId value?

No. It’s one and only one for each nameId attribute value.

I would suggest using a saml tracer on browser developer tools and compare the saml responses from the IdP

Already did. The returned NameId is as expected in the assertion.

Could potentially be the use of persistent nameid format. Have you tried unspecified?

This was previously working.

i.e.
Day 1: uid with unspecified, came back with persistent. Working, SSOed.
Day 2: Changed uid to nameId, with unspecified, came back with persistent. Not working.
Day 3: Changed back to uid with unspecified, came back with persistent. Not working.

For some reason, we’re not able to get that to work again even thought the configuration looks the same between Day 1 and Day 3, identity data has not changed on the uid attribute.

So the idp is not honouring the unspecified reqest by the sounds of it, it’s not obliged to. FWIK use of persistent is not normally used for correlation purposes as it is used to obfuscate the subject by createing a cached linkage between idp and sp, so changing config could potentially break it. Can you change the idp config to send unspecified?

Client’s SME on the IdP side seems hesitant to do so.

“so changing config could potentially break it”
No configuration change on the IdP end. Only on the SP side with regard to the Identity Attribute Mapping dropdown selection.

Tell him that persistent is used for SPs that can use claims for correlation, rather than subject name id. SailPoint requires correlation in SNI, so persistent not ideal.

Refer your SME to section 8.3.7 of https://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf

Will need to have that conversation.

Good luck, been there :wink:

1 Like