OAuth2でGithub認証に成功しました。Githubを介して取得されるユーザー役割はUSER_ROLEです。認証が成功した後にロールを変更することはできますか?私は、ユーザーのアクセス許可を制御するために、認証が成功した後に取得されたGithubユーザー情報を判断することによって、対応する役割を変更できるかどうかを知りました。getPrincipal()は一意の「名前」を取得します。次に、「名前」(「ADMIN」など)で役割を変更します。'ROLE_ADMIN')")を使用して権限を制御します。他にも優れたソリューションがありますか?私はこのアプリケーションでGithubのOAuth2認証と役割ベースの権利管理を統合したいと考えています。CciradihA答えて0最も簡単なオプションは、現在の認証を取得し、その新しいインスタンスを作成し、SecurityContextHolderの内容を直接設定するで説明したようにSecurityContextHolderで設定することです。understandを読んでください)。09:23:50+0UsernamePasswordTokenが間違っています。OAuthなどの認証方法は異なります。最終的にOAuth2ClientAuthenticationProcessingFilterを再構築し、successfulAuthenticationメソッドをオーバーライドして解決しました。重要な点は、認証が成功した後に、プリンシパルから自分のGithubアカウントであるかどうかを判断することです。次に、SecurityContextHolder.getContext()によるOAuth2Authenticationの現在の正常な認証。GetAuthentication()get。その後、新しい認証を作成し、SecurityContextHolderに新しいOAuth2Authenticationを作成します。Cciradih0やっとOAuth2ClientAuthenticationProcessingFilterを再構築し、successfulAuthenticationメソッドをオーバーライドすることにより解決しました。重要なポイントは、認証が成功した後、プリンシパルから自分のGithubアカウントであるかどうかを判断することです。次に、SecurityContextHolder.getContext()。getAuthentication()によって現在成功している認証OAuth2Authenticationが取得されます。その後、新しい認証を作成し、SecurityContextHolderに新しいOAuth2Authenticationを作成します。Facebook認証が成功した後にユーザーIDを取得できません。User.Identity.IsAuthenticatedは、フォーム認証とsetauthcookieが成功した後でもfalseです。Jenkinsは、JMeterビルドが実際に失敗したときに成功したことを検証します。コミットが成功した後に変更は見られません。Facebook認証が成功した後にユーザーIDを取得できません。User.Identity.IsAuthenticatedは、フォーム認証とsetauthcookieが成功した後でもfalseです。ViệtFrançaise。