Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Gesamtablauf der Anmeldeprüfung  Dokument im Navigationsbaum lokalisieren

Wird ein ICF-Service im Application Server ABAP über einen externen Client aufgerufen, findet eine Reihe von Prüfungen statt um die Authentifizierung des Aufrufers zu ermöglichen. Der Gesamtablauf und die Reihenfolge dieser Prüfungen wird im Folgenden dargestellt:

Zunächst findet eine Prüfung statt, ob der aufgerufene Service existiert und aktiv ist. Ist dies der Fall, so prüft das System im nächsten Schritt, ob es sich um einen Public oder Non-public Service handelt. Ein Public Service kann ohne Anmeldeprüfung im System aufgerufen werden.

Ist der aufgerufene Service non-public, wird zunächst anhand der Service-Konfiguration geprüft, ob obligatorische Anmeldedaten oder ein Client-Zertifikat  verlangt werden: 

     Gilt Anmeldedaten obligatorisch, so wird die Anmeldung mit den bei diesem Service angegebenen anonymen Anmeldedaten vollzogen.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_SERVICE gesetzt.

     Gilt Client-Zertifikat mit SSL, so wird dieses gesucht und damit die Anmeldung am System durchgeführt.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_ CERTIFICATEgesetzt.

Ist keines dieser Verfahren obligatorisch, wird geprüft, ob für den Service die Standard-Anmeldefolge oder die Alternative Anmeldereihenfolge gewählt wurde.

     Gilt Standard-Anmeldefolge, versucht das System in folgender Reihenfolge, den Benutzer am System anzumelden:

                   1.      Anmeldung via HTTP-Felder (HTTP-Header-Felder oder Formfelder): dies sind

     sap-language

     sap-client

     sap-user

     sap-alias

     sap-password

Wird sap-user angegeben, ist sap-alias ohne Belang, vgl. Basic Authentication.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_FIELD gesetzt.

                   2.      Anmeldung via SSO-Ticket (MYSAPSSO2-Cookiefeld). Sind keine Anmeldedaten als Form- oder Header-Felder übergeben, so wird versucht, die Anmeldung mittels SSO-Ticket durchzuführen. Hierzu muss das Cookie-Feld MYSAPSSO2 gesetzt sein.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_SSO gesetzt.

                   3.      Anmeldung via Basic Authentication. Enthält der Request das Header-Feld für die Basic Authentication, so wird der Benutzername gemäß der Einstellung unter Basic Authentication entweder als Standard SAP-Benutzer (Defaulteinstellung) oder als Internetbenutzer (Alias des Benutzernamens, mit Transaktion SU01 gepflegt) interpretiert.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_BASIC gesetzt.

                   4.      Anmeldung via SAP-Anmeldung. Hier wird eine normale SAP-Anmeldung mit Mandant, Benutzer, Passwort und Anmeldesprache durchgeführt. Dies wird vor allem bei der Kommunikation zwischen SAP-Systemen verwendet, weniger bei der Anmeldung via Web-Browser. Die Anweisung, diese Art der Anmeldung durchzuführen, erfolgt ebenfalls über ein Header-Feld.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_SAP gesetzt.

                   5.      Anmeldung via Client-Zertifikat (HTTPS und Zertifikat). Hier wird versucht, die Anmeldung mittels Client-Zertifikat mit SSL durchzuführen. Es gelten folgende Voraussetzungen:

     das entsprechende Header-Feld ist gesetzt

     die Verbindung für HTTPS ist konfiguriert

     das Client-Zertifikat ist vorhanden

Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_CERTIFICATE gesetzt.

                   6.      Sind all diese Verfahren nicht möglich, weil der Request keine Information über das zu verwendende Anmeldeverfahren enthält, wird die Default-Anmeldung durchgeführt: Anmeldung via Service User Account. Sind die anonymen Anmeldedaten gepflegt, so erfolgt die Anmeldung mit diesem Benutzer (und dem eingestellten Mandant und Anmeldesprache). Ist nichts eingetragen, so wird als Antwort HTTP 401 gesendet. Im Falle des Web-Browsers ist dies ein Popup, mit dem sich der Benutzer via HTTP Basic Authentication am SAP-System anmelden kann. Es werden dann der Default-Mandant und die Anmeldesprache des gewählten Benutzers verwendet.

     Das Attribut AUTHENTICATION_METHOD von IF_HTTP_SERVER wird auf den Wert AUTHMETHOD_SERVICE gesetzt.

 

     Gilt Alternative Anmeldereihenfolge, werden die unter Standard-Anmeldefolge beschriebenen Verfahren (bzw. eine Auswahl davon) in der individuell festgelegten Reihenfolge durchgeführt.

War keines der gewählten Anmeldeverfahren erfolgreich, prüft das System, ob für den Service eine individuelle Fehlerseite konfiguriert wurde.

Ist dies nicht der Fall, wird die default response mit Status http 401 und der Anforderung der Basic Authentication in Form eines Anmelde-Popup an den Aufrufer gesendet.

Hinweis

Wurde Alternative Anmeldereihenfolge gewählt und hier Basic Authentication nicht als Verfahren zugelassen, wird im Fehlerfall auch keine Basic Authentication angefordert.

 

 

Diese Grafik wird im zugehörigen Text erklärt

 

 

Ende des Inhaltsbereichs