- π¦πΉAustria guedressel
We've the same requirement. Our solution is to store the tokens on the user session for later use (potential token refreshing).
Hooking to the "openid_connect_userinfo_save" did the job for us:
/** * Implements hook_openid_connect_userinfo_save(). */ function helbling_user_openid_connect_userinfo_save(UserInterface $account, array $context): void { // Store OpenID Connect tokens for later use. $request = \Drupal::request(); if( ! $request->hasSession() ) { // This is a strange situation: login via openid connect seem to have completed though no // PHP session is available required to keep Drupal's login state. // Β―\_(γ)_/Β― return; } $tokens = $context['tokens']; $request->getSession()->set('oidc_tokens', $tokens); }