Skip to content
Snippets Groups Projects
Commit 19be15a2 authored by Andreas Huber's avatar Andreas Huber
Browse files

Dritter Teil der OAuth-Doku

parent fb6c91e9
No related branches found
No related tags found
1 merge request!9Version 0.5
......@@ -133,3 +133,81 @@ Verfahrensschritte:
Wurden alle Prüfschritte erfolgreich absolviert, wird die Anfrage an den Zustelldienst übergeben.
Nach Bearbeitung der Anfrage im Zustelldienst wird die Antwort des Zustelldienstes an den Client zurückgesendet.
## Testverfahren mit dem Tool Postman
Für Tests kann auch SoapUI oder jeder andere REST Client mit OAuth 2.0 Unterstützung eingesetzt werden.
Unter diesen beiden Adressen können Sie eine Postman Collection und eine Postman Environment herunterladen:
- Collection: FIXME
- Environment: FIXME
### API Aufruf mit Postman OAuth 2.0 Konfiguration
Mit diesen Angaben können Sie das API z.B. via Postman nutzen. Dazu wählen sie zunächst den Bereich "Authorization" aus. Danach kann der Button "Get New Access Token" genutzt werden.
![Authorization konfigurieren](https://raw.githubusercontent.com/fiep-poc/assets/master/images/oauth/14_authorization.png)
![Token holen](https://raw.githubusercontent.com/fiep-poc/assets/master/images/oauth/15_request_token.png)
![Use Token](https://raw.githubusercontent.com/fiep-poc/assets/master/images/oauth/16_use_token.png)
Mit diesem Token kann das API erfolgreich aufgerufen werden.
![API Aufruf](https://raw.githubusercontent.com/fiep-poc/assets/master/images/oauth/17_api_call.png)
In diesem Beispiel wurde eine neue Destination angelegt.
### API Aufruf mit wget
Sie können auch mit dem Kommandozeilentool "wget" testen. In diesem Beispiel wird die Liste aller Destinations abgerufen:
```bash
wget --quiet --output-document - \
--method GET \
--timeout=0 \
--header 'Accept: application/json' \
--header 'Authorization: Bearer 5eadf042ef434913a5724d5e5ce38bc0' \
'https://subscriber.fiep-poc.de/subscriber-c94ae37e-dcc5-345e-a530-8651bdfa5f2c/destinations'
```
### Manueller OAuth 2.0 Fluss
Ein Entwickler hat in der Regel keine OAuth 2.0 Funktion direkt zur Verfügung. Daher müssen die Schritte einzeln durchgeführt werden. Um Zugriff auf die APIs zu erhalten muss Ihr Client zuerst einen OAuth Zugriff machen, um mit “client_id“, “client_secret“ ein Zugriffs-Token zu erhalten.
Die URL für den OAuth Zugriff lautet:
https://oauth.fiep-poc.de/invoke/pub.apigateway.oauth2/getAccessToken
Folgende Query Parameter sind dabei mitzugeben:
- grant_type: client_credentials (fix)
- client_id: c1bbee16-fae1-4dc1-b0c6-b75a02b359b0 (Beispiel)
- client_secret: 91e7f6dd-5567-456f-a8be-aac10237c4c8 (Beispiel)
- scope: subscriber-c94ae37e-dcc5-345e-a530-8651bdfa5f2c:manage (Beispiel)
Ein Aufruf mit dem Werkzeug "wget" sieht z.B. wie folgt aus:
```bash
wget --quiet --output-document - \
--method GET \
'https://oauth.fiep-poc.de/invoke/pub.apigateway.oauth2/getAccessToken?grant_type=client_credentials&client_id=c1bbee16-fae1-4dc1-b0c6-b75a02b359b0&client_secret=91e7f6dd-5567-456f-a8be-aac10237c4c8&scope=subscriber-c94ae37e-dcc5-345e-a530-8651bdfa5f2c:manage'
```
Die Antwort sieht in etwa wie folgt aus:
```json
{
"access_token": "0bd226153b394d209a9d57bd7a42ee70",
"token_type": "Bearer",
"expires_in": 3600
}
```
Der Wert für "access_token" wird dann als Header Parameter "Authorization" zusammen mit dem Text "Bearer" verwendet.
Hier wieder ein Beispiel mit dem Tool "wget":
```bash
wget --quiet --output-document - \
--method GET \
--header 'Authorization: Bearer 0bd226153b394d209a9d57bd7a42ee70' \
'https://subscriber.fiep-poc.de/subscriber-c94ae37e-dcc5-345e-a530-8651bdfa5f2c/destinations'
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment