クラス ClientSecretAuthenticationProvider
java.lang.ObjectSE
org.springframework.security.oauth2.server.authorization.authentication.ClientSecretAuthenticationProvider
- 実装済みのインターフェース一覧:
AuthenticationProvider
public final class ClientSecretAuthenticationProvider
extends ObjectSE
implements AuthenticationProvider
OAuth 2.0 クライアント認証に使用される
AuthenticationProvider 実装。これは、client_secret パラメーターを認証します。コンストラクター概要
コンストラクターコンストラクター説明ClientSecretAuthenticationProvider(RegisteredClientRepository registeredClientRepository, OAuth2AuthorizationService authorizationService) 指定されたパラメーターを使用してClientSecretAuthenticationProviderを構築します。方法の概要
修飾子と型メソッド説明authenticate(Authentication authentication) AuthenticationManager.authenticate(Authentication)と同じ契約で認証を実行します。voidsetPasswordEncoder(PasswordEncoder passwordEncoder) client secretを検証するために使用されるPasswordEncoderを設定します。booleanこのAuthenticationProviderが指定されたAuthenticationオブジェクトをサポートしている場合は、trueを返します。
コンストラクターの詳細
ClientSecretAuthenticationProvider
public ClientSecretAuthenticationProvider(RegisteredClientRepository registeredClientRepository, OAuth2AuthorizationService authorizationService) 指定されたパラメーターを使用してClientSecretAuthenticationProviderを構築します。- パラメーター:
registeredClientRepository- 登録済みクライアントのリポジトリauthorizationService- 認可サービス
メソッドの詳細
setPasswordEncoder
client secretの検証に使用するPasswordEncoderを設定します。設定されていない場合は、クライアントシークレットはPasswordEncoderFactories.createDelegatingPasswordEncoder()を使用して比較されます。- パラメーター:
passwordEncoder- クライアントシークレットの検証に使用されるPasswordEncoder
authenticate
インターフェースからコピーされた説明:AuthenticationProviderAuthenticationManager.authenticate(Authentication)と同じ契約で認証を実行します。- 次で指定:
- インターフェース
AuthenticationProviderのauthenticate - パラメーター:
authentication- 認証リクエストオブジェクト。- 戻り値:
- 資格情報を含む完全に認証されたオブジェクト。
AuthenticationProviderが、渡されたAuthenticationオブジェクトの認証をサポートできない場合、nullを返すことがあります。そのような場合、提示されたAuthenticationクラスをサポートする次のAuthenticationProviderが試行されます。 - 例外:
AuthenticationException- 認証が失敗した場合。
supports
インターフェースからコピーされた説明:AuthenticationProviderこのAuthenticationProviderが指定されたAuthenticationオブジェクトをサポートする場合、trueを返します。trueを返しても、AuthenticationProviderが提示されたAuthenticationオブジェクトを認証できることは保証されません。これは単に、より詳細な評価をサポートできることを示しているだけです。AuthenticationProviderは、AuthenticationProvider.authenticate(Authentication)メソッドからnullを返して、別のAuthenticationProviderを試す必要があることを示すことができます。認証を実行できる
AuthenticationProviderの選択は、実行時にProviderManagerによって行われます。- 次で指定:
- インターフェース
AuthenticationProviderのsupports - 戻り値:
- 実装が提示された
Authenticationクラスをより厳密に評価できる場合はtrue