Persistent ID encoding error: did not have a usable SAML 2 Attribute encoder

Ilya Rumyantsev iliggio at gmx.de
Mon Oct 1 09:24:28 EDT 2018


Hi @all,

for our IDP it is enough to recalculate the persistent ID on every request (the overhead of setting up a whole database for this would be too much and there is only one SP who uses that. This SP requires this attribute, though).
We are therefore recycling the following DataConnector:

    <DataConnector
	xsi:type="ComputedId"
	id="computedIDDC"
        generatedAttributeID="computedID"
        sourceAttributeID="workforceid"
        salt="mysaltysecret">
      <Dependency ref="mydirectory" />
    </DataConnector> 

The persistentID configuration looks as follows:

    <AttributeDefinition id="persistentId" xsi:type="Simple"
                                sourceAttributeID="computedID">
    <Dependency ref="computedIDDC"/>
    <AttributeEncoder xsi:type="SAML1StringNameIdentifier"
                               nameFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent" />
    <AttributeEncoder xsi:type="SAML2StringNameID"
                               nameFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent" />
    </AttributeDefinition>


In the logs we then always see:

     Profile Action AddAttributeStatementToAssertion: Attribute persistentId did not have a usable SAML 2 Attribute encoder ass
ociated with it, nothing to do

and the persistentID is then not passed into the SAML assertion.

Could anyone please tell me how to encode it? The workforceID is pretty static (therefore is a good persistentID) but should be salted (it's not necessarily public)

Thanks a lot


More information about the users mailing list