Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:shibidp3config [2017/02/22 16:04] – Raoul Gunnar Borenius | de:shibidp3config [2021/05/03 13:49] (aktuell) – veralteten Inhalt gelöscht Silke Meyer | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Basis-Konfiguration des Shibboleth IdP 3.x====== | ||
| - | |||
| - | Allgemeine Hinweise: | ||
| - | * Die unten genannten Arbeitsschritte erfolgen innerhalb des bei der Installation erstellten Ziel-Verzeichnisses (default: / | ||
| - | * bei den Konfigurationsbeispielen bitte nicht die kompletten Dateien mit den Konfigurationsschnipseln ersetzen, i.d.R. handelt es sich nur um Auszüge. Bitte nur die angezeigten Zeilen übernehmen bzw. entsprechend ergänzen! | ||
| - | * wir empfehlen während der Konfiguration permanent drei Desktop-Fenster offen zu halten in denen Sie den Tomcat- und die beiden relevanten IdP-Logs mitverfolgen sollten: | ||
| - | |||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | So sehen Sie sofort falls Sie beim Editiern einer Datei einen Fehler gemacht haben! | ||
| - | |||
| - | ====Föderationsmetadaten==== | ||
| - | |||
| - | Der IdP kann gleichzeitig mehrere Metadatensätze verarbeiten. Um später einen reibungslosen Übergang | ||
| - | in die DFN-AAI-Produktivumgebung zu gewährleisten sollten Sie jetzt gleich sowohl die Metadaten der Testumgebung als auch der Produktivumgebung eintragen: | ||
| - | |||
| - | <file xml / | ||
| - | < | ||
| - | |||
| - | <!-- ... --> | ||
| - | |||
| - | <!-- für den initialen Testbetrieb die Metadaten der Testföderation --> | ||
| - | < | ||
| - | xsi: | ||
| - | backingFile=" | ||
| - | metadataURL=" | ||
| - | maxRefreshDelay=" | ||
| - | < | ||
| - | certificateFile="/ | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | </ | ||
| - | |||
| - | <!-- Die Produktiv-Metadaten können auch sofort aktiviert werden --> | ||
| - | < | ||
| - | xsi: | ||
| - | backingFile=" | ||
| - | metadataURL=" | ||
| - | maxRefreshDelay=" | ||
| - | < | ||
| - | certificateFile="/ | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | </ | ||
| - | |||
| - | ... | ||
| - | |||
| - | </ | ||
| - | </ | ||
| - | |||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | ====Anbindung IdM (LDAP/ | ||
| - | |||
| - | Die IdM-Anbindung ist erfahrungsgemäss der kniffligste Teil der IdP-Konfiguration. Es empfiehlt sich daher den Default-Loglevel der LDAP-Kategorie zu erhöhen: | ||
| - | |||
| - | <file xml / | ||
| - | ... | ||
| - | <!-- aus Datenschutzgründen nur 14 Tage aufbewahren --> | ||
| - | < | ||
| - | |||
| - | <!-- Much higher performance if you operate on DEBUG. --> | ||
| - | <!-- < | ||
| - | |||
| - | <!-- Logging level shortcuts. --> | ||
| - | < | ||
| - | <!-- Loglevel von " | ||
| - | < | ||
| - | ... | ||
| - | </ | ||
| - | |||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | Bei einem Login-Vorgang des Users am IdP macht der IdP im Hintergrund zwei LDAP-Abfragen: | ||
| - | |||
| - | * Authentisierung des Users | ||
| - | * Abruf der Attribute des Users | ||
| - | |||
| - | Diese beiden Schritte werden in ldap.properties unabhängig voneinander konfiguriert: | ||
| - | |||
| - | === LDAP-Abfrage 1: User-Authentisierung === | ||
| - | |||
| - | <file properties / | ||
| - | # bitte entsprechend den Möglichkeiten Ihres IdM-Systems anpassen, im Beispiel | ||
| - | # eine Konfiguration wie Sie für OpenLDAP und auch Active Directory funktionieren kann: | ||
| - | idp.authn.LDAP.authenticator | ||
| - | idp.authn.LDAP.ldapURL | ||
| - | idp.authn.LDAP.useStartTLS | ||
| - | idp.authn.LDAP.useSSL | ||
| - | idp.authn.LDAP.sslConfig | ||
| - | # | ||
| - | # Pfad zum Root-Zertifikat der verwendeten PKI, dieser sollte folgendermassen überprüft werden | ||
| - | # bevor er im IdP konfiguriert wird (Beispiel für DFN-PKI): | ||
| - | # | ||
| - | # openssl s_client -connect ldap.uni-beispiel.de: | ||
| - | # -CAfile / | ||
| - | # | ||
| - | # ' | ||
| - | idp.authn.LDAP.trustCertificates | ||
| - | # ' | ||
| - | # | ||
| - | # | ||
| - | # sofern während der Auth-Phase festgestellt werden | ||
| - | # hier die entsprechenden Attribute angegeben werden | ||
| - | # (FIXME: konkretes Beispiel für OpenLDAP und AD heraussuchen) | ||
| - | idp.authn.LDAP.returnAttributes | ||
| - | # | ||
| - | # LDAP-Verbindungsparameter, | ||
| - | # konfiguriert werden: | ||
| - | # | ||
| - | # ldapsearch -H ldaps:// | ||
| - | # -b " | ||
| - | # -D cn=idp, | ||
| - | # -x -w ' | ||
| - | # | ||
| - | # | ||
| - | idp.authn.LDAP.baseDN | ||
| - | # statt " | ||
| - | idp.authn.LDAP.userFilter | ||
| - | idp.authn.LDAP.bindDN | ||
| - | idp.authn.LDAP.bindDNCredential | ||
| - | |||
| - | </ | ||
| - | |||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | Siehe auch im Shibboleth Wiki unter [[https:// | ||
| - | |||
| - | === LDAP-Abfrage 2: User-Attribute === | ||
| - | |||
| - | <file properties / | ||
| - | # wie bei Abfrage 1 muss hier das relevante User-Attribut angegeben werden, für | ||
| - | # MS-AD ist das üblicherweise " | ||
| - | idp.attribute.resolver.LDAP.searchFilter | ||
| - | </ | ||
| - | |||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | === Bevor Sie weiter machen müssen Sie unbedingt die LDAP-Verbindung testen! === | ||
| - | |||
| - | * tragen Sie Ihren idP in der [[https:// | ||
| - | * warten Sie eine Stunde bis der neue Eintrag auf den DFN-Testsystemen angekommen ist | ||
| - | * machen Sie mithilfe unserer Test-SPs einen ersten Login-Versuch, | ||
| - | |||
| - | Es werden Ihnen jetzt noch keine Attribute angezeigt, was aber nicht weiter tragisch ist. | ||
| - | |||
| - | Sollten Sie nicht erfolgreich zum SP zurückgeleitet werden, achten Sie darauf, von welchem | ||
| - | System die Fehlermeldung im Browser generiert wird. Entsteht die Fehlermeldung am IdP, | ||
| - | schauen Sie bitte in idp-process.log nach, was die Ursache ist. Generiert unser Test-SP | ||
| - | die Fehlermeldung, | ||
| - | Sollten Sie damit nicht weiterkommen, | ||
| - | und den genauen Zeitpunkt, zu dem der Fehler aufgetreten ist, damit wir mithilfe unseres | ||
| - | SP-Logs die Ursache bestimmen können. | ||
| - | |||
| - | === Erst wenn der Login funktioniert sollten Sie die Attribute-Konfiguration angehen! === | ||
| - | |||
| - | ==== Attribute ==== | ||
| - | |||
| - | Erzeugung und Freigabe der SAML-Attribute wird weiterhin über die Dateien attribute-resolver.xml und attribute-filter.xml gesteuert. Diese unterscheiden sich syntaktisch und semantisch leicht von den gewohnten Dateien im IdP 2.x. | ||
| - | |||
| - | Mit den folgenden beiden Konfigurationsdateien sollte ein erster Test gegen die DFN-Test-SPs schnell gelingen: | ||
| - | |||
| - | === Minimal-attribute-resolver.xml === | ||
| - | |||
| - | <file xml / | ||
| - | <?xml version=" | ||
| - | < | ||
| - | xmlns=" | ||
| - | xmlns: | ||
| - | xsi: | ||
| - | |||
| - | <!-- ========================================== --> | ||
| - | < | ||
| - | <!-- ========================================== --> | ||
| - | |||
| - | <!-- für uid das nehmen was der User eingetippt hat --> | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | |||
| - | <!--- eduPersonPrincipalName aus uid generieren --> | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | |||
| - | <!--- mail aus LDAP holen --> | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | < | ||
| - | <!-- ========================================== --> | ||
| - | |||
| - | < | ||
| - | ldapURL=" | ||
| - | baseDN=" | ||
| - | principal=" | ||
| - | principalCredential=" | ||
| - | useStartTLS=" | ||
| - | connectTimeout=" | ||
| - | trustFile=" | ||
| - | responseTimeout=" | ||
| - | < | ||
| - | < | ||
| - | %{idp.attribute.resolver.LDAP.searchFilter} | ||
| - | ]]> | ||
| - | </ | ||
| - | < | ||
| - | minPoolSize=" | ||
| - | maxPoolSize=" | ||
| - | blockWaitTime=" | ||
| - | validatePeriodically=" | ||
| - | validateTimerPeriod=" | ||
| - | expirationTime=" | ||
| - | failFastInitialize=" | ||
| - | </ | ||
| - | |||
| - | </ | ||
| - | </ | ||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | === attribute-filter.xml für die DFN-AAI-Test === | ||
| - | |||
| - | <file xml / | ||
| - | <?xml version=" | ||
| - | < | ||
| - | xmlns=" | ||
| - | xmlns: | ||
| - | xsi: | ||
| - | |||
| - | < | ||
| - | < | ||
| - | < | ||
| - | <Rule xsi: | ||
| - | <Rule xsi: | ||
| - | </ | ||
| - | |||
| - | < | ||
| - | < | ||
| - | < | ||
| - | </ | ||
| - | |||
| - | </ | ||
| - | </ | ||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | ==== Attribute-Test mithilfe der Test-SPs in der DFN-AAI-Test ==== | ||
| - | |||
| - | Bitte testen Sie jetzt die Attribute-Freigabe gegen unsere Test-SPs, siehe dazu | ||
| - | https:// | ||
| - | |||
| - | Erst wenn diese Tests erfolgreich sind uns Sie die Attribute ' | ||
| - | |||
| - | ==== Attribute-Test mithilfe aacli ==== | ||
| - | |||
| - | Mit dem **Resolvertest (aacli)** besteht die Möglichkeit, | ||
| - | <code bash> | ||
| - | root@idp# ./aacli.sh -n test-clt -r https:// | ||
| - | </ | ||
| - | (**-n** principal = user id; **-r** requester = entityId des anfragenden SP) | ||
| - | |||
| - | ====Zertifikate==== | ||
| - | |||
| - | Sofern Sie erfolgreich Attribute übertragen konnten sollten Sie jetzt als nächstes auf DFN-PKI-Zertifikate wechseln. | ||
| - | |||
| - | Die bei der Installation erzeugten Private Keys und zugehörigen selbst-signierten Zertifikate müssen für den späteren Produktionsbetrieb gegen DFN-PKI-Zertifikate ausgetauscht werden. Wir empfehlen die Verwendung der selben Key- und Zertifikats-Files, | ||
| - | |||
| - | Unter Debian/ | ||
| - | |||
| - | <file ini / | ||
| - | # ... | ||
| - | # Settings for public/ | ||
| - | # During decryption key rollover, point the " | ||
| - | # keypair, uncomment in credentials.xml, | ||
| - | idp.signing.key= / | ||
| - | idp.signing.cert= / | ||
| - | idp.encryption.key= / | ||
| - | idp.encryption.cert= / | ||
| - | # | ||
| - | # | ||
| - | # ... | ||
| - | </ | ||
| - | |||
| - | * das Format der Zert-Datei muss PEM sein, DER funktioniert nicht! | ||
| - | * in den PEM-Dateien dürfen keine Kommentare enthalten, sie müssen in der ersten Zeile mit " | ||
| - | * in den PEM-Dateien dürfen am Ende der Zeilen keine Blanks oder andere unsichtbare Zeichen sein | ||
| - | * Bitte darauf achten, dass die PEM-Dateien vom Tomcat-User gelesen werden dürfen! | ||
| - | * die private-key-Datei darf nicht mit einer Passphrase verschlüsselt sein! | ||
| - | |||
| - | |||
| - | Auf Debian/ | ||
| - | Der Tomcat-User muss also Mitglied dieser Gruppe sein, siehe die entsprechenden [[https:// | ||
| - | zur Vorbereitung der Systemumgebung in diesem Wiki]] und auch im Shibboleth Wiki unter [[https:// | ||
| - | |||
| - | Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): | ||
| - | <code bash> | ||
| - | root@idp:/ | ||
| - | </ | ||
| - | |||
| - | **Wichtig**: | ||
| - | |||
| - | * **Denken Sie daran, das neue Zertifikat in der DFN-AAI-Metadatenverwaltung einzutragen. Dort sind zunächst die bei der Installation generierten selbst-signierten Zertifikate eingetragen worden.** Am besten löschen Sie dort alle (sechs!) Zertifikatsinstanzen und tragen danach das neue Zertifikat nur noch zweimal ein: einmal im Abschnitt "IdP Single Sign On Descriptor" | ||
| - | * **Warten Sie dann zwei Stunden bis die neuen Zertifkate in die DFN-AAI-Test-Metadaten aufgenommen worden sind und testen Sie nochmal die Attribut-Freigaben wie oben beschrieben!** | ||
| - | * Die Datei./ | ||
| - | |||
| - | ====Weiterführende Konfiguration==== | ||
| - | |||
| - | Weiter geht's mit dem Webseiten-Layout auf der [[de: | ||