Show TOC

HintergrundAuthentifizierung für Web-Services Dieses Dokument in der Navigationsstruktur finden

 

Mit Web-Services können Sie standardbasierte und von der Technologieplattform unabhängige Kommunikation zwischen Systemen betreiben. Ein Web-Service (WS) ist eine eigenständige, modulare Funktion, die veröffentlicht und aufgefunden werden und auf die über ein Netzwerk mit offenen Standards zugegriffen werden kann. Für den Aufrufer oder Sender eines Web-Service ist ein Service eine "Black Box", die Eingaben verlangt und ein Ergebnis liefert.

Sie können Authentifizierung und Sicherheit für das Konsumieren und Anbieten von Web-Services entweder auf HTTP-Transportebene oder auf SOAP-Nachrichtenebene verwenden. Dazu können Sie Standard-HTTP-Authentifizierungsmechanismen, z.B. HTTP-Standardauthentifizierung mit Benutzerkennung und Kennwort, sowie Standard-WS-Mechanismen verwenden, um Authentifizierung auf der höheren SOAP-Nachrichtenebene zu ermöglichen. Authentifizierung auf SOAP-Nachrichtenebene eignet sich für die spezifischen Authentifizierungsanforderungen für WS-Zugriff und ermöglicht Ihnen, starke SOAP-Nachrichten-Authentifizierungsmechanismen wie XML-Signaturen für ein- und ausgehende WS-Verbindungen zu verwenden.

Die AS-ABAP- und AS-Java-WS-Frameworks ermöglichen Ihnen, Authentifizierungsmechanismen zu verwenden, die auf dem WS-Security-Standard basieren, der von der Organization for the Advancement of Structured Information Standards (OASIS) erarbeitet wird. Sie können die Verwendung von Authentifizierung für das Konsumieren und Anbieten von Web-Services für die Anwendungsplattform von SAP NetWeaver auf der HTTP-Transportebene und der SOAP-Nachrichtenebene konfigurieren.

Die Abbildung wird im Begleittext erläutert.

Die Abbildung verdeutlicht, dass die von SAP unterstützten Lösungen für Authentifizierung und Single Sign-On sicheren Zugriff mit folgenden Sicherheitsstufen bieten:

  • Fest programmierten Service-Benutzer für Zugriff auf Service authentifizieren

    Im Konsumentensystem ist ein fest programmierter Service-Benutzer und dessen Kennwort eingerichtet. Das Anbietersystem authentifiziert die Benutzerkennung des Service-Benutzers für den Zugriff auf die Service-Anwendung. Die Sicherheit dieses Ansatzes ist gering und die Benutzerkennung und Daten sind während des Transports über das Netzwerk nicht geschützt, wodurch sie leicht abgefangen und zu Schadzwecken verwendet werden können. Das Sicherheitsrisiko für das Anbietersystem wird außerdem dadurch erhöht, dass der Service-Benutzer Berechtigungen benötigt. Seine Berechtigungsprofile und Rollen müssen ausreichend umfangreich sein, um den Anforderungen aller Benutzer, die diesen Service-Benutzer auf seiten des Konsumentensystems verwenden, gerecht zu werden.

  • Konsumentenanwendung mit Client-Zertifikat authentifizieren

    Aus Gründen der Skalierbarkeit kann in diesem Fall dasselbe Client-Zertifikat zur Authentifizierung aller Service-Anwendungen des Konsumentensystems eines Anwendungsservers verwendet werden, wobei das Schlüsselpaar System-key des Anwendungsservers verwendet wird. Dieser Ansatz bietet mehr Sicherheit und Funktionen beim Versenden der verschlüsselten Authentifizierungsdaten und der Nachricht über das Netzwerk. Dieser Ansatz basiert auf asymmetrischen, kryptografischen Schlüsselpaaren und der Vertrauensbeziehung zwischen Konsumenten- und Anbietersystemen.

  • Benutzerkennung des vom Konsumentensystem authentifizierten Benutzers propagieren

    Dieser Ansatz bietet einen hohen Grad an Sicherheit. Das Anbietersystem kann den Benutzeraufruf eines Service auf Grund der Identität eines vom Konsumentensystem authentifizierten Benutzers zulassen. Diese Identität verpackt das Konsumentensystem z.B. in ein SAML-Ticket, signiert dieses und sendet es an das Anbietersystem. Das Anbietersystem prüft die Token-Signatur, um festzustellen, ob es von einem vertrauenswürdigen Partner kommt. Anschließend entpacket es die im Token enthaltene ID und lässt die Ausführung der Service-Funktionen unter diesem Benutzer zu. Somit wurde die Benutzer-ID vom Konsumenten- an das Anbietersystem propagiert. Außerdem ermöglicht dieser Ansatz auch die Aktivität des Benutzers in einer dem Benutzer zuordenbaren Weise zu protokollieren (Auditierbarkeit). SAP NetWeaver unterstützt das SAML-Token-Profil und bietet damit Interoperabilität sowie die Verwendung von Service-Anwendungen mit Nicht-SAP-Anwendungen. Die Authentifizierungsdaten werden mit einem Format propagiert, das über einen eingebauten Schutz der Integrität verfügt. Außerdem können Sie den Schutz der Vertraulichkeit des zu Grunde liegenden Transportprotokolls verwenden oder mit XML-Verschlüsselung auf SOAP-Ebene arbeiten.

Einführungshinweise

Um einen Web-Service zu verwenden, initiiert ein WS-Konsument eine Transaktion mit einem WS-Anbieter über das Simple Object Access Protocol (SOAP). Der WS-Konsument kann ein System sein, das so konfiguriert ist, das es einen spezifischen Web-Service des WS-Anbieters konsumiert. Die SOAP-Transaktionsanfrage kann über das Internet mit dem HTTP-Protokoll übertragen werden.

Bei der Authentifizierung auf HTTP-Transportebene werden die Authentifizierungscredentials im HTTP-Header für die WS-Nachricht transportiert. Wenn Sie diese Transportebene für die Authentifizierung verwenden, können Sie einige der Authentifizierungs- und SSO-Mechanismen verwenden, die für web-basierten Zugriff unterstützt werden, z.B. Anmeldetickets für WS-Authentifizierung. Außerdem können Sie beim AS ABAP und AS Java die Authentifizierung auf HTTP-Ebene mit Benutzername und Kennwort und SSO mit X.509-Zertifikaten benutzen, bei der die konfigurierten Mechanismen die entsprechenden Authentifizierungsinfrastrukturen für web-basierten Zugriff verwenden.

Allerdings können Web-Service-Nachrichten über eine beliebige Anzahl von Verbindungen und potentiell viele zwischengeschaltete Systeme übertragen werden. Um diese entkoppelte Interaktion zu unterstützen, können Punkt-zu-Punkt- und verbindungsorientierte Authentifizierung auf HTTP-Transportebene allein unzureichend oder unpassend sein.

Daher ermöglicht SAP NetWeaver Ihnen auch, Authentifizierung auf SOAP-Nachrichtenebene oder auf Dokumentebene zu verwenden, wobei die Authentifizierungscredentials im SOAP-Header der WS-Nachricht transportiert werden. Die SAP NetWeaver unterstützten Authentifizierungsmechanismen auf Dokumentebene basieren auf dem WS-Security-Standard und ermöglichen Ihnen, WS-Authentfizierung und SSO gemäß den spezifischen Sicherheitsanforderungen für WS-Verbindungen zu verwenden.

Funktionsumfang

Sie können die Konfigurationswerkzeuge der zugrunde liegenden Technologie-Stacks von SAP NetWeaver verwenden, um die Verwendung von unterstützten Mechanismen für WS-Authentifizierung zu konfigurieren. Diese verfügbaren Konfigurationsoptionen ermöglichen Ihnen, die Authentifizierung für das Anbieten und Konsumieren von Web-Services sowohl auf HTTP-Transportebene als auch auf SOAP-Dokumentebene zu verwenden.

Weitere Informationen über relevante Sicherheitsaspekte bei Verwendung der unterstützten WS-Authentifizierungsmechanismen finden Sie unter

Konfiguration

Weitere Informationen über die Konfiguration der Verwendung von WS-Authentifizierung für Komponenten von SAP NetWeaver finden Sie unter Single Sign-On für Web-Services.

Weitere Informationen

Empfohlene WS-Security-Szenarios