In diesem Artikel wird gezeigt, wie Sie einen OData-Dienst mithilfe seiner Metadatenbeschreibung importieren. In diesem Artikel dient SAP Gateway Foundation als Beispiel.
In diesem Artikel führen Sie Folgendes durch:
Abrufen von OData-Metadaten aus Ihrem SAP-Dienst
Importieren von OData-Metadaten in API Management, entweder direkt oder nach der Konvertierung in eine OpenAPI-Spezifikation
Ein SAP-System und -Dienst, die als OData v2 oder v4 verfügbar gemacht sind.
Wenn Ihr SAP-Back-End ein selbstsigniertes Zertifikat verwendet (zu Testzwecken), müssen Sie möglicherweise die Überprüfung der Vertrauenskette für SSL deaktivieren. Konfigurieren Sie dazu ein Back-End in Ihrer API Management-Instanz:
Wählen Sie im Azure-Portal unter APIs die Option Back-Ends>+ Hinzufügen aus.
Fügen Sie eine benutzerdefinierte URL hinzu, die auf den SAP-Back-End-Dienst verweist.
Deaktivieren Sie die Optionen Validate certificate chain (Zertifikatkette überprüfen) und Validate certificate name (Zertifikatnamen überprüfen).
Hinweis
Verwenden Sie für Produktionsszenarien die geeigneten Zertifikate für die End-to-End-SSL-Überprüfung.
Abrufen von OData-Metadaten aus Ihrem SAP-Dienst
Rufen Sie die Metadaten-XML aus Ihrem SAP-Dienst mithilfe einer der folgenden Methoden ab. Wenn Sie planen, die Metadaten-XML in eine OpenAPI-Spezifikation zu konvertieren, speichern Sie die Datei lokal.
Verwenden Sie den SAP Gateway-Client (Transaktion /IWFND/GW_CLIENT), oder
Führen Sie einen direkten HTTP-Aufruf aus, um die XML abzurufen: http://<OData server URL>:<port>/<path>/$metadata
Navigieren zur API Management-Instanz
Suchen Sie im Azure-Portal nach API Management-Dienste, und wählen Sie diese Option aus.
Wählen Sie auf der Seite API Management-Dienste Ihre API Management-Instanz aus.
Importieren der API in API Management
Wählen Sie eine der folgenden Methoden aus, um Ihre API in API Management zu importieren: Importieren Sie die Metadaten-XML direkt als OData-API, oder konvertieren Sie die Metadaten-XML in eine OpenAPI-Spezifikation.
Wählen Sie im linken Menü APIs> + API hinzufügen aus.
Wählen Sie unter Aus Definition erstellen die Option OData aus.
Geben Sie API-Einstellungen ein. Sie können Ihre Einstellungen später aktualisieren, indem Sie zur Registerkarte Einstellungen der API wechseln.
Geben Sie in der OData-Spezifikation eine URL für einen OData-Metadatenendpunkt ein. Das ist in der Regel die URL zum Dienststamm, die mit „/$metadata“ angefügt wird. Alternativ können Sie eine lokale OData-XML-Datei zum Importieren auswählen.
Die API wird der Liste APIs hinzugefügt. Die Entitätssätze und Funktionen, die in der OData-Metadatenbeschreibung verfügbar gemacht werden, werden auf der Registerkarte Entitätenmenge und Funktionen der API angezeigt.
Aktualisieren des OData-Schemas
Sie können auf einen Editor im Portal zugreifen, um das OData-Schema Ihrer API anzuzeigen. Wenn sich die API ändert, können Sie das Schema in API Management auch aus einer Datei oder einem OData-Dienstendpunkt aktualisieren.
Navigieren Sie im Portal zu Ihrer API Management-Instanz.
Wählen Sie im linken Menü APIs> Ihre OData-API aus.
Wählen Sie auf der Registerkarte Entitätssätze und Funktionen das Kontextmenü (...) neben einem Entitätssatz oder einer Funktion aus, und wählen Sie Bearbeiten aus.
Überprüfen Sie das Schema. Wenn Sie es aktualisieren möchten, wählen Sie Aus Datei aktualisieren oder Schema vom Endpunkt aktualisieren aus.
Testen der OData-API
Wählen Sie im linken Menü APIs> Ihre OData-API aus.
Wählen Sie auf der Registerkarte Entitätssätze und Funktionen das Kontextmenü (...) neben einem Entitätssatz oder einer Funktion aus, und wählen Sie Testen aus.
Geben Sie in der Testkonsole Vorlagenparameter, Abfrageparameter und Header für Ihren Test ein, und wählen Sie Testen aus. Erfahren Sie mehr über das Testen einer API im Portal.
Konfigurieren Sie im Portal auf der Registerkarte API-Richtlinien Richtlinien für Ihre OData-API.
Konvertieren von OData-Metadaten in OpenAPI-JSON
Konvertieren Sie den OData-XML-Code in das OpenAPI-JSON-Format. Verwenden Sie je nach Metadaten-XML ein OASIS-Open-Source-Tool für OData v2 oder OData v4.
Im Folgenden finden Sie einen Beispielbefehl zum Konvertieren von OData v2-XML für den Testdienst epm_ref_apps_prod_man_srv:
Zu Testzwecken mit einer einzelnen XML-Datei können Sie einen webbasierten Konverter verwenden, der auf dem Open-Source-Tool basiert.
Mit dem Tool oder dem webbasierten Konverter ist die Angabe von <IP-Adresse>:<Port> Ihres SAP OData-Servers optional. Alternativ können Sie diese Informationen später in Ihrer generierten OpenAPI-Spezifikation oder nach dem Importieren in API Management hinzufügen.
Speichern Sie die openapi-spec.json-Datei lokal für den Import in API Management.
Importieren und Veröffentlichen einer Back-End-API
Wählen Sie im Seitennavigationsmenü im Abschnitt APIs die Option APIsaus.
Wählen Sie unter Neue Definition erstellen die Option OpenAPI-Spezifikation aus.
Klicken Sie auf Datei auswählen, und wählen Sie die Datei openapi-spec.json aus, die Sie in einem vorherigen Schritt lokal gespeichert haben.
Geben Sie API-Einstellungen ein. Sie können die Werte während der Erstellung festlegen oder später über die Registerkarte Einstellungen konfigurieren.
Wir empfehlen, im API-URL-Suffix denselben URL-Pfad wie im ursprünglichen SAP-Dienst zu verwenden.
Ermöglicht API Management, den $metadata-Endpunkt zu erreichen, der für die Clientintegration in den OData-Server erforderlich ist.
Dieser erforderliche Vorgang ist nicht in der OpenAPI-Spezifikation enthalten, die Sie generiert und importiert haben.
Fügen Sie eine 200 OK-Antwort hinzu.
HEAD /
Vorgang
BESCHREIBUNG
Weitere Konfiguration des Vorgangs
HEAD /
Ermöglicht dem Client bei Bedarf den Austausch von Tokens für die siteübergreifende Anforderungsfälschung (Cross Site Request Forgery, CSRF) mit dem SAP-Server.
SAP ermöglicht auch den CSRF-Tokenaustausch mithilfe des GET-Verbs.
Der CSRF-Tokenaustausch wird in diesem Artikel nicht behandelt. Einen beispielhaften Richtlinienausschnitt für API Management zum Brokern des Tokenaustauschs finden Sie hier.
–
GET /
Vorgang
BESCHREIBUNG
Weitere Konfiguration des Vorgangs
GET /
Aktiviert die Richtlinienkonfiguration im Dienststammverzeichnis.
Konfigurieren Sie die folgende Richtlinie für einen eingehenden Rewrite-URI, um an Anforderungen, die an das Dienststammverzeichnis weitergeleitet werden, einen nachstehenden Schrägstrich anzufügen:
Diese Richtlinie beseitigt potenzielle Mehrdeutigkeiten von Anforderungen mit oder ohne nachstehende Schrägstriche, die von einigen Back-Ends unterschiedlich behandelt werden.
Steuern des Zugriffs auf ein SAP-Back-End mittels API Management-Richtlinien. Wenn die API beispielsweise als OData-API importiert wird, verwenden Sie die Richtlinie zum Überprüfen der OData-Anforderung. Weitere Informationen finden Sie in den Richtlinienausschnitten für die SAP-Prinzipalweitergabe und das Abrufen eines X-CSRF-Tokens.
Anleitungen zum Bereitstellen, Verwalten und Migrieren von APIs im großen Stil finden Sie unter: