Aktivieren von Single Sign-On

Objective

After completing this lesson, you will be able to single Sign-On aktivieren

SSO-Mechanismen

Benutzerauthentifizierung und Single Sign-On (SSO)

Das Authentifizierungskonzept für SAP-Fiori-Apps umfasst die initiale Benutzerauthentifizierung auf dem ABAP-Frontend-Server, gefolgt von der Authentifizierung aller Anfragen an Backend-Systeme.

Initiale Authentifizierung

Wenn ein Benutzer eine SAP-Fiori-App startet, wird die Startanforderung vom Client über das SAP Fiori Launchpad an den ABAP-Frontend-Server gesendet. Während des Starts authentifiziert der ABAP-Frontend-Server den Benutzer über einen der unterstützten Authentifizierungs- und Single-Sign-On-Mechanismen (SSO-Mechanismen). Wir empfehlen, SSO einzurichten, damit Benutzer SAP-Fiori-Apps mit ihren einzelnen, vorhandenen Anmeldeinformationen starten können. Als Fallback-Option kann die initiale Authentifizierung auf den Kennwörtern der Benutzer auf dem ABAP-Frontend-Server basieren. SAP stellt einen dedizierten Anmelde-Handler für die formularbasierte Anmeldung bereit. Nach der initialen Authentifizierung auf dem ABAP-Frontend-Server wird eine Sicherheitssession zwischen dem Client und dem ABAP-Frontend-Server eingerichtet.

Authentifizierung für Anfragen in den Backend-Systemen

Nach der initialen Authentifizierung wird eine Sicherheitssession zwischen dem Client und dem ABAP-Frontend-Server eingerichtet. Transaktionale Apps können dann OData-Requests über den ABAP-Frontend-Server an den ABAP-Backend-Server senden. OData-Requests an den ABAP-Backend-Server werden dann sicher über einen vertrauenswürdigen RFC kommuniziert, und es ist keine zusätzliche Authentifizierung erforderlich.

Für die Suche im SAP Fiori Launchpad senden Anwendungen InA-Suchanfragen vom Client an die SAP-HANA-Datenbank. Diese Anforderungen können mit Kerberos/SPNego, X.509-Client-Zertifikaten oder Anmeldetickets authentifiziert werden. Sie können den ABAP-Frontend-Server so konfigurieren, dass er Anmeldetickets nach der initialen Authentifizierung ausstellt, oder Sie können dafür Ihr vorhandenes Portal verwenden.

Die folgenden Authentifizierungs- und Single-Sign-On-Mechanismen (SSO-Mechanismen) werden für SAP-Fiori-Apps unterstützt:

Benutzer-ID und Kennwort

Die Authentifizierungsfunktionen der Benutzerkennung und des Kennworts des AS ABAP ermöglichen es berechtigten Benutzern, auf den AS ABAP zuzugreifen, indem sie interaktiv eine Benutzerkennung und ein Kennwort angeben. Mit der Authentifizierung mit Benutzerkennung und Kennwort können Sie die Zugriffskontrolle auf Ihre AS-ABAP-Systeme mit einem Authentifizierungsmechanismus erzwingen, der einen grundlegenden Zugriffsschutz mit relativ geringer Komplexität der Sicherheitskonfigurationsaufgaben bietet.

Die Verwendung der Benutzerkennungs- und Kennwortauthentifizierung in komplexen Systemlandschaften, in denen sich Benutzer an mehreren Systemen anmelden müssen, erhöht jedoch die Arbeitslast der Benutzer durch die erforderlichen Mehrfacheingaben von Benutzerkennungen und Kennwörtern für den Systemzugriff.

X.509-Client-Zertifikate

Wenn Sie eine Public-Key-Infrastruktur (PKI) für die Benutzerauthentifizierung in Ihrer Organisation implementiert haben, können Sie X.509-Client-Zertifikate verwenden, indem Sie die erforderlichen Backend-Systeme (ABAP oder SAP HANA) konfigurieren, um X.509-Client-Zertifikate zu akzeptieren.

Die Authentifizierung mit X.509-Client-Zertifikaten bietet folgende Vorteile:

  • Es ist kein ausstellendes System während der Anmeldung erforderlich, was bedeutet, dass es in mit dem Internet verbundenen Szenarien gut funktioniert.

  • Sie wird auch für die Anmeldung am SAP GUI unterstützt. Die Verwendung von X.509-Client-Zertifikaten sowohl für den SAP-GUI- als auch für den HTTP-Zugriff vereinfacht die Einrichtung von Single Sign-On in Ihrer Systemlandschaft.

X.509-Client-Zertifikate müssen an die Workstations und Geräte verteilt werden, die für den Zugriff auf SAP-Fiori-Apps verwendet werden. Für mobile Endgeräte kann diese Verteilung zentral von einer Mobile-Device-Management-Software, z.B. SAP Mobile Platform, durchgeführt werden.

Kerberos/SPNego

Wenn Sie von Ihrem Unternehmensnetzwerk aus auf SAP-Fiori-Apps zugreifen, können Sie die Kerberos/SPNego-Authentifizierung für den ABAP-Frontend-Server aktivieren. Diese Authentifizierung wird besonders empfohlen, wenn Sie bereits über eine Kerberos/SPNego-Infrastruktur verfügen, z.B. wenn Sie Microsoft Active Directory verwenden.

Kerberos/SPNego-Authentifizierung bietet folgende Vorteile:

  • Sie vereinfacht den Anmeldeprozess, indem Credentials wiederverwendet werden, die bereits bereitgestellt wurden, z.B. während der Anmeldung an der Microsoft-Windows-Workstation. Eine separate Anmeldung am ABAP-Frontend-Server ist nicht erforderlich.

  • Sie wird auch für die Anmeldung am SAP GUI unterstützt. Die Verwendung von Kerberos sowohl für den SAP-GUI- als auch für den HTTP-Zugriff vereinfacht die Einrichtung von Single Sign-On in Ihrer Systemlandschaft.

  • Sie wird von einer wachsenden Anzahl von Anbietern mobiler Geräte unterstützt.

Bei der Anmeldung benötigt die Kerberos/SPNego-Authentifizierung Zugriff auf ein ausstellendes System (z.B. Microsoft Active Directory). Da sich dieses System in der Regel im Unternehmensnetzwerk befindet, kann Kerberos/SPNego nicht für die meisten Deployment-Szenarien mit Internetzugriff verwendet werden. Um Single Sign-On mit Kerberos/SPNego-Authentifizierung von außerhalb Ihres Unternehmensnetzwerks zu aktivieren, müssen Sie möglicherweise eine VPN-Verbindung einrichten.

Kerberos/SPNego ist mit dem Produkt SAP Single Sign-On verfügbar, das auch zusätzliche Authentifizierungsmechanismen wie X.509-Client-Zertifikate oder einen SAML-Identity-Provider bereitstellt.

SAML 2.0

Wenn Sie die Security Assertion Markup Language (SAML) Version 2.0 als Single-Sign-On-Methode (SSO) in Ihrer Organisation implementiert haben, können Sie den ABAP-Frontend-Server für die Verwendung mit SAML 2.0 konfigurieren.

Diese Authentifizierungsmethode bietet folgende Vorteile:

  • Sie umfasst umfangreiche Föderationsfunktionen, was bedeutet, dass sie in Szenarios mit föderierten Benutzerdomänen gut funktioniert, in denen die Konfiguration von Vertrauensbeziehungen kompliziert sein kann.

  • Sie enthält umfangreiche Benutzerzuordnungsfunktionen, mit denen Sie SAP-Benutzer basierend auf Identitätsattributen zuordnen können, z.B. das SAP-Benutzernamenattribut oder die E-Mail-Adresse eines Benutzers. Das bedeutet, dass SAML 2.0 für Szenarios mit mehreren Benutzerdomänen gut funktioniert.

Während des Anmeldeprozesses benötigt die SAML-2.0-Authentifizierung Zugriff auf ein ausstellendes System (Identity-Provider). Um Single Sign-On mit SAML 2.0 in Deployment-Szenarien mit Internetzugriff zu aktivieren, die die Föderationsfunktionen nutzen, müssen Sie sicherstellen, dass der SAML-Identity-Provider von außerhalb Ihres Unternehmensnetzwerks sicher zugänglich ist.

SAP-Anmeldetickets

Für Anmeldetickets müssen Sie den ABAP-Frontend-Server so konfigurieren, dass er Anmeldetickets ausstellt. Alternativ können Sie ein vorhandenes System, z.B. ein Portal, in Ihrer Landschaft verwenden, das bereits Anmeldetickets ausstellt. Darüber hinaus müssen Sie die erforderlichen Backend-Systeme (ABAP oder SAP HANA) konfigurieren, um Anmeldetickets zu akzeptieren. Außerdem müssen Sie sicherstellen, dass die Benutzer im ABAP-System dieselben Benutzernamen haben wie die Datenbankbenutzer in SAP HANA; die Benutzerzuordnung wird nicht unterstützt. Da Anmeldetickets als Browser-Cookies übertragen werden, können Sie diesen Authentifizierungsmechanismus nur verwenden, wenn sich alle Systeme in Ihrer Systemlandschaft in derselben DNS-Domäne befinden.

SSO mit X.509-Client-Zertifikaten

Die Authentifizierung mit X.509-Client-Zertifikaten verwendet eine Public-Key-Infrastruktur (PKI), um Benutzer sicher zu authentifizieren. Nachdem Benutzer ihre X.509-Client-Zertifikate von einer Zertifikatsausstellenden Certification Authority (CA) erhalten haben, können sie sowohl für den sicheren Zugriff auf SAP-NetWeaver-Systeme als auch auf Fremdsysteme verwendet werden. SAP NetWeaver und das Fremdsystem können Zugriffsanforderungen basierend auf einer etablierten Vertrauensbeziehung mit der CA autorisieren. Darüber hinaus können Benutzer ihre X.509-Client-Zertifikate verwenden, um ihren Zugriff auf Systeme zu authentifizieren, die sich im Internet und im Intranet Ihres Unternehmens befinden. Dabei können Sie Zertifikate für die Authentifizierung in offenen Umgebungen wie dem Internet verwenden.

SSO mit X.509-Client-Zertifikaten

In dieser Schulung verwenden wir X.509-Client-Zertifikate, um SSO zu aktivieren. In diesem Fall muss der SAP Web Dispatcher so konfiguriert werden, dass SSL-Zertifikate für die X.509-Authentifizierung an das AS-ABAP-System weitergeleitet werden.

Der SAP Web Dispatcher beendet in der Regel SSL-Verbindungen und verschlüsselt später den Datenverkehr neu, um ihn an das AS-ABAP-System zu senden. Aufgrund der Neuverschlüsselung wird der HTTP-Request, der authentifiziert werden muss, auf einer SSL-Verbindung empfangen, die mit dem Client-Zertifikat des SAP Web Dispatchers initiiert wurde.

Folglich muss der SAP Web Dispatcher das ursprüngliche Client-Zertifikat (das Browser-Zertifikat) an das AS-ABAP-System weiterleiten. Dies wird erreicht, indem das ursprüngliche Client-Zertifikat in ein HTTP-Request-Header-Feld gestellt wird (standardmäßig SSL_CLIENT_CERT).

Das AS-ABAP-System kann nicht einfach ein Client-Zertifikat aus einem HTTP-Request-Header entnehmen, da Angreifer sonst abgeführte Zertifikate verwenden können. Daher darf das AS-ABAP-System nur Client-Zertifikate akzeptieren, die von einem vertrauenswürdigen Vermittler weitergeleitet wurden.

Die Konfiguration der SSL-Zertifikatsweiterleitung im SAP Web Dispatcher besteht aus drei Teilen:

  • Der Client (Browser) muss sein Zertifikat senden.

  • Der SAP Web Dispatcher muss das Client-Zertifikat akzeptieren und weiterleiten.

  • Das AS-ABAP-System muss das weitergeleitete Zertifikat akzeptieren.

Details zur Konfiguration finden Sie im Dokument SAP Web Dispatcher SSL Certificate Forwarding unter https://help.sap.com/docs/SUPPORT_CONTENT/si/3362959224.html.

Single Sign-On mit X.509-Client-Zertifikaten aktivieren

Unternehmensszenario

Notiz

Wenn in dieser Übung ein Objektname oder ein Wert ## enthält, ersetzen Sie ## durch die Nummer, die Ihnen Ihr Referent zugewiesen hat.

Aufgabe 1: Schlüsselpaar für SSL signieren – Client

Schritte

  1. Öffnen Sie, und melden Sie sich an der Web-Admin-UI Ihres SAP Web Dispatchers an.

    1. Starten Sie auf dem WTS einen Webbrowser.

    2. Geben Sie die URL der Web-Admin-UI Ihres SAP Web Dispatchers ein (https://<vollständig qualifizierter SAP-Web-Dispatcher-Hostname>:443$$/sap/wdisp/admin).

      Notiz

      Sie können auch die Browser-Favoriten/Lesezeichen verwenden, die unter
      • Q-Team: 20 Quality Assurancefsqhost20 WDQ SAP Web Dispatcher Administration
      • P team: 30 Productionfsphost30 WDP SAP Web Dispatcher Administration
    3. Geben Sie auf dem Anmeldebild des SAP Web Dispatcher Folgendes ein: Benutzernamewebadm und Ihr Master-Kennwort (sollte SAPWebDisp## lauten).

  2. Legen Sie einen CA-Request für die Client-PSE des SAP Web Dispatcher (Sicht SAPSSLC.pse) an, signieren Sie ihn mit dem auf dem SMJ-System gehosteten SAP Secure Login Server, und importieren Sie die Antwort.

    Im Folgenden finden Sie einige Hinweise zum SAP Secure Login Server, der in dieser Schulung als CA fungiert:

    • URL der SAP Secure Login Administration Console (SLAC): https://smhost.wdf.sap.corp:59101/slac
    • Pfad ZertifikatsverwaltungZertifikatsanforderungen signieren
    • Zertifikatsvorlage: SSL-Client-Vorlage
    • Aussteller: SAP Training SSL Sub CA
    • Zertifikatsantworttyp: PKCS#7

    1. Navigieren Sie auf der Web-Admin-UI zu SSL and Trust ConfigurationPSE Management.

    2. Stellen Sie sicher, dass unter PSE verwalten die Option SAPSSLC.pse ausgewählt ist.

      Achtung

      Ändern Sie nichts für SAPSSLS.pse!

    3. Wählen Sie CA-Auftrag anlegen.

      Wählen Sie CA-Auftrag anlegen.
    4. Markieren Sie den vollständigen CA-Request (einschließlich der Zeilen mit den Zeichen -----), und sichern Sie ihn in Ihrer Zwischenablage.

    5. Starten Sie in einem neuen Webbrowser-Fenster/-Tab die Secure-Login-Administrationskonsole (SLAC) über die URL https://smhost.wdf.sap.corp:59101/slac.

      Notiz

      Sie können auch den Browser-Favorit/das Lesezeichen verwenden, das unter 80 Application Lifecycle Managementsmhost90 SMJ Secure Login Administration Console vorbereitet wurde.
    6. Wenn Sie nach Anmeldeinformationen gefragt werden, geben Sie die Anmeldedaten Ihres Benutzers train-## an (im Mandanten 100 des Systems SMA, mit dem die UME des Systems SMJ verbunden ist).

    7. Navigieren Sie im SLAC zu ZertifikatsverwaltungZertifikatsanforderungen signieren.

    8. Fügen Sie den CA-Request (Inhalt Ihrer Zwischenablage) in das Feld Encoded Certificate Request ein.

    9. Wählen Sie Zertifikatsanforderung anzeigen.

    10. Passen Sie folgende Einstellungen an:

      • Gültigkeit beenden: Erhöhen Sie den vorgeschlagenen Wert (z.B. ab heute auf ein Jahr).

      • Zertifikatsvorlage: Wählen Sie SSL-Client-Vorlage.

      • Aussteller: Wählen Sie SAP Training SSL SubCA.

      • Zertifikatsantwortart: Wählen Sie PKCS#7.

      Screenshot zeigt die Option Zertifikatsantworttyp und die Auswahl der PKCS#7-Option
    11. Wenn Sie fertig sind, wählen Sie Zertifikat signieren.

    12. Markieren Sie die vollständige CA-Antwort (einschließlich der Zeilen mit den Zeichen -----), und sichern Sie sie in Ihrer Zwischenablage.

    13. Fügen Sie die vollständige CA-Antwort in das Feld Import CA Response into PSE SAPSSLC.pse (in der Web-Admin-UI des SAP Web Dispatchers) ein, und wählen Sie Importieren.

      Achtung

      Stellen Sie sicher, dass SAPSSLC.pse angezeigt wird (links neben der Drucktaste Import). Ändern Sie nichts für SAPSSLS.pse!

    14. Beachten Sie, dass der Zertifikatsaussteller in CN=Secure Login SSL CA, O=SAP Training, C=DE geändert wurde.

      Zertifikatsaussteller geändert in CN=Secure Login SSL CA, O=SAP Training, C=DE

Aufgabe 2: Fügen Sie Ihre SAP-Web-Dispatcher-Client-PSE zur Liste der vertrauenswürdigen Reverse-Proxys in Ihrem SAP-S/4HANA-System hinzu.

Schritte

  1. Öffnen Sie den erweiterten Wartungsmodus für das Standardprofil Ihres SAP-S/4HANA-Systems.

    1. Melden Sie sich mit dem Benutzer train-## an Ihrem SAP-System an.

    2. Starten Sie die Transaktion RZ10.

    3. Wählen Sie im Feld Profil den Wert DEFAULT (über die F4-Hilfe).

    4. Markieren Sie Erweiterte Pflege und wählen Sie Ändern.

  2. Beachten Sie den bereits vorbereiteten Parameter icm/trusted_reverse_proxy_0. Legen Sie einen neuen Parameter icm/trusted_reverse_proxy_1 mit den entsprechenden Einstellungen für Ihr SAP-Web-Dispatcher-System an.

    1. Wählen Sie im Menü ParameterAnlegen(L) (F5) (oder wählen Sie alternativ Parameter Anlegen (F5)), um einen neuen Parameter anzulegen.

      Hinweis

      Der neue Parameter wird oberhalb der Cursorposition eingefügt. Aus optischen Gründen können Sie die Zeile unterhalb des vorbereiteten Parameters icm/trusted_reverse_proxy_0 markieren, bevor Sie den neuen Parameter icm/trusted_reverse_proxy_1 anlegen.
      Screenshot zeigt die Option Ändern > Anlegen (L)
    2. Geben Sie als Parameternameicm/trusted_reverse_proxy_1 ein.

    3. Geben Sie als ParameterwertSUBJECT="<Subject>", ISSUER="CN=Secure Login SSL CA, O=SAP Training, C=DE" ein, und ersetzen Sie <Subject> durch den String, den Sie im vorherigen Schritt ermittelt haben.

      • Q-Team: SUBJECT="CN=WDQ, OU=SSL CLIENT",ISSUER="CN=Secure Login SSL CA, O=SAP Training, C=DE"

      • P-Team: SUBJECT="CN=WDP, OU=SSL CLIENT",ISSUER="CN=Secure Login SSL CA, O=SAP Training, C=DE"

      Achtung

      Stellen Sie sicher, dass Sie sowohl den Parameternamen als auch den Wert korrekt eingeben (einschließlich Groß- und Kleinschreibung).
      Screenshot zeigt, wie Sie sicherstellen, dass Sie sowohl den Parameternamen als auch den Wert korrekt eingeben.
    4. Wählen Sie Kopieren.

    5. Wählen Sie Zurück (F3).

    6. Wählen Sie im Dialogfenster Änderungen sichern? die Option Ja.

    7. Wählen Sie Kopieren.

    8. Wählen Sie Zurück (F3).

    9. Wählen Sie Sichern.

    10. In Profil sichern – Fehler in Parameterwerten gefunden. Werte anzeigen? wählen Sie Nein.

    11. Auf dem Bild Profil aktivieren – Möchten Sie das Profil aktivieren? die Option Ja.

    12. Wählen Sie Weiter (zweimal).

      Screenshot zeigt den Prozess bis zur Auswahl von Weiter.
  3. Starten Sie alle ICM-Prozesse Ihres SAP-Systems neu.

    In Produktivumgebungen sollten Sie den ICM-Prozess nicht auf diese Weise neu starten (siehe SAP-Hinweis 2367439Manuellen Neustart des ICM-Prozesses vermeiden).
    1. Fahren Sie mit der Arbeit in Ihrem SAP-System fort.

    2. Rufen Sie die Transaktion SMICM AUF.

    3. Wählen Sie im Menü AdministrationICMSoftGlobal beenden.

    4. Sind Sie sicher, dass Sie alle ICM-Prozesse im System neu starten möchten?Wählen Sie Ja.

    5. Prüfen Sie nach dem ICM-Neustart, ob der Parameter icm/trusted_reverse_proxy_1 unter SpringenParameter mit dem korrekten Wert angezeigt wird.

      Der Screenshot zeigt die Antwort Ja auf das Dialogfenster: Möchten Sie wirklich alle ICM-Prozesse im System neu starten?

      Hinweis

      Sie müssen nach unten blättern; die Liste der Parameter ist alphabetisch sortiert.

Ergebnis

Ihr SAP-System vertraut Ihrem SAP Web Dispatcher. Details zu mehreren vertrauenswürdigen Reverse-Proxys finden Sie im SAP-Hinweis 2052899.