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 bestehenden in AEM
  • Authentifizierung durch Dienstleister und Identitätsanbieter initiiert

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 mindestens das öffentliche Zertifikat des Identitäts-Providers im TrustStore bereitstellen. Weitere Informationen finden Sie in Hinzufügen des Identitätsanbieterzertifikats zum TrustStore.

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

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

IDP-Zertifikatalias Der 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-Authentifizierungsanfrage 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.

Dienstleister Entity IDID, die diesen Dienstleister eindeutig mit dem Identitätsanbieter 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 Pfades ohne gültiges Login-Token anfordern, wird der angeforderte Pfad in einem Cookie gespeichert
und der Browser nach erfolgreicher Authentifizierung erneut an diesen Speicherort weitergeleitet wird.

User-ID- AttributDer 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 EncryptionOb dieser Authentifizierungshandler verschlüsselte SAML-Zusicherungen erwartet.

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

VORSICHT

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

hinzufügen zu GruppenGibt an, ob ein Benutzer nach erfolgreicher Authentifizierung automatisch CRX-Gruppen hinzugefügt werden soll.

Gruppenmitgliedschaft Der Name des Attributs saml:Attribute, das eine Liste von CRX-Gruppen enthält, denen dieser Benutzer hinzugefügt werden sollte.

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 auf den Link TrustStore erstellen

  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. Gehe 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 mit der DER-Kodierung im PKCS#8-Format 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