quickcontaxt
Kontakt
BlogHeaderSAPBTP

Tutorial: Erstellen einer OAuth2-Token-Generator-API in der Integration Suite (Part 2)

Dieser Blogbeitrag beinhaltet ein Tutorial mit einer Schritt für Schritt Anleitung zur Entwicklung einer API, die ein OAuth2-Token generiert, das von anderen APIs innerhalb der gleichen BTP-Instanz zu Autorisierungszwecken verwendet werden kann.

Was ist OAuth2?

Siehe: OAuth 2.0

PREREQUSITES

1.     Die Capability „API Management“ muss aktiviert sein

2.     Postman ist installiert (oder ein ähnliches Web-Request Programm)

Schritt 1: Neue API erstellen

Wir erstellen in der SAP BTP Integration Suite eine neue API, die speziell für die Generierung des OAuth2-Tokens konzipiert ist:

In der Integration Suite auf Configure>APIs>API Proxies>Create.

Unspezifische URL wählen, z.B. https://local.com/ oder ein ähnlicher Platzhalter.

Create und Save/Deploy.

Schritt 2: Assign Policy

Oben rechts auf „Policies“ um in den Policy Editor zu gelangen.

Im PreFlow des ProxyEndpoint fügen wir eine „OAuth v2.0“ Policy hinzu, um ein OAuth2 Token zu generieren.

Policy Settings anpassen. Dann Update, Save und Deploy.

 

1.

2.     false

3.     GenerateAccessToken

4.     

5.         client_credentials

6.     

7.

 

 

 

Schritt 3: Create Product

Für eine detaillierte Anleitung siehe: Create a Product | SAP Help Portal

 

Step 4: Application erstellen

In der oberen rechten Navigationsleiste klickt man auf die 9 Punkte und dann auf API Business HUB Enterprise.

API Business Hub Enterprise Cockpit>My Workspace>Create New Application und das vorher erstellte Product hinzufügen und Create und Save.

Nun ist unsere TutorialApplication erstellt.

Falls es Probleme beim Erstellen bzw. Speichern der Application gibt, sollte geprüft werden, ob der jeweilige User die Developer Rolle hat. Dies kann man unter Enterprise Manager>Manage prüfen.

 

Schritt 5: Testing

Zum Testen können wir eine API erstellen, die z.B. den OpenWeather Service nutzt.

Nun fügen wir unter Policies eine 'Verification OAuth2 token' Policy hinzu. Dann Update, Save, Deploy.

 

1.

2.    false

3.    VerifyAccessToken

4.    

5.    

6.

Die generierte API-URL wird nicht direkt funktionieren.

Das liegt daran, dass zuerst ein gültiges Token über die am Anfang erstellte API bereitgestellt werden muss.

 

Um das Problem zu beheben, nutzen wir Postman und erstellen eine neue Request.

 

Im Reiter Authorization wählen wir „OAuth2.0

In Access Token URL fügen wir die API URL ein, die das OAuth2 Token generiert.

Für Client ID und Client Secret gehen wir wieder ins API Business Hub Enterprise Cockpit und fügen die Werte unserer erstellten Application ein.

Außerdem müssen wir noch die Weather API zu unserem Product hinzufügen.

In Postman generiert man nun ein neues Token mit „Get New Access Token

Wenn die Authentication complete ist, weiter auf Procceed.

Bestätigen und „Use Token

Nun mit dem neu generierten Token die GET-Request senden. Falls alles geklappt hat, sollten nun die jeweiligen Wetterdaten im Body angezeigt werden.

Zum Testen können wir in unserer Weather API die Target EndPoint URL abändern, und z.B. die Wetterdaten von Würzburg abfragen.

Neue GET-Request senden:

Johannes May | SAP Developer
Zur Übersicht