Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: schac release URL change

...

Implementierung eduID.at

Info
iconfalse

Zur Zeit verwendet in der verlangt nur ein eduID.at Federation nur ein SAML Service Provider die Matrikelnummer als Attribut (dies aber in der hier spezifizierten Form), Studentensoftware für österreichische Universitäten der TU Wien.

...

Im international eingesetzten SCHAC-Schema wurde das Attribut schacPersonalUniqueCode definiert, das u.a. für die Kennzeichnung der studentID verwendet wird. Die Werte dieses Attributs sind URNs, mit standardisierten Prefixen, siehe dazu die SCHAC-Spezifikation (bzw. RFC 6338 zum SCHAC URN Namespace). Sofern also die studentische Matrikelnummer als SAML-Attribut übertragen werden soll, empfielt ACOnet die Nutzung des Attributs schacPersonalUniqueCode. Werte haben dabei die Form (z.B. für die Matrikelnummer 12345): urn:schac:personalUniqueCode:int:studentID:AT:0012345

...

Nachdem dieses Attribut nicht in genau dieser Form bereits gespeichert sein wird, folgt ein Beispiel, wie dynamisch aus dem Attribut uid (das aus dem DataConnector mit der id="myLDAP" kommt) die Matrikelnummer extrahiert und in die benötigte Form gebracht werden kann. In diesem fiktiven Beispiel enthält uid eine lokale UserID, die für Studierende die Form x<MATRIKELNR> hat. Hat die UserID nicht die erwartete Form, bleibt das Attribut leer (und wird vom IDP später gefiltertentfernt):

Code Block
languagehtml/xml
<resolver:AttributeDefinition id="matrikelMapping" xsi:type="Mapped"
    xmlns="urn:mace:shibboleth:2.0:resolver:ad" dependencyOnly="true" sourceAttributeID="uid">
    <resolver:Dependency ref="myLDAP" />
    <ValueMap>
        <ReturnValue>urn:schac:personalUniqueCode:int:studentID:AT:$1</ReturnValue>
        <SourceValue>^x([0-9]{7})$</SourceValue>
    </ValueMap>
</resolver:AttributeDefinition>
 
<resolver:AttributeDefinition id="matrikel" xsi:type="Simple"
    xmlns="urn:mace:shibboleth:2.0:resolver:ad" sourceAttributeID="matrikelMapping">
    <resolver:Dependency ref="matrikelMapping" />
    <resolver:AttributeEncoder xsi:type="SAML2String" xmlns="urn:mace:shibboleth:2.0:attribute:encoder"
              name="urn:oid:1.3.6.1.4.1.25178.1.2.14" friendlyName="schacPersonalUniqueCode" />
</resolver:AttributeDefinition>

...