diff --git a/Security/Authenticator/KeycloakAuthenticator.php b/Security/Authenticator/KeycloakAuthenticator.php index 4086f22..47cbceb 100644 --- a/Security/Authenticator/KeycloakAuthenticator.php +++ b/Security/Authenticator/KeycloakAuthenticator.php @@ -37,6 +37,8 @@ public function authenticate(Request $request): Passport { $client = $this->getKeycloakClient(); $accessToken = $this->fetchAccessToken($client); + $keycloakUser = $client->fetchUserFromToken($accessToken); + $username = $keycloakUser->getPreferredUsername(); if (null === $accessToken) { // The token header was empty, authentication fails with HTTP Status // Code 401 "Unauthorized" @@ -44,7 +46,7 @@ public function authenticate(Request $request): Passport } return new SelfValidatingPassport( - new UserBadge($accessToken->getToken(), function() use ($accessToken) { + new UserBadge($username, function() use ($accessToken) { return $this->userProvider->loadUserByIdentifier($accessToken); }) );