- de:shibidp:config-idm|Anbindung des IdM ^ de:shibidp:uebersicht|Überblick: Tutorial zur IdP-Inbetriebnahme ^ de:shibidp:config-zertifikate|Konfiguration der Zertifikate ->
====== Minimalkonfiguration von Attributen ======
Zum grundlegenden Verständnis der Attribut-Generierung, -Freigabe und -Übertragung empfehlen wir die Seite [[de:attributes-nutshell|Attributes in a Nutshell]].
Die Erzeugung und Freigabe der SAML-Attribute wird über die Dateien ''.conf/attribute-resolver.xml'', ''./conf/attribute-filter.xml'' und ''./conf/attribute-registry.xml'' gesteuert. Als nächstes laden Sie sich hier ein funktionierendes Minimalbeispiel herunter und testen damit, ob Ihr IdP Attribute an unseren Test-SP übermittelt. Die detaillierte Attributfreigabe für Ihren speziellen IdP machen Sie später.
===== Definition bzw. Generierung von Attributen =====
Die ''attribute-resolver.xml'' aus einer IdP 3.x-Installation kann nicht einfach in eine Neuinstallation von IdP 4.x hineinkopiert werden! Die Elemente "DisplayName", "DisplayDescription" und "AttributeEncoder", die in der Resolver-Syntax des 3er-IdP enthalten waren, sind jetzt in der Attribute Registry unterhalb von ''./conf/attributes'' definiert. Diese Zeilen müssen aus ''attribute-resolver.xml'' entfernt werden, damit die Datei in einem neu installierten 4er-IdP verwendet werden kann.
Die zentrale Konfigurationsdatei für die //Generierung// von Attributen ist ''./conf/attribute-resolver.xml''. Hier definieren Sie
* welche Attribute Ihr Shibboleth-IdP kennt,
* aus welchen Quellen dafür Attribute geholt werden,
* wie diese Attribute ggf. im IdP umgebaut werden sollen.
Um es zunächst übersichtlicher zu halten, legen Sie sich bitte unten stehende Beispieldatei nach ''./conf/attribute-resolver.xml''. Sie ist für Testzwecke nach der Erstinstallation gedacht. Die Werte für ''attributeNames'' müssen ggf. den tatsächlichen Attributnamen in Ihrem Nutzerverzeichnis angepasst werden. Für den späteren Produktivbetrieb müssen i.d.R. noch mindestens die Definitionen der für den Bibliotheksbereich relevanten Attribute ''eduPerson(Scoped)Affiliation'' und ''eduPersonEntitlement'' ergänzt werden, siehe die entsprechende [[de:shibidp:config-attributes-publishers|Dokumentation]].
(Ein Klick auf den Dateinamen startet den Download)
Beispiel-Hochschule
uni-beispiel.de
Laden Sie das Servlet neu, um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!):
root@idp:~# touch /opt/shibboleth-idp/war/idp.war
===== Freigabe von Attributen an SPs =====
Die zentrale Konfigurationsdatei für die //Freigabe// von Attributen an Service Provider ist ''./conf/attribute-filter.xml''. Unsere Beispieldatei regelt, welche Attribute an unsere öffentlichen Test-SPs freigegeben werden. Für den späteren Produktivbetrieb beachten Sie bitte die vertiefende [[de:shibidp:config-attributes|Dokumentation]].
(Ein Klick auf den Dateinamen startet den Download)
Laden Sie wieder die Konfiguration neu:
root@idp:~# touch /opt/shibboleth-idp/war/idp.war
===== Test der Attributübermittlung =====
Bitte testen Sie jetzt die Attribute-Freigabe gegen unsere Test-SPs, siehe hierzu unter [[de:functionaltest_idp|Funktionstest]].
Erst wenn diese Tests erfolgreich sind und Sie die Attribute ''uid'', ''eduPersonPrincipalName'', ''mail'', ''sn'' und ''givenName'' angezeigt bekommen, sollten Sie mit der IdP-Konfiguration weiter machen!
==== Resolvertest im Browser ====
Sie können den Resolvertest im Browser aufrufen. Ersetzen Sie den Anfang entsprechend Ihres Identity Providers:
https:///idp/profile/admin/resolvertest?principal=test-clt&requester=https://testsp3.aai.dfn.de/shibboleth
# Rückgabe:
{
"requester": "https://testsp3.aai.dfn.de/shibboleth",
"principal": "test-clt",
"attributes": [
{
"name": "eduPersonEntitlement",
"values": [
"urn:mace:dir:entitlement:common-lib-terms" ]
},
{
"name": "eduPersonScopedAffiliation",
"values": [
"member@testscope.aai.dfn.de" ]
}
]
}
==== Resolvertest mit aacli ====
Alternativ können Sie das Kommandozeilenwerkzeug ''aacli'' verwenden, um die Attributfreigabe zu testen: Geben Sie mit ''-n'' den Principal/die User ID an und mit ''-r'' den Requester/den SP, der die simulierte Anfrage stellt:
root@idp:~# /opt/shibboleth-idp/bin/aacli.sh -n test-clt -r https://testsp3.aai.dfn.de/shibboleth
(http://localhost/idp/profile/admin/resolvertest?requester=https%3A%2F%2Ftestsp3.aai.dfn.de%2Fshibboleth&principal=test-clt) http://localhost/idp/profile/admin/resolvertest?requester=https%3A%2F%2Ftestsp3.aai.dfn.de%2Fshibboleth&principal=test-clt
Die [[https://wiki.shibboleth.net/confluence/display/IDP4/AACLI|aacli-Dokumentation]] finden Sie im Shibboleth-Wiki.
{{tag>idp4 tutorial included-in-ansible}}