SAML 2.0-Authentifizierungs-Handler

AEM umfasst einen SAML-Authentifizierungs-Handler. Dieser Handler unterstützt das SAML 2.0-Authentifizierungsanforderungsprotokoll (Web-SSO-Profil), das die HTTP POST-Bindung verwendet.

Folgendes wird unterstützt:

  • Signierung und Verschlüsselung von Nachrichten
  • Automatische Erstellung von Benutzern
  • Synchronisieren von Gruppen mit vorhandenen Gruppen in AEM
  • Vom Service Provider und Identity Provider initiierte Authentifizierung

Dieser Handler speichert die verschlüsselte SAML-Antwortnachricht im Benutzerknoten (usernode/samlResponse), um die Kommunikation mit dritten Dienstleistern zu erleichtern.

HINWEIS

Hier finden Sie eine Demonstration zur Integration von AEM und SAML.

Einen End-to-End-Community-Artikel finden Sie hier: Integrieren von SAML mit „Adobe Experience Manager“.

Konfigurieren des SAML 2.0-Authentifizierungs-Handlers

Die Web-Konsole bietet Zugriff auf die SAML 2.0-Authentifizierungs-Handler-Konfiguration namens Adobe Granite SAML 2.0 Authentication Handler. Die folgenden Eigenschaften können festgelegt werden.

HINWEIS

Der SAML 2.0-Authentifizierungs-Handler ist standardmäßig deaktiviert. Sie müssen mindestens eine der folgenden Eigenschaften festlegen, um den Handler zu aktivieren:

  • POST-URL des Identitätsanbieters
  • Entitäts-ID des Dienstleisters
HINWEIS

SAML-Assertionen werden signiert und optional verschlüsselt. Damit dies funktioniert, müssen Sie zumindest das öffentliche Zertifikat des Identitätsanbieters im TrustStore angeben. Weitere Informationen finden Sie in Hinzufügen des Identitätsanbieterzertifikats zum TrustStore.

​PathRepository-Pfad, für den dieser Authentifizierungs-Handler von Sling verwendet werden soll. Wenn dieser leer ist, wird der Authentifizierungs-Handler deaktiviert.

Service RankingOSGi Framework Service Ranking -Wert, der die Reihenfolge angibt, in der dieser Dienst aufgerufen werden soll. Dies ist ein ganzzahliger Wert, wobei höhere Werte vorrangig sind.

IDP- ZertifikataliasDer Alias des IdP-Zertifikats im globalen TrustStore. Wenn diese Eigenschaft nicht angegeben wird, ist der Authentifizierungs-Handler deaktiviert. Im Kapitel „Identitätsanbieterzertifikat zum AEM-TrustStore hinzufügen“ weiter unten finden Sie Informationen dazu, wie Sie dies einrichten.

Identitäts-Provider- URL des IDP, an den die SAML-Authentifizierungsanforderung gesendet werden soll. Wenn diese Eigenschaft nicht angegeben wird, ist der Authentifizierungs-Handler deaktiviert.

VORSICHT

Der Hostname des Identitätsanbieters muss der OSGi-Konfiguration Apache Sling Referrer Filter hinzugefügt werden. Weitere Informationen finden Sie im Abschnitt Web-Konsole.

Entitäts- ID des Dienstanbieters, die diesen Dienstanbieter eindeutig mit dem Identitäts-Provider identifiziert. Wenn diese Eigenschaft nicht angegeben wird, ist der Authentifizierungs-Handler deaktiviert.

Standard- UmleitungDer Standardspeicherort, zu dem nach erfolgreicher Authentifizierung umgeleitet wird.

HINWEIS

Dieser Ort wird nur verwendet, wenn das Cookie request-path nicht festgelegt ist. Wenn Sie eine Seite unterhalb des konfigurierten Pfads ohne gültiges Anmelde-Token anfordern, wird der angeforderte Pfad in einem Cookie gespeichert
und der Browser nach erfolgreicher Authentifizierung erneut an diesen Speicherort weitergeleitet wird.

User-ID AttributeDer Name des Attributs mit der Benutzer-ID, die zum Authentifizieren und Erstellen des Benutzers im CRX-Repository verwendet wird.

HINWEIS

Die Benutzer-ID wird nicht aus dem Knoten saml:Subject der SAML-Assertion abgerufen, sondern aus diesem saml:Attribute.

Verwenden Sie EncryptionGibt an, ob dieser Authentifizierungs-Handler verschlüsselte SAML-Assertionen erwartet.

CRX- Benutzer automatisch erstellenGibt an, ob nach erfolgreicher Authentifizierung nicht vorhandene Benutzer automatisch im Repository erstellt werden sollen.

VORSICHT

Falls die automatische Erstellung von CRX-Benutzern deaktiviert ist, müssen die Benutzer manuell erstellt werden.

Zu Gruppen hinzufügenGibt an, ob ein Benutzer nach erfolgreicher Authentifizierung automatisch zu CRX-Gruppen hinzugefügt werden soll oder nicht.

Gruppenmitgliedschaft Der Name des saml:Attribute mit einer Liste von CRX-Gruppen, zu denen dieser Benutzer hinzugefügt werden soll.

Identitätsanbieterzertifikat zum AEM TrustStore hinzufügen

SAML-Assertionen werden signiert und optional verschlüsselt. Damit dies funktionieren kann, müssen Sie mindestens das öffentliche Zertifikat des IdP im Repository bereitstellen. Dazu müssen Sie Folgendes tun:

  1. Gehen Sie zu http:/serveraddress:serverport/libs/granite/security/content/truststore.html

  2. Drücken Sie den Link Create TrustStore

  3. Geben Sie das Kennwort für den TrustStore ein und klicken Sie auf Speichern.

  4. Klicken Sie auf TrustStore verwalten.

  5. Laden Sie das IdP-Zertifikat hoch.

  6. Beachten Sie das Zertifikatalias. Im Folgenden Beispiel lautet das Alias admin#1436172864930.

    chlimage_1-372

Den Dienstleisterschlüssel- und -zertifikatkette dem AEM-Schlüsselspeicher hinzufügen

HINWEIS

Die folgenden Schritte sind obligatorisch. Andernfalls wird die folgende Ausnahme ausgelöst: com.adobe.granite.keystore.KeyStoreNotInitialisedException: Uninitialised system trust store

  1. Gehen Sie zu: http://localhost:4502/libs/granite/security/content/useradmin.html
  2. Bearbeiten Sie den Benutzer authentication-service.
  3. Erstellen Sie einen KeyStore, indem Sie unter Kontoeinstellungen auf KeyStore erstellen klicken.
HINWEIS

Die folgenden Schritte sind nur erforderlich, wenn der Handler Nachrichten signieren oder entschlüsseln kann.

  1. Laden Sie die Datei mit dem privaten Schlüssel hoch, indem Sie auf Datei mit privatem Schlüssel auswählen klicken. Der Schlüssel muss im PKCS#8-Format mit DER-Kodierung vorliegen.

  2. Laden Sie durch Klicken auf Zertifikatkettendateien auswählen die Zertifikatdatei hoch.

  3. Weisen Sie ein Alias zu, wie im Folgenden gezeigt:

    chlimage_1-373

Logger für SAML konfigurieren

Sie können einen Logger einrichten, um alle Probleme zu debuggen, die aufgrund der falschen Konfiguration von SAML entstehen können. Gehen Sie dazu wie folgt vor:

  1. Wechseln Sie zur Web-Konsole unter http://localhost:4502/system/console/configMgr

  2. Suchen Sie nach dem Eintrag Apache Sling Logging Logger Configuration und klicken Sie darauf.

  3. Erstellen Sie einen Logger mit folgender Konfiguration:

    • Protokollebene: Debug
    • Protokolldatei: logs/saml.log
    • Logger: com.adobe.granite.auth.saml

Auf dieser Seite