fix: [auth] added keycloak logout

cli-modification-summary
iglocska 2022-10-25 15:08:41 +02:00
parent 9a8372be12
commit 9c41fd548f
No known key found for this signature in database
GPG Key ID: BEA224F1FEF113AC
2 changed files with 15 additions and 0 deletions

View File

@ -354,6 +354,9 @@ class UsersController extends AppController
]);
$this->Authentication->logout();
$this->Flash->success(__('Goodbye.'));
if (Configure::read('keycloak.enabled')) {
$this->redirect($this->Users->keyCloaklogout());
}
return $this->redirect(\Cake\Routing\Router::url('/users/login'));
}
}

View File

@ -185,6 +185,18 @@ class AuthKeycloakBehavior extends Behavior
return !empty($changes);
}
public function keyCloaklogout(): string
{
$keycloakConfig = Configure::read('keycloak');
$logoutUrl = sprintf(
'%s/realms/%s/protocol/openid-connect/logout?redirect_uri=%s',
$keycloakConfig['provider']['baseUrl'],
$keycloakConfig['provider']['realm'],
urlencode(Configure::read('App.fullBaseUrl'))
);
return $logoutUrl;
}
private function getAdminAccessToken()
{
$keycloakConfig = Configure::read('keycloak');