Show TOC

SAML-Browser-Artefakte verwendenLocate this document in the navigation structure

Verwendung

Sie können SAML für Single Sign-On in einem Szenario verwenden, in dem ein Benutzer durch ein Authentifizierungssystem authentifiziert wird, das als SAML-Authority fungiert. Auf der Grundlage dieser Authentifizierung erhält der Benutzer eine SAML-Assertion (auf Anfrage), mit der er auf eine Ressource eines anderen Systems zugreifen kann, ohne sich erneut zu authentifizieren.

Sie können SSO mit SAML-Assertions mit allen Verwendungsarten des SAP NetWeaver verwenden. In diesem Fall unterstützt das zu grunde liegende AS Java oder AS ABAP die Konfiguration und Ausführung des SSO und der SAP NetWeaver dient als SAML-Destinationsseite. Zusätzlich kann das Portal als SAML-Authority oder SAML-Aussteller dienen und SAML-Assertions ausstellen.

Einschränkungen

Es gibt auf dem AS Java bei der Implementierung von SAML einige Einschränkungen. Es gelten folgende Einschränkungen:

  • Version 1.0 und 1.1 der SAML-Spezifikation werden unterstützt.
  • Das Bedingungselement AudienceRestrictionCondition wird vom AS Java akzeptiert, obwohl es nicht evaluiert wird. Andere untergeordnete Elemente des Elements Conditions führen zu Bearbeitungsfehlern.
  • Assertions müssen genau ein AuthenticationStatement-Element haben. Die Authentifizierungsanweisung muss ein NameIdentifier-Element haben.
  • Falls vorhanden werden die Elemente AuthorizationDecisionStatement und AttributeStatement ingnoriert.
  • Das Anlegen digitaler Signaturen für ausgehende Dokumente wird nicht unterstützt. Digitale Signaturen eingehender Dokumente werden nicht verifiziert.
Voraussetzungen

Um den Datenaustausch also zu schützen, ist SSL für die Verbindung zwischen Aussteller und Destinationsseite erforderlich. Weitere Informationen finden Sie unter SSL und SNC für Transport Layer Security verwenden.

Hinweis

SSL wird in der SAML-Spezifikation gefordert. Daher wird die Verwendung von SSL in der SAML-Konfiguration standardmäßig erzwungen. Zu Testzwecken können Sie allerdings das Erzwingen von SSL für auf SAML basierende Dokumentenaustausche deaktivieren. In diesem Fall erhalten Sie in den Protokolldateien Warnungen.

Integration

Mehrere Komponenten spielen im SAML Single Sign-On Szenario eine Rolle:

  • Die Seite, die den Benutzer authentifiziert, richtet einen Aussteller-Server ein, der die SAML-Kommunikation einleitet. Dieser Aussteller stellt der Destinationsseite ein Assertion-Artefakt zur Verfügung, das einen Identifikatoren für die Assertions des Benutzers darstellt.
  • Der Aussteller stellt auch einen Responder zur Verfügung, der als SAML-Authority dient und die Assertions des Benutzer zur Verfügung stellt, wenn die Destinationsseite das Assertion-Artefakt präsentiert.
  • Zusätzlich zu der gewünschten Ressource stellt die Destinationsseite einen Artefaktempfänger zur Verfügung, der den Einstiegspunkt für Ressourcenanfragen darstellt, die ein Artefakt tragen.
    Hinweis

    Der Artefaktempfänger ist eine durch die SAML-Spezifikation definierte Komponente. In SAP NetWeaver kann jedoch jede Ressource Assertion-Artefakte in der Anfragen-URL annehmen.

  • Wenn die von der SAML-Authority zur Verfügung gestellte Benutzerkennung nicht mit der Benutzerkennung an der Destinationsseite übereinstimmt, muss die Destinationsseite auch einen Mechanismus für die Benutzerzuordnung zur Verfügung stellen.

Die folgende Abbildung zeigt detailliert eine Serverlandschaft mit AS Java als SAML-Destinationsseite:

Die Abbildung zeigt auch den Prozessablauf, der stattfindet, wenn der Benutzer über die Authentifizierung mit einer SAML-Assertion auf die AS-Java-Anwendungen zugreift.

  1. Der Benutzer authentifiziert sich am SAML-Aussteller (z.B. mit Benutzerkennung und Kennwort).
  2. Der Benutzer fordert eine Ressource bei der Destinationsseite (via Aussteller) an, z.B. die Ressource www.dest.com/resource.
  3. Der Aussteller kontaktiert dann den Artefaktempfänger der Destinationsseite. Dadurch sendet es die Ziel-URL für die angeforderte Ressource und ein Assertion-Artefakt, das die Assertions des Benutzers in den nächsten Schritten identifiziert.
  4. Der Artefaktempfänger leitet den Benutzer-Client zur gewünschten Destination weiter.
    Hinweis

    Die angeforderte Ressource kann auch der Assertion-Receiver sein. In diesem Fall wird dem Benutzer direkt Zugriff gewährt und es ist kein Redirect notwendig. Dies ist bei Anwendungen im SAP NetWeaver der Fall. Siehe Punkt 3 in der Abbildung.

  5. Das SAML-Login-Modul, das von der Ressource an der Destinationsseite verwendet wird, evaluiert das Artefakt, wozu auch das Ermitteln des Ausstellers anhand der vom Artefakt zur Verfügung gestellten Informationen zur Aussteller-ID gehören.
  6. Das Login-Modul fordert die Authentifizierungs-Assertions des Benutzers vom Responder des Ausstellers an. Die Anfrage geschieht mit SOAP über das HTTP-Binding des SAML-Protokolls.
  7. Der Responder des Ausstellers sendet die Assertions des Benutzers.
  8. Das Login-Modul analysiert die Assertions und authentifiziert den Benutzer. Wenn notwendig können Sie eine Benutzerzuordnung durchführen, um die korrekte Benutzerkennung vom AS Java zu erhalten. Siehe Punkt 8 in der Abbildung.
  9. Die Ressource wird an den Benutzer gesendet.
Funktionsumfang

SAP NetWeaver ermöglicht es Ihnen, SAML für SSO sowohl mit dem AS ABAP als auch mit dem AS Java zu verwenden. Sie können das Portal (das auf dem AS Java läuft) als SAML-Aussteller konfigurieren, der SAML-Browser-Artefakte ausstellt. Diese können dann verwendet werden, um auf den AS ABAP, den AS Java oder das Portal als Empfänger in der SAML-fähigen SSO-Umgebung zuzugreifen.

Weitere Informationen zu den verfügbaren Konfigurationsoptionen finden Sie im Abschnitt SAML-Parameter.

Für den Fall, dass Benutzer in verschiedenen Systemen unterschiedliche Kennungen haben, müssen Sie die Verwendung der Benutzerzuordnung konfigurieren. Für das Szenario, in dem Sie einen AS ABAP als UME-Datenquelle für den AS Java verwenden, können Sie die Benutzerzuordnungsfunktionen des AS ABAP verwenden. Weitere Informationen finden Sie unter SAML Principals zu SAP-NetWeaver-Benutzerkennungen zuordnen.

Im Fall einer AS-Java-Standalone-Installation mit einer lokalen Datenbank als Benutzerablage muss der Aussteller den Benutzernamen in der Assertion beinhalten.

Aktivitäten

Konfiguration

Weitere Informationen darüber, wie Sie die Verwendung von SAML auf dem AS ABAP und dem AS Java konfigurieren, finden Sie in folgenden Abschnitten:

Überwachung

Auf dem AS Java zeichnen die SAML-Authentifizierungs-Funktionen Daten in der Kategorie /System/Security/SAML auf. Sie können die Daten im Protokoll system_security_log des Servers mithilfe des AS-Java-Protokollansicht-Werkzeugs ansehen.

Standardmäßig wird die Protokolldatei <instance_dir>\j2ee\cluster\server<n>\log\system\security.<x>.log verwendet.

Auf dem AS ABAP werden Fehler, die während des SAML-Protokolls auftreten, sowohl im Systemprotokoll (Nachrichtennummern SM0 und SM1) als auch im Entwickler-Trace des Workprozesses aufgezeichnet.