クラス 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を指定します。voidSecurityBuilderに必要なプロパティを設定して、SecurityBuilderを構成します。voidSecurityBuilderを初期化します。subjectPrincipalRegex(StringSE subjectPrincipalRegex) 使用すべきではありません。userDetailsService(UserDetailsService userDetailsService) x509AuthenticationFilter(X509AuthenticationFilter x509AuthenticationFilter) X509AuthenticationFilter全体を指定できます。x509PrincipalExtractor(X509PrincipalExtractor x509PrincipalExtractor) X509PrincipalExtractorを指定しますクラス org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer から継承されたメソッド
disable, getRequestMatcherBuilder, getSecurityContextHolderStrategy, withObjectPostProcessorクラス org.springframework.security.config.annotation.SecurityConfigurerAdapter から継承されたメソッド
addObjectPostProcessor, 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を指定します。指定しない場合、UserDetailsServiceBean がデフォルトで使用されます。- パラメーター:
authenticationUserDetailsService- 使用するAuthenticationUserDetailsService- 戻り値:
- さらにカスタマイズするための
X509Configurer
subjectPrincipalRegex
使用すべきではありません。代わりに {x509PrincipalExtractor(X509PrincipalExtractor)を使用してください証明書からプリンシパルを抽出する正規表現を指定します。指定しない場合、SubjectDnX509PrincipalExtractorのデフォルトの式が使用されます。- パラメーター:
subjectPrincipalRegex- 証明書からユーザープリンシパルを抽出するための正規表現(つまり、"CN=(.*?)(?:, |$)")。- 戻り値:
- さらにカスタマイズするための
X509Configurer
init
インターフェースからコピーされた説明:SecurityConfigurerSecurityBuilderを初期化します。ここでは、共有状態のみを作成および変更する必要がありますが、オブジェクトの構築に使用されるSecurityBuilderのプロパティは作成および変更しないでください。これにより、構築時にSecurityConfigurer.configure(SecurityBuilder)メソッドが正しい共有オブジェクトを使用するようになります。ここで設定を適用する必要があります。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain,のH extends HttpSecurityBuilder<H>> init - オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain,のH extends HttpSecurityBuilder<H>> init
configure
インターフェースからコピーされた説明:SecurityConfigurerSecurityBuilderに必要なプロパティを設定して、SecurityBuilderを構成します。- 次で指定:
- インターフェース
SecurityConfigurer<DefaultSecurityFilterChain,のH extends HttpSecurityBuilder<H>> configure - オーバーライド:
- クラス
SecurityConfigurerAdapter<DefaultSecurityFilterChain,のH extends HttpSecurityBuilder<H>> configure
x509PrincipalExtractor(X509PrincipalExtractor)を使用してください