Dies ist eine alte Version des Dokuments!


Persistent ID als Attribut: eduPersonTargetedID

Etliche Service Provider sind aus historischen Gründen nicht in der Lage, einen Persistent Name Identifier zu verarbeiten. Sie erwarten den entsprechenden Wert in Form des veralteten Attributs eduPersonTargetedID.

So konfigurieren Sie den IdP, dass er die persistentId aus der Datenbank holt. Die Freigabe erfolgt analog zu allen anderen Attributen in ./conf/attribute-filter.xml.

./conf/attribute-resolver.xml
<!-- eduPersonTargetedID aus der SAML2NameID bilden -->
<AttributeDefinition id="eduPersonTargetedID" xsi:type="SAML2NameID" nameIdFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">
    <InputDataConnector ref="myStoredId" attributeNames="persistentId"/>
    <DisplayName xml:lang="en">Targeted ID (pseudonyme Kennung)</DisplayName>
    <DisplayName xml:lang="de">Targeted ID (pseudonymous ID)</DisplayName>
    <DisplayDescription xml:lang="en">Targeted ID: A unique, pseudonymous identifier for a person, different for each service provider.</DisplayDescription>
    <DisplayDescription xml:lang="de">Targeted ID: Eindeutige, pseudonyme Nutzerkennung, unterschiedlich pro Service Provider.</DisplayDescription>
    <AttributeEncoder xsi:type="SAML2XMLObject" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.10" friendlyName="eduPersonTargetedID" />
</AttributeDefinition>
 
<!-- ========================================== -->
<!--      Data Connectors                       -->
<!-- ========================================== -->
 
<DataConnector id="myStoredId"
    xsi:type="StoredId"
    generatedAttributeID="persistentId"
    salt="%{idp.persistentId.salt}">
    <InputAttributeDefinition ref="%{idp.persistentId.sourceAttribute}" />
    <BeanManagedConnection>shibboleth.MySQLDataSource</BeanManagedConnection>
</DataConnector>
./conf/attribute-resolver.xml
<AttributeDefinition id="eduPersonTargetedID" xsi:type="SAML2NameID" nameIdFormat="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">
    <InputDataConnector ref="myStoredId" attributeNames="persistentId"/>
</AttributeDefinition>
 
<!-- ========================================== -->
<!--      Data Connectors                       -->
<!-- ========================================== -->    
 
<DataConnector id="myStoredId"
    xsi:type="StoredId"
    generatedAttributeID="persistentId"
    salt="%{idp.persistentId.salt}">
    <InputAttributeDefinition ref="%{idp.persistentId.sourceAttribute}" />
    <BeanManagedConnection>shibboleth.MySQLDataSource</BeanManagedConnection>
</DataConnector>
./conf/attributes/custom/eduperson_targetedid.properties
id=eduPersonTargetedID
transcoder=SAML2XMLObjectTranscoder
saml2.name=urn:oid:1.3.6.1.4.1.5923.1.1.1.10
displayName.de=Targeted ID (pseudonyme Kennung)
displayName.en=Targeted ID (pseudonymous ID)
description.de=Targeted ID: Eindeutige, pseudonyme Nutzerkennung, unterschiedlich pro Service Provider
description.en=Targeted ID: A unique, pseudonymous identifier for a person, different for each service provider
  • Zuletzt geändert: vor 4 Jahren