Show TOC

Destination-Service-APILocate this document in the navigation structure

Verwendung

Mit dem Destination-Service können Sie HTTP(S)- oder RFC-Verbindungen vom Application Server Java zu anderen Servern einrichten. Die für die Verbindung zu verwendenden Daten (Zieladresse und Authentifizierungsinformation des Benutzers) werden im Destination-Service als Destination-Eintrag angegeben.

Es werden folgende Arten von Destinationen unterstützt:

  • HTTP(S)
  • RFC

HTTP-Destinationen unterstützen HTTP-Post- und HTTP-Get-Requests an HTTP- oder HTTPS-URLs. RFC-Destinationen werden für Verbindungen zu ABAP-Servern verwendet.

In früheren Releases konnten Sie die Anmeldedaten für Web-Services auch im Destination-Service pflegen. Diese werden nunmehr in den logischen Ports für den jeweiligen Web-Service gepflegt. Weitere Informationen finden Sie unter Authentifizierung.

Sie können Destinationen entweder manuell mithilfe des SAP NetWeaver Administrator aufsetzen oder mithilfe der APIs für den entsprechenden Service.

Hinweis

Diese Dokumentation befasst sich mit der programmatischen Verwendung des APIs zum Aufsetzen von Destinationen. Weitere Information zur Verwendung des SAP NetWeaver Administrator finden Sie unter Destination-Service im Administrationshandbuch.

Integration

Sicherer Speicher

Die im Destination-Eintrag angegebenen Informationen zu URL- und Benutzerauthentifizierung wird unter Verwendung des Secure Storage Service des AS Java verschlüsselt gespeichert.

SSL für HTTPS-Verbindungen verwenden

HTTP-Destinationen können auch das Secure-Sockets-Layer-Protokoll (SSL-Protokoll) verwenden, um sichere Verbindungen zum Zielserver herzustellen. Der Destination-Service verwendet die Secure Connection Factory, um diese Verbindungen herzustellen.

Die entsprechenden Public-Key-Zertifikate werden in einem Keystore im Key Storage Service gespeichert. Diese beinhalten auch das vertrauenswürdige CA-Zertifikat, das für die Verifizierung des Serverzertifikats des Zielservers verwendet werden soll. Bei Bedarf ist auch das X.509-Client-Zertifikat des Benutzers für die Authentifizierung hierin enthalten.

SNC für RFC-Verbindungen verwenden

Sie können die sichere Netzwerkkommunikation (Secure Network Communications - SNC) verwenden, um RFC-Verbindungen zu ABAP-Systemen zu sichern. In diesem Fall müssen Sie SAP NetWeaver Single Sign-On oder ein externes Sicherheitsprodukt verwenden, um den Schutz zu gewährleiten.

Protokollierung

Der Destination-Service verwendet das Logging-API des AS Java. Jegliche Debugging-Protokolle werden unter system/security log abgelegt.

HTTP(s)-Destinationen: Authentifizierungsmethode

Beim Anlegen einer HTTP-Destination geben Sie an, welche Authentifizierungsmethode für eine Verbindung verwendet werden soll. Folgende Authentifizierungsmethoden werden unterstützt:

  • Keine Authentifizierung
  • Standardauthentifizierung (Benutzer-ID und Kennwort)

    Bei dieser Option müssen Sie die Benutzer-ID und das Kennwort angeben, das für die Verbindung verwendet werden soll. Die Benutzerinformation wird dann mit der Anforderung (dem Request) in einem HTTP-Standardauthentifizierungs-Header gesendet.

  • X.509-Client-Zertifikate

    In diesem Fall wird SSL mit gegenseitiger Authentifizierung für die Authentifizierung des Clients verwendet. Um diese Option zu verwenden, müssen Sie das zu verwendende Public-Key-Zertifikat aus einem Keystore-Eintrag im Key Storage Service für die Client-Authentifizierung angeben.

  • Anmeldetickets

    In diesem Fall muss der aktuelle Benutzer über ein Anmeldeticket verfügen. Das Anmeldeticket wird dann mit der Anforderung (dem Request) gesendet.

  • Authentifizierungszusicherungstickets (Assertion Tickets)

    Für Systemverbindungen zwischen dem AS Java under einem AS-ABAP-Service, die jRFC oder HTTP verwenden, gibt es einen weiteren Anmeldetickettyp, das Authentifizierungszusicherungsticket. Dieses Ticket ist wie das Standardanmeldeticket strukturiert und wird ähnlich verwendet, jedoch mit folgenden Einschränkungen:

    • Es wird für Verbindungen zwischen Systemen verwendet, bei denen keine Benutzerinteraktion erforderlich ist.
    • Es kann nur einmalig verwendet werden. Nachdem das Ticket verifiziert wurde, wird es gelöscht. Für eine neue Verbindung wird ein neues Ticket ausgestellt.
    • Es hat eine sehr begrenzte Gültigkeitsdauer (einige Sekunden).
Voraussetzungen

Alle Destinationen

Ihre Anwendung braucht Classloader-Referenzen zu tc~sec~destinations~service und tc~sec~destinations~interface.

HTTP-Destinationen

  • Wenn die Verbindung SSL verwendet, muss der Benutzer, der die Anwendung ausführt, Zugriff auf den Key Storage Service haben.
  • Wenn Sie Anmeldetickets für die Benutzerauthentifizierung verwenden, müssen folgende Voraussetzungen erfüllt sein:
    • Die an der Verbindung beteiligten Server müssen für die Verwendung von Anmeldetickets zur Authentifizierung konfiguriert sein.
    • Der Benutzer muss über das entsprechende Anmeldeticket verfügen, bevor er auf die über die Destination angegebene Verbindung zugreifen kann. Daher muss durch die Anwendung, die die Destination verwendet, sichergestellt sein, dass dem Benutzer ein Anmeldeticket vorliegt. (Verwenden Sie entweder die vordefinierte Anmeldemodulvorlage ticket oder beziehen Sie die Module EvaluateTicketLoginModule und CreateTicketLoginModule in den Login-Modul-Stack der Anwendung mit ein.)

RFC-Destinationen

Aktivitäten

Sie können mithilfe des Destination-Service-APIs Destinationen anlegen, löschen, ändern oder diese verwenden.

Destinationen anlegen

Um eine Destination anzulegen, gehen Sie folgendermaßen vor:

  1. Suchen Sie mithilfe des JNDI-Services eine Referenz zu der Destination.
  2. Legen Sie eine neue Destination an (Methode: createDestination ).
  3. Passen Sie die Paramater der Destination an (Methode: set<parameter>).
  4. Speichern Sie die Destination (Methode: storeDestination).

Destinationen verwenden

Um eine Verbindung unter Verwendung einer Destination herzustellen, gehen Sie folgendermaßen vor:

  1. Suchen Sie mithilfe des JNDI-Services eine Referenz zu der Destination.
  2. Rufen Sie eine Destination ab (Mothode: getDestination).
  3. Öffnen Sie eine Verbindung (Method: getURLConnection).

Siehe auch:

Interfaces und Klassen des Destination-Service-API

Anwendungsbeispiele des Destination-Service-API