クラス PreAuthenticatedAuthenticationProvider
- java.lang.Object
-
- org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider
- 実装されたすべてのインターフェース:
org.springframework.beans.factory.InitializingBean
、org.springframework.core.Ordered
、AuthenticationProvider
public class PreAuthenticatedAuthenticationProvider extends java.lang.Object implements AuthenticationProvider, org.springframework.beans.factory.InitializingBean, org.springframework.core.Ordered
事前認証された認証リクエストを処理します。通常、リクエストは
AbstractPreAuthenticatedProcessingFilter
サブクラスから発信されます。この認証プロバイダーは、事前に認証されている必要があるため、認証リクエストのチェックを実行しません。ただし、AuthenticationUserDetailsService の実装では、たとえば UsernameNotFoundException が引き続きスローされる場合があります。
- 導入:
- 2.0
コンストラクターのサマリー
コンストラクター コンストラクター 説明 PreAuthenticatedAuthenticationProvider()
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
afterPropertiesSet()
すべての必須プロパティが設定されているかどうかを確認します。Authentication
authenticate(Authentication authentication)
指定された PreAuthenticatedAuthenticationToken を認証します。int
getOrder()
void
setOrder(int i)
void
setPreAuthenticatedUserDetailsService(AuthenticationUserDetailsService<PreAuthenticatedAuthenticationToken> uds)
認証されたユーザーのUserDetails
のロードに使用される AuthenticatedUserDetailsService を設定します。void
setThrowExceptionWhenTokenRejected(boolean throwExceptionWhenTokenRejected)
true の場合、提示された認証リクエストが無効(null プリンシパルまたは資格情報を含む)の場合、プロバイダーは BadCredentialsException をスローします。void
setUserDetailsChecker(UserDetailsChecker userDetailsChecker)
ロードされた UserDetails オブジェクトをユーザーに検証するために使用される戦略を設定します。boolean
supports(java.lang.Class<?> authentication)
このプロバイダーが PreAuthenticatedAuthenticationToken(サブ)クラスのみをサポートすることを示します。
メソッドの詳細
afterPropertiesSet
public void afterPropertiesSet()
すべての必須プロパティが設定されているかどうかを確認します。- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBean
のafterPropertiesSet
authenticate
public Authentication authenticate(Authentication authentication) throws AuthenticationException
指定された PreAuthenticatedAuthenticationToken を認証します。認証オブジェクトに含まれるプリンシパルが null の場合、リクエストは無視され、他のプロバイダーが認証できるようになります。
- 次で指定:
- インターフェース
AuthenticationProvider
のauthenticate
- パラメーター:
authentication
- 認証リクエストオブジェクト。- 戻り値:
- 資格情報を含む完全に認証されたオブジェクト。
AuthenticationProvider
が、渡されたAuthentication
オブジェクトの認証をサポートできない場合、null
を返すことがあります。そのような場合、提示されたAuthentication
クラスをサポートする次のAuthenticationProvider
が試行されます。 - 例外:
AuthenticationException
- 認証が失敗した場合。
supports
public final boolean supports(java.lang.Class<?> authentication)
このプロバイダーが PreAuthenticatedAuthenticationToken(サブ)クラスのみをサポートすることを示します。- 次で指定:
- インターフェース
AuthenticationProvider
のsupports
- 戻り値:
- 実装が提示された
Authentication
クラスをより厳密に評価できる場合はtrue
setPreAuthenticatedUserDetailsService
public void setPreAuthenticatedUserDetailsService(AuthenticationUserDetailsService<PreAuthenticatedAuthenticationToken> uds)
認証されたユーザーのUserDetails
のロードに使用される AuthenticatedUserDetailsService を設定します。- パラメーター:
uds
-
setThrowExceptionWhenTokenRejected
public void setThrowExceptionWhenTokenRejected(boolean throwExceptionWhenTokenRejected)
true の場合、提示された認証リクエストが無効(null プリンシパルまたは資格情報を含む)の場合、プロバイダーは BadCredentialsException をスローします。それ以外の場合は、null を返します。デフォルトは false です。
setUserDetailsChecker
public void setUserDetailsChecker(UserDetailsChecker userDetailsChecker)
ユーザーのロードされた UserDetails オブジェクトを検証するために使用される戦略を設定します。デフォルトはAccountStatusUserDetailsChecker
です。- パラメーター:
userDetailsChecker
-
getOrder
public int getOrder()
- 次で指定:
- インターフェース
org.springframework.core.Ordered
のgetOrder
setOrder
public void setOrder(int i)