<- de:shibidp:config-attributes-minimal|Minimalkonfiguration der Attribute ^ de:shibidp:uebersicht|Überblick: Tutorial zur IdP-Inbetriebnahme ^ de:shibidp:config-i18n|Internationalisierung -> ====== Zertifikate für die SAML-basierte Kommunikation ====== Sofern Sie erfolgreich Attribute übertragen konnten, sollten Sie als nächstes die bei der Installation generierten Zertifikate ersetzen. Sie können für die SAML-Kommunikation entweder selbstsignierte Zertifikate oder solche der DFN-Verein Community PKI verwenden. Details dazu finden Sie unter [[de:certificates|Zertifikate]]. Es gibt ein paar Kleinigkeiten zu beachten: * Das Format der Zert-Datei muss PEM sein, DER funktioniert nicht. * Die PEM-Dateien dürfen keine Kommentare enthalten, sie müssen in der ersten Zeile mit "-----BEGIN" anfangen. * In den PEM-Dateien dürfen am Ende der Zeilen keine Leerzeichen oder andere unsichtbare Zeichen sein. * Der private Schlüssel //darf nicht// mit einer Passphrase verschlüsselt sein. ===== Eintragen der Zertifikate im IdP ===== Unter Debian/Ubuntu liegen diese Dateien typischerweise unter ''/etc/ssl''. Tragen Sie sie in ''./conf/idp.properties'' ein. # ... idp.signing.key= /etc/ssl/private/idp-dev.uni-beispiel.de.key.pem idp.signing.cert= /etc/ssl/localcerts/idp-dev.uni-beispiel.de.crt.pem idp.encryption.key= /etc/ssl/private/idp-dev.uni-beispiel.de.key.pem idp.encryption.cert= /etc/ssl/localcerts/idp-dev.uni-beispiel.de.crt.pem # ... ===== Lesezugriff des Tomcat-Users ===== Der IdP läuft im Tomcat und damit mit den Berechtigungen des Tomcat-Users. Damit er Zugriff auf die Dateien unterhalb von ''/etc/ssl/private'' bekommt, muss er (unter Debian und Ubuntu) in die Gruppe 'ssl-cert' aufgenommen werden: root@idp:~# usermod -aG ssl-cert $( getent passwd | grep ^tomcat | cut -d ":" -f1 ) Das Verzeichnis ''/etc/ssl/private'' und sein Inhalt sollten dem User ''root'' und der Gruppe ''ssl-cert'' gehören: root@idp:~# chown -R root:ssl-cert /etc/ssl/private Der private Schlüssel sollte für ''root'' les- und schreibbar sein, für die Gruppe ''ssl-cert'' nur lesbar, andere haben dort keine Rechte: root@idp:~# chmod 0640 /etc/ssl/private/idp-dev.uni-beispiel.de.key.pem So sehen die Dateirechte auf dem privaten Schlüssel dann aus: root@idp:~# ls -la /etc/ssl/private/idp-dev.uni-beispiel.de.key.pem -rw-r----- 1 root ssl-cert 3272 May 31 12:56 /etc/ssl/private/idp-dev.uni-beispiel.de.key.pem Starten Sie Tomcat neu um die neuen Einstellungen zu aktivieren (dabei Logdateien mitverfolgen!): root@idp:/opt/shibboleth-idp# systemctl restart tomcat9 ===== Eintragen des neuen Zertifikats in der Metadatenverwaltung ===== Das Zertifikat für die SAML-Kommunikation muss nun noch in die veröffentlichten Metadaten des IdP eingetragen werden. Dort steht jetzt noch das bei der Installation generierte selbst-signierte Zertifikat. * Gehen Sie in die [[https://mdv.aai.dfn.de/|Metadatenverwaltung]]. Löschen in den IdP-Metadaten zunächst alle eingetragenen Zertifikatsinstanzen. * Tragen Sie das neue Zertifikat zweimal ein: einmal im Abschnitt "IdP Single Sign On Descriptor" und einmal im Abschnitt "Attribute Authority Descriptor". In beiden Fällen lassen Sie dabei das Feld "Verwendungszweck" leer. So wird dasselbe Zertifikat für Signierung //und// Verschlüsselung verwendet. * Warten Sie dann **90 Minuten**, bis die neuen Zertifikate in die DFN-AAI-Test-Metadaten aufgenommen worden sind. ===== Erneuter Test ===== Testen Sie danach erneut die Attribut-Freigaben mithilfe der DFN-Test-SPs. Die Datei ''./metadata/idp-metadata.xml'' enthält nach wie vor die selbst-signierten Zertifikate, die bei der Installation automatisch generiert wurden. Diese Datei wird nicht automatisch aktualisiert. Das ist kein Problem, denn die Datei ist für den Betrieb des IdP nicht erforderlich. Sie ist als Hilfsmittel zur initialen Registrierung des IdP in einer Föderation gedacht. Wir empfehlen diese Datei "in Ruhe" zu lassen. {{tag>idp4 tutorial included-in-ansible}}