クラス OAuth2AuthenticationToken

java.lang.ObjectSE
org.springframework.security.authentication.AbstractAuthenticationToken
org.springframework.security.oauth2.client.authentication.OAuth2AuthenticationToken
実装されているすべてのインターフェース:
SerializableSEPrincipalSEAuthenticationCredentialsContainer

public class OAuth2AuthenticationToken extends AbstractAuthenticationToken
OAuth 2.0 Authentication を表す AbstractAuthenticationToken の実装。

Authentication は、エンドユーザー (Principal) が UserInfo エンドポイントで保護されたリソースにアクセスできるように認可を付与した Authorized Client の識別子に OAuth2User Principal を関連付けます。

導入:
5.0
関連事項:
  • コンストラクターの詳細

    • OAuth2AuthenticationToken

      public OAuth2AuthenticationToken(OAuth2User principal, CollectionSE<? extends GrantedAuthority> authorities, StringSE authorizedClientRegistrationId)
      指定されたパラメーターを使用して OAuth2AuthenticationToken を構築します。
      パラメーター:
      principal - OAuth 2.0 プロバイダーに登録されているユーザー Principal 
      authorities - ユーザーに付与された権限
      authorizedClientRegistrationId - Authorized Client の登録識別子
    • OAuth2AuthenticationToken

      protected OAuth2AuthenticationToken(OAuth2AuthenticationToken.Builder<?> builder)
  • メソッドの詳細

    • getPrincipal

      public OAuth2User getPrincipal()
      インターフェースからコピーされた説明: Authentication
      認証されるプリンシパルの ID。ユーザー名とパスワードを使用した認証リクエストの場合、これはユーザー名になります。呼び出し元は、認証リクエストのプリンシパルを設定することが期待されています。

      多くの場合、 AuthenticationManager 実装は、アプリケーションが使用するプリンシパルとして、より豊富な情報を含む Authentication を返します。認証プロバイダーの多くは、UserDetails オブジェクトをプリンシパルとして作成します。

      戻り値:
      認証される Principal または認証後の認証されたプリンシパル。
    • getCredentials

      public ObjectSE getCredentials()
      インターフェースからコピーされた説明: Authentication
      プリンシパルが正しいことを証明する資格情報。これは通常パスワードですが、AuthenticationManager に関連するものであれば何でもかまいません。呼び出し元は資格情報を入力する必要があります。
      戻り値:
      Principal の身元を証明する資格情報
    • getAuthorizedClientRegistrationId

      public StringSE getAuthorizedClientRegistrationId()
      Authorized Client の登録識別子を返します。
      戻り値:
      承認済みクライアントの登録識別子。
    • toBuilder

      public OAuth2AuthenticationToken.Builder<?> toBuilder()
      インターフェースからコピーされた説明: Authentication
      このインスタンスに基づいて Authentication.Builder を返します。デフォルトでは、SimpleAuthentication を構築するビルダーを返します。

      default 方式ではありますが、すべての Authentication 実装でこれを実装する必要があります。これは、Authentication.Builder.build() が呼び出された際に Authentication 型が保持されることを保証するためです。これは、認証実装にカスタムフィールドが含まれている場合に特に重要です。

      アプリケーションは Authentication インターフェースにコード化することが推奨されており、カスタム情報は多くの場合 Authentication.getPrincipal() 値に含まれているため、これは厳密には必要ではありません。

      戻り値:
      このインスタンスに基づいて新しい Authentication を構築するための Authentication.Builder