クラス AbstractAuthenticationToken

java.lang.ObjectSE
org.springframework.security.authentication.AbstractAuthenticationToken
実装されたすべてのインターフェース:
SerializableSEPrincipalSEAuthenticationCredentialsContainer
既知の直属サブクラス
AbstractOAuth2TokenAuthenticationTokenAnonymousAuthenticationTokenBearerTokenAuthenticationTokenCasAssertionAuthenticationTokenCasAuthenticationTokenCasServiceTicketAuthenticationTokenOAuth2AuthenticationTokenOAuth2AuthorizationCodeAuthenticationTokenOAuth2LoginAuthenticationTokenPreAuthenticatedAuthenticationTokenRememberMeAuthenticationTokenRunAsUserTokenSaml2AuthenticationSaml2AuthenticationTokenTestingAuthenticationTokenUsernamePasswordAuthenticationToken

public abstract class AbstractAuthenticationToken extends ObjectSE implements Authentication, CredentialsContainer
Authentication オブジェクトの基本クラス。

このクラスを使用する実装は不変でなければなりません。

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

    • AbstractAuthenticationToken

      public AbstractAuthenticationToken(CollectionSE<? extends GrantedAuthority> authorities)
      指定された権限の配列を使用してトークンを作成します。
      パラメーター:
      authorities - この認証オブジェクトによって表されるプリンシパルの GrantedAuthority のコレクション。
  • メソッドの詳細

    • getAuthorities

      public CollectionSE<GrantedAuthority> getAuthorities()
      インターフェースからコピーされた説明: Authentication
      プリンシパルが許可されたことを権限に示すために、AuthenticationManager によって設定されます。信頼できる AuthenticationManager によって設定されていない限り、クラスはこの値が有効であることに依存してはならないことに注意してください。

      実装では、返されたコレクション配列への変更が認証オブジェクトの状態に影響を与えないようにするか、変更不可能なインスタンスを使用する必要があります。

      次で指定:
      インターフェース AuthenticationgetAuthorities 
      戻り値:
      プリンシパルに付与された権限、またはトークンが認証されていない場合は空のコレクション。非 null。
    • getName

      public StringSE getName()
      次で指定:
      インターフェース PrincipalSEgetName 
    • isAuthenticated

      public boolean isAuthenticated()
      インターフェースからコピーされた説明: Authentication
      認証トークンを AuthenticationManager に提示する必要があるかどうかを AbstractSecurityInterceptor に示すために使用されます。通常、AuthenticationManager (または、より頻繁には、その AuthenticationProvider の 1 つ)は、認証が成功した後、不変の認証トークンを返します。この場合、トークンは true をこのメソッドに安全に返すことができます。true を返すとパフォーマンスが向上します。リクエストごとに AuthenticationManager を呼び出す必要がなくなるためです。

      セキュリティ上の理由から、このインターフェースの実装は、不変であるか、元の作成以降プロパティが変更されていないことを保証する方法がない限り、このメソッドから true を返すことに十分注意する必要があります。

      次で指定:
      インターフェース AuthenticationisAuthenticated 
      戻り値:
      トークンが認証され、AbstractSecurityInterceptor が再認証のために再度 AuthenticationManager にトークンを提示する必要がない場合は true。
    • setAuthenticated

      public void setAuthenticated(boolean authenticated)
      インターフェースからコピーされた説明: Authentication
      詳細については、Authentication.isAuthenticated() を参照してください。

      実装では、このメソッドが false パラメーターで呼び出されることをに許可する必要があります。これは、認証トークンを信頼しないように指定するためにさまざまなクラスで使用されるためです。実装が true パラメーター (認証トークンが信頼されていることを示します - 潜在的なセキュリティリスク) を使用した呼び出しを拒否したい場合、実装は IllegalArgumentExceptionSE をスローする必要があります。

      次で指定:
      インターフェース AuthenticationsetAuthenticated 
      パラメーター:
      authenticated - トークンを信頼する必要がある場合は true (例外が発生する可能性があります)、トークンを信頼しない場合は false 
    • getDetails

      public ObjectSE getDetails()
      インターフェースからコピーされた説明: Authentication
      認証リクエストに関する追加の詳細を保存します。これらは、IP アドレス、証明書のシリアル番号などです。
      次で指定:
      インターフェース AuthenticationgetDetails 
      戻り値:
      認証リクエストに関する追加の詳細、または使用しない場合は null 
    • setDetails

      public void setDetails(ObjectSE details)
    • eraseCredentials

      public void eraseCredentials()
      CredentialsContainer を実装するものに対して eraseCredentials メソッドを呼び出して、credentialsprincipaldetails オブジェクトをチェックします。
      次で指定:
      インターフェース CredentialsContainereraseCredentials 
    • equals

      public boolean equals(ObjectSE obj)
      次で指定:
      インターフェース PrincipalSEequalsSE 
      オーバーライド:
      クラス ObjectSEequalsSE 
    • hashCode

      public int hashCode()
      次で指定:
      インターフェース PrincipalSEhashCode 
      オーバーライド:
      クラス ObjectSEhashCode 
    • toString

      public StringSE toString()
      次で指定:
      インターフェース PrincipalSEtoString 
      オーバーライド:
      クラス ObjectSEtoString