クラス CasAuthenticationProvider
- java.lang.Object
-
- org.springframework.security.cas.authentication.CasAuthenticationProvider
- 実装されているすべてのインターフェース:
org.springframework.beans.factory.Aware、org.springframework.beans.factory.InitializingBean、org.springframework.context.MessageSourceAware、AuthenticationProvider
public class CasAuthenticationProvider extends java.lang.Object implements AuthenticationProvider, org.springframework.beans.factory.InitializingBean, org.springframework.context.MessageSourceAware
JA-SIG 中央認証サービス(CAS)と統合するAuthenticationProvider実装。この
AuthenticationProviderは、CasAuthenticationFilter.CAS_STATEFUL_IDENTIFIERまたはCasAuthenticationFilter.CAS_STATELESS_IDENTIFIERのいずれかに等しいprincipal名を含むUsernamePasswordAuthenticationTokenリクエストを検証することができます。以前に作成したCasAuthenticationTokenを検証することもできます。
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 protected org.springframework.context.support.MessageSourceAccessormessages
コンストラクターの概要
コンストラクター コンストラクター 説明 CasAuthenticationProvider()
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 voidafterPropertiesSet()Authenticationauthenticate(Authentication authentication)AuthenticationManager.authenticate(Authentication)と同じ契約で認証を実行します。protected java.lang.StringgetKey()StatelessTicketCachegetStatelessTicketCache()protected org.jasig.cas.client.validation.TicketValidatorgetTicketValidator()protected UserDetailsloadUserByAssertion(org.jasig.cas.client.validation.Assertion assertion)アサーションに基づいて UserDetails を取得するためのテンプレートメソッド。voidsetAuthenticationUserDetailsService(AuthenticationUserDetailsService<CasAssertionAuthenticationToken> authenticationUserDetailsService)voidsetAuthoritiesMapper(GrantedAuthoritiesMapper authoritiesMapper)voidsetKey(java.lang.String key)voidsetMessageSource(org.springframework.context.MessageSource messageSource)voidsetServiceProperties(ServiceProperties serviceProperties)voidsetStatelessTicketCache(StatelessTicketCache statelessTicketCache)voidsetTicketValidator(org.jasig.cas.client.validation.TicketValidator ticketValidator)voidsetUserDetailsService(UserDetailsService userDetailsService)booleansupports(java.lang.Class<?> authentication)このAuthenticationProviderが指定されたAuthenticationオブジェクトをサポートする場合、trueを返します。
メソッドの詳細
afterPropertiesSet
public void afterPropertiesSet()
- 次で指定:
- インターフェース
org.springframework.beans.factory.InitializingBeanのafterPropertiesSet
authenticate
public Authentication authenticate(Authentication authentication) throws AuthenticationException
インターフェースからコピーされた説明:AuthenticationProviderAuthenticationManager.authenticate(Authentication)と同じ契約で認証を実行します。- 次で指定:
- インターフェース
AuthenticationProviderのauthenticate - パラメーター:
authentication- 認証リクエストオブジェクト。- 戻り値:
- 資格情報を含む完全に認証されたオブジェクト。
AuthenticationProviderが、渡されたAuthenticationオブジェクトの認証をサポートできない場合、nullを返すことがあります。そのような場合、提示されたAuthenticationクラスをサポートする次のAuthenticationProviderが試行されます。 - 例外:
AuthenticationException- 認証が失敗した場合。
loadUserByAssertion
protected UserDetails loadUserByAssertion(org.jasig.cas.client.validation.Assertion assertion)
アサーションに基づいて UserDetails を取得するためのテンプレートメソッド。デフォルトでは、構成された userDetailsService を呼び出してユーザー名を渡します。デプロイヤーはこのメソッドをオーバーライドし、任意の条件に基づいてユーザーを取得できます。- パラメーター:
assertion- CAS アサーション。- 戻り値:
- UserDetails。
setUserDetailsService
public void setUserDetailsService(UserDetailsService userDetailsService)
setAuthenticationUserDetailsService
public void setAuthenticationUserDetailsService(AuthenticationUserDetailsService<CasAssertionAuthenticationToken> authenticationUserDetailsService)
setServiceProperties
public void setServiceProperties(ServiceProperties serviceProperties)
getKey
protected java.lang.String getKey()
setKey
public void setKey(java.lang.String key)
getStatelessTicketCache
public StatelessTicketCache getStatelessTicketCache()
getTicketValidator
protected org.jasig.cas.client.validation.TicketValidator getTicketValidator()
setMessageSource
public void setMessageSource(org.springframework.context.MessageSource messageSource)
- 次で指定:
- インターフェース
org.springframework.context.MessageSourceAwareのsetMessageSource
setStatelessTicketCache
public void setStatelessTicketCache(StatelessTicketCache statelessTicketCache)
setTicketValidator
public void setTicketValidator(org.jasig.cas.client.validation.TicketValidator ticketValidator)
setAuthoritiesMapper
public void setAuthoritiesMapper(GrantedAuthoritiesMapper authoritiesMapper)
supports
public boolean supports(java.lang.Class<?> authentication)
インターフェースからコピーされた説明:AuthenticationProviderこのAuthenticationProviderが指定されたAuthenticationオブジェクトをサポートする場合、trueを返します。trueを返すことは、AuthenticationProviderがAuthenticationクラスの提示されたインスタンスを認証できることを保証しません。それは、それがより詳細な評価をサポートできることを示しています。AuthenticationProviderは、AuthenticationProvider.authenticate(Authentication)メソッドからnullを返して、別のAuthenticationProviderを試す必要があることを示すことができます。認証を実行できる
AuthenticationProviderの選択は、実行時にProviderManagerで行われます。- 次で指定:
- インターフェース
AuthenticationProviderのsupports - 戻り値:
- 実装が提示された
Authenticationクラスをより厳密に評価できる場合はtrue