クラス AbstractAuthenticationToken
java.lang.ObjectSE
org.springframework.security.authentication.AbstractAuthenticationToken
- 実装されているすべてのインターフェース:
SerializableSE、PrincipalSE、Authentication、CredentialsContainer
- 既知の直属サブクラス
AbstractOAuth2TokenAuthenticationToken、AnonymousAuthenticationToken、BearerTokenAuthenticationToken、CasAssertionAuthenticationToken、CasAuthenticationToken、CasServiceTicketAuthenticationToken、DPoPAuthenticationToken、OAuth2AuthenticationToken、OAuth2AuthorizationCodeAuthenticationToken、OAuth2LoginAuthenticationToken、OneTimeTokenAuthenticationToken、PreAuthenticatedAuthenticationToken、RememberMeAuthenticationToken、RunAsUserToken、Saml2Authentication、Saml2AuthenticationToken、TestingAuthenticationToken、UsernamePasswordAuthenticationToken、WebAuthnAuthentication、WebAuthnAuthenticationRequestToken
public abstract class AbstractAuthenticationToken
extends ObjectSE
implements Authentication, CredentialsContainer
Authentication オブジェクトの基本クラス。このクラスを使用する実装は不変でなければなりません。
- 関連事項:
コンストラクターの概要
コンストラクターコンストラクター説明AbstractAuthenticationToken(CollectionSE<? extends GrantedAuthority> authorities) 指定された権限の配列を使用してトークンを作成します。メソッドのサマリー
修飾子と型メソッド説明booleanvoidCredentialsContainerを実装するものに対してeraseCredentialsメソッドを呼び出して、credentials、principal、detailsオブジェクトをチェックします。プリンシパルが許可されたことを権限に示すために、AuthenticationManagerによって設定されます。認証リクエストに関する追加の詳細を保存します。getName()inthashCode()boolean認証トークンをAuthenticationManagerに提示する必要があるかどうかをAbstractSecurityInterceptorに示すために使用されます。voidsetAuthenticated(boolean authenticated) 詳細については、Authentication.isAuthenticated()を参照してください。voidsetDetails(ObjectSE details) toString()クラス java.lang.ObjectSE から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.security.core.Authentication から継承されたメソッド
getCredentials, getPrincipalインターフェース java.security.PrincipalSE から継承されたメソッド
impliesSE
コンストラクターの詳細
AbstractAuthenticationToken
指定された権限の配列を使用してトークンを作成します。- パラメーター:
authorities- この認証オブジェクトによって表されるプリンシパルの GrantedAuthority のコレクション。
メソッドの詳細
getAuthorities
インターフェースからコピーされた説明:Authenticationプリンシパルが許可されたことを権限に示すために、AuthenticationManagerによって設定されます。信頼できるAuthenticationManagerによって設定されていない限り、クラスはこの値が有効であることに依存してはならないことに注意してください。実装では、返されたコレクション配列への変更が認証オブジェクトの状態に影響を与えないようにするか、変更不可能なインスタンスを使用する必要があります。
- 次で指定:
- インターフェース
AuthenticationのgetAuthorities - 戻り値:
- プリンシパルに付与された権限、またはトークンが認証されていない場合は空のコレクション。非 null。
getName
- 次で指定:
- インターフェース
PrincipalSEのgetName
isAuthenticated
public boolean isAuthenticated()インターフェースからコピーされた説明:Authentication認証トークンをAuthenticationManagerに提示する必要があるかどうかをAbstractSecurityInterceptorに示すために使用されます。通常、AuthenticationManager(または、より頻繁には、そのAuthenticationProviderの 1 つ)は、認証が成功した後、不変の認証トークンを返します。この場合、トークンはtrueをこのメソッドに安全に返すことができます。trueを返すとパフォーマンスが向上します。リクエストごとにAuthenticationManagerを呼び出す必要がなくなるためです。セキュリティ上の理由から、このインターフェースの実装は、不変であるか、元の作成以降プロパティが変更されていないことを保証する方法がない限り、このメソッドから
trueを返すことに十分注意する必要があります。- 次で指定:
- インターフェース
AuthenticationのisAuthenticated - 戻り値:
- トークンが認証され、
AbstractSecurityInterceptorが再認証のために再度AuthenticationManagerにトークンを提示する必要がない場合は true。
setAuthenticated
public void setAuthenticated(boolean authenticated) インターフェースからコピーされた説明:Authentication詳細については、Authentication.isAuthenticated()を参照してください。実装では、このメソッドが
falseパラメーターで呼び出されることを常に許可する必要があります。これは、認証トークンを信頼しないように指定するためにさまざまなクラスで使用されるためです。実装がtrueパラメーター (認証トークンが信頼されていることを示します - 潜在的なセキュリティリスク) を使用した呼び出しを拒否したい場合、実装はIllegalArgumentExceptionSE をスローする必要があります。- 次で指定:
- インターフェース
AuthenticationのsetAuthenticated - パラメーター:
authenticated- トークンを信頼する必要がある場合はtrue(例外が発生する可能性があります)、トークンを信頼しない場合はfalse
getDetails
インターフェースからコピーされた説明:Authentication認証リクエストに関する追加の詳細を保存します。これらは、IP アドレス、証明書のシリアル番号などです。- 次で指定:
- インターフェース
AuthenticationのgetDetails - 戻り値:
- 認証リクエストに関する追加の詳細、または使用しない場合は
null
setDetails
eraseCredentials
public void eraseCredentials()CredentialsContainerを実装するものに対してeraseCredentialsメソッドを呼び出して、credentials、principal、detailsオブジェクトをチェックします。- 次で指定:
- インターフェース
CredentialsContainerのeraseCredentials
equals
- 次で指定:
- インターフェース
PrincipalSEのequalsSE - オーバーライド:
- クラス
ObjectSEのequalsSE
hashCode
public int hashCode()- 次で指定:
- インターフェース
PrincipalSEのhashCode - オーバーライド:
- クラス
ObjectSEのhashCode
toString
- 次で指定:
- インターフェース
PrincipalSEのtoString - オーバーライド:
- クラス
ObjectSEのtoString