クラス KerberosServiceAuthenticationProvider
java.lang.ObjectSE
org.springframework.security.kerberos.authentication.KerberosServiceAuthenticationProvider
- 実装されているすべてのインターフェース:
org.springframework.beans.factory.InitializingBean,AuthenticationProvider
public class KerberosServiceAuthenticationProvider
extends ObjectSE
implements AuthenticationProvider, org.springframework.beans.factory.InitializingBean
Kerberos サービスチケットまたは SPNEGO トークン (Kerberos サービスチケットを含む) を検証する認証プロバイダー。
チケットを検証するためのコードが含まれる KerberosTicketValidator が必要です。このコードは SUN と IBM JRE で異なるためです。
また、ユーザープロパティをロードするための UserDetailsService と、Kerbeos からユーザー名のみを取得する GrantedAuthorities も必要です。
SpnegoAuthenticationProcessingFilter で確認できます。- 導入:
- 1.0
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected voidadditionalAuthenticationChecks(UserDetails userDetails, KerberosServiceRequestToken authentication) サブクラスが、特定の認証リクエストに対して返されたUserDetailsの追加チェックを実行できるようにします。voidauthenticate(Authentication authentication) AuthenticationManager.authenticate(Authentication)と同じ契約で認証を実行します。voidsetTicketValidator(KerberosTicketValidator ticketValidator) Kerberos/SPNEGO チケットを検証するために使用するKerberosTicketValidator。voidsetUserDetailsService(UserDetailsService userDetailsService) ユーザープロパティとGrantedAuthoritiesをロードするために使用するUserDetailsService。booleanこのAuthenticationProviderが指定されたAuthenticationオブジェクトをサポートしている場合は、trueを返します。
コンストラクターの詳細
KerberosServiceAuthenticationProvider
public KerberosServiceAuthenticationProvider()
メソッドの詳細
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
afterPropertiesSet
- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBeanのafterPropertiesSet - 例外:
ExceptionSE
setUserDetailsService
ユーザープロパティとGrantedAuthoritiesをロードするために使用するUserDetailsService。- パラメーター:
userDetailsService- 新しいユーザー詳細サービス
setTicketValidator
Kerberos/SPNEGO チケットを検証するために使用するKerberosTicketValidator。- パラメーター:
ticketValidator- 新しいチケット検証機
additionalAuthenticationChecks
protected void additionalAuthenticationChecks(UserDetails userDetails, KerberosServiceRequestToken authentication) throws AuthenticationException サブクラスが、特定の認証リクエストに対して返されたUserDetailsの追加チェックを実行できるようにします。- パラメーター:
userDetails-UserDetailsServiceから取得authentication- 検証済みKerberosServiceRequestToken- 例外:
AuthenticationException- 資格情報を検証できなかった場合は AuthenticationException (一般的にBadCredentialsException、AuthenticationServiceException)