クラス X509Configurer<H extends HttpSecurityBuilder<H>>
java.lang.ObjectSE
org.springframework.security.config.annotation.SecurityConfigurerAdapter<DefaultSecurityFilterChain,B>
org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer < X509Configurer <H>, H>
org.springframework.security.config.annotation.web.configurers.X509Configurer<H>
- 実装されたすべてのインターフェース:
SecurityConfigurer<DefaultSecurityFilterChain,
H>
public final class X509Configurer<H extends HttpSecurityBuilder<H>>
extends AbstractHttpConfigurer<X509Configurer<H>,H>
X509 ベースの事前認証をアプリケーションに追加します。証明書の検証はクライアントが接続するときに行われるため、クライアント証明書のリクエストと検証はコンテナーによって実行される必要があります。次に、Spring Security は証明書を使用して、ユーザーの
Authentication
を検索します。セキュリティフィルター
次のフィルターが読み込まれます
作成された共有オブジェクト
次の共有オブジェクトが作成されます
AuthenticationEntryPoint
にはHttp403ForbiddenEntryPoint
が読み込まれますPreAuthenticatedAuthenticationProvider
はHttpSecurity.authenticationProvider(org.springframework.security.authentication.AuthenticationProvider)
に読み込まれます
使用される共有オブジェクト
次の共有オブジェクトが使用されます。
AuthenticationUserDetailsService
が指定されていない場合は、UserDetailsService
共有オブジェクトが使用されます
- 導入:
- 3.2
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明authenticationDetailsSource
(AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest, PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails> authenticationDetailsSource) AuthenticationDetailsSource
を指定しますauthenticationUserDetailsService
(AuthenticationUserDetailsService<PreAuthenticatedAuthenticationToken> authenticationUserDetailsService) 使用するAuthenticationUserDetailsService
を指定します。void
SecurityBuilder
に必要なプロパティを設定して、SecurityBuilder
を構成します。void
SecurityBuilder
を初期化します。subjectPrincipalRegex
(StringSE subjectPrincipalRegex) 証明書からプリンシパルを抽出する正規表現を指定します。userDetailsService
(UserDetailsService userDetailsService) x509AuthenticationFilter
(X509AuthenticationFilter x509AuthenticationFilter) X509AuthenticationFilter
全体を指定できます。x509PrincipalExtractor
(X509PrincipalExtractor x509PrincipalExtractor) X509PrincipalExtractor
を指定しますクラス org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer から継承されたメソッド
disable, getSecurityContextHolderStrategy, withObjectPostProcessor
クラス org.springframework.security.config.annotation.SecurityConfigurerAdapter から継承されたメソッド
addObjectPostProcessor, and, getBuilder, postProcess, setBuilder
コンストラクターの詳細
X509Configurer
public X509Configurer()新しいインスタンスを作成します- 関連事項:
メソッドの詳細
x509AuthenticationFilter
public X509Configurer<H> x509AuthenticationFilter(X509AuthenticationFilter x509AuthenticationFilter) X509AuthenticationFilter
全体を指定できます。これを指定すると、X509Configurer
のプロパティはX509AuthenticationFilter
に入力されません。- パラメーター:
x509AuthenticationFilter
- 使用するX509AuthenticationFilter
- 戻り値:
- さらにカスタマイズするための
X509Configurer
x509PrincipalExtractor
X509PrincipalExtractor
を指定します- パラメーター:
x509PrincipalExtractor
- 使用するX509PrincipalExtractor
- 戻り値:
- 使用する
X509Configurer
authenticationDetailsSource
public X509Configurer<H> authenticationDetailsSource(AuthenticationDetailsSource<jakarta.servlet.http.HttpServletRequest, PreAuthenticatedGrantedAuthoritiesWebAuthenticationDetails> authenticationDetailsSource) AuthenticationDetailsSource
を指定します- パラメーター:
authenticationDetailsSource
- 使用するAuthenticationDetailsSource
- 戻り値:
- 使用する
X509Configurer
userDetailsService
UserDetailsByNameServiceWrapper
でauthenticationUserDetailsService(AuthenticationUserDetailsService)
を呼び出すためのショートカット。- パラメーター:
userDetailsService
- 使用するUserDetailsService
- 戻り値:
- さらにカスタマイズするための
X509Configurer
authenticationUserDetailsService
public X509Configurer<H> authenticationUserDetailsService(AuthenticationUserDetailsService<PreAuthenticatedAuthenticationToken> authenticationUserDetailsService) 使用するAuthenticationUserDetailsService
を指定します。指定しない場合、UserDetailsService
Bean がデフォルトで使用されます。- パラメーター:
authenticationUserDetailsService
- 使用するAuthenticationUserDetailsService
- 戻り値:
- さらにカスタマイズするための
X509Configurer
subjectPrincipalRegex
証明書からプリンシパルを抽出する正規表現を指定します。指定しない場合、SubjectDnX509PrincipalExtractor
のデフォルトの式が使用されます。- パラメーター:
subjectPrincipalRegex
- 証明書からユーザープリンシパルを抽出するための正規表現(つまり、"CN=(.*?)(?:, |$)")。- 戻り値:
- さらにカスタマイズするための
X509Configurer
init
インターフェースからコピーされた説明:SecurityConfigurer
SecurityBuilder
を初期化します。ここでは、共有状態のみを作成および変更する必要がありますが、オブジェクトの構築に使用されるSecurityBuilder
のプロパティは作成および変更しないでください。これにより、構築時にSecurityConfigurer.configure(SecurityBuilder)
メソッドが正しい共有オブジェクトを使用するようになります。ここで設定を適用する必要があります。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain,
のH extends HttpSecurityBuilder<H>> init
- オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain,
のH extends HttpSecurityBuilder<H>> init
configure
インターフェースからコピーされた説明:SecurityConfigurer
SecurityBuilder
に必要なプロパティを設定して、SecurityBuilder
を構成します。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain,
のH extends HttpSecurityBuilder<H>> configure
- オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain,
のH extends HttpSecurityBuilder<H>> configure