public function authenticate(TokenInterface $token) { $email = $token->getCredentials(); $user = $this->user_provider->loadOrCreateUser($email); // Log the user in $new_token = new GithubUserToken($user->getRoles()); $new_token->setUser($user); $new_token->setAuthenticated(true); return $new_token; }