Admin-Api: Integration vs. Administration

Hallo,

wenn ich mit der API arbeite, habe ich bzgl. OAuth2 folgenden Effekt:

$clientId = "client_id_aus_Integration";
$clientSecret = "client_secret aus Integration";

$body = json_encode([
   'client_id' => $clientId,
   'client_secret' => $clientSecret,
   'grant_type' => 'client_credentials',
]);

$request = new Request(
   'POST',
   getenv('APP_URL') . '/api/oauth/token',
   ['Content-Type' => 'application/json'],
   $body
);

Das klappt prinzipiell und ich kann erfolgreich mit dem access_token Requests auf die API absetzen. Allerdings wird kein refresh_token mitgeliefert. Dadurch ist kein Refresh nach 600 Sekunden möglich.

Wenn ich den $body entsprechend ändere, wird auch ein refresh_token geliefert:

$body = json_encode([
   'client_id' => 'administration',
   'grant_type' => 'password',
   'scopes' => 'write',
   'username' => 'admin',
   'password' => 'password'
]);

Ist das noch eine Unzulänglichkeit in der API, oder gibt es dafür eine logische Erklärung?

Viele Grüße, Frankl 

Hallo,

scheinbar gibt es bei „Integration“ keinen Refresh-Token??? Ich hole mir nun nach Ablauf der 10 Minuten einen neuen Access-Token. Das funktioniert, aber der Sinn des Refresh-Token bleibt weiter im Dunkeln.

Viele Grüße, Frank

Nach OAuth2 RFC soll man auch kein refresh token bei client_credentials rausgeben

https://tools.ietf.org/html/rfc6749#section-4.4.3

1 „Gefällt mir“