クラス WebSecurity
- java.lang.Object
-
- org.springframework.security.config.annotation.AbstractSecurityBuilder<O>
-
- org.springframework.security.config.annotation.AbstractConfiguredSecurityBuilder<javax.servlet.Filter,WebSecurity>
-
- org.springframework.security.config.annotation.web.builders.WebSecurity
- 実装されたすべてのインターフェース:
org.springframework.beans.factory.Aware
、org.springframework.context.ApplicationContextAware
、SecurityBuilder<javax.servlet.Filter>
、org.springframework.web.context.ServletContextAware
public final class WebSecurity extends AbstractConfiguredSecurityBuilder<javax.servlet.Filter,WebSecurity> implements SecurityBuilder<javax.servlet.Filter>, org.springframework.context.ApplicationContextAware, org.springframework.web.context.ServletContextAware
WebSecurity
はWebSecurityConfiguration
によって作成され、Spring Security フィルターチェーン (springSecurityFilterChain) として知られるFilterChainProxy
を作成します。springSecurityFilterChain は、DelegatingFilterProxy
が委譲するFilter
です。WebSecurity
のカスタマイズは、WebSecurityConfigurer
を作成するか、WebSecurityCustomizer
Bean を公開することによって行うことができます。- 導入:
- 3.2
- 関連事項:
EnableWebSecurity
,WebSecurityConfiguration
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 class
WebSecurity.IgnoredRequestConfigurer
Spring Security によって無視されるRequestMatcher
インスタンスを登録できます。class
WebSecurity.MvcMatchersIgnoredRequestConfigurer
コンストラクターのサマリー
コンストラクター コンストラクター 説明 WebSecurity(ObjectPostProcessor<java.lang.Object> objectPostProcessor)
新しいインスタンスを作成します
メソッドのサマリー
クラス org.springframework.security.config.annotation.AbstractConfiguredSecurityBuilder から継承されたメソッド
apply, beforeConfigure, beforeInit, doBuild, getConfigurer, getConfigurers, getOrBuild, getSharedObject, getSharedObjects, objectPostProcessor, postProcess, removeConfigurer, removeConfigurers, setSharedObject
クラス org.springframework.security.config.annotation.AbstractSecurityBuilder から継承されたメソッド
build, getObject
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
インターフェース org.springframework.security.config.annotation.SecurityBuilder から継承されたメソッド
build
コンストラクターの詳細
WebSecurity
public WebSecurity(ObjectPostProcessor<java.lang.Object> objectPostProcessor)
新しいインスタンスを作成します- パラメーター:
objectPostProcessor
- 使用するObjectPostProcessor
- 関連事項:
WebSecurityConfiguration
メソッドの詳細
ignoring
public WebSecurity.IgnoredRequestConfigurer ignoring()
Spring Security が無視する
使用例:RequestMatcher
インスタンスを追加できます。Spring Security が提供する Web セキュリティ(SecurityContext
を含む)は、一致するHttpServletRequest
では使用できません。通常、登録されるリクエストは、静的リソースのみのリクエストである必要があります。動的なリクエストの場合、代わりにすべてのユーザーを許可するようにリクエストをマッピングすることを検討してください。webSecurityBuilder.ignoring() // ignore all URLs that start with /resources/ or /static/ .antMatchers("/resources/**", "/static/**");
または、これにより同じ結果が得られます。webSecurityBuilder.ignoring() // ignore all URLs that start with /resources/ or /static/ .antMatchers("/resources/**").antMatchers("/static/**");
ignoring() の複数の呼び出しも加算的であるため、次も前の 2 つの例と同等です。webSecurityBuilder.ignoring() // ignore all URLs that start with /resources/ .antMatchers("/resources/**"); webSecurityBuilder.ignoring() // ignore all URLs that start with /static/ .antMatchers("/static/**"); // now both URLs that start with /resources/ and /static/ will be ignored
- 戻り値:
- 無視する必要があるリクエストの登録に使用する
WebSecurity.IgnoredRequestConfigurer
httpFirewall
public WebSecurity httpFirewall(HttpFirewall httpFirewall)
HttpFirewall
をカスタマイズできます。デフォルトはStrictHttpFirewall
です。- パラメーター:
httpFirewall
- カスタムHttpFirewall
- 戻り値:
- さらにカスタマイズするための
WebSecurity
debug
public WebSecurity debug(boolean debugEnabled)
Spring Security のデバッグサポートを制御します。- パラメーター:
debugEnabled
- true の場合、Spring Security でデバッグサポートを有効にします。デフォルトは false です。- 戻り値:
WebSecurity
をさらにカスタマイズします。- 関連事項:
EnableWebSecurity.debug()
addSecurityFilterChainBuilder
public WebSecurity addSecurityFilterChainBuilder(SecurityBuilder<? extends SecurityFilterChain> securityFilterChainBuilder)
SecurityFilterChain
インスタンスを作成するビルダーを追加します。通常、このメソッドは
WebSecurityConfiguration.springSecurityFilterChain()
からフレームワーク内で自動的に呼び出されます- パラメーター:
securityFilterChainBuilder
-SecurityFilterChain
インスタンスの作成に使用するビルダー- 戻り値:
- さらにカスタマイズするための
WebSecurity
privilegeEvaluator
public WebSecurity privilegeEvaluator(WebInvocationPrivilegeEvaluator privilegeEvaluator)
使用するWebInvocationPrivilegeEvaluator
を設定します。これが指定されていない場合、securityInterceptor(FilterSecurityInterceptor)
が null 以外のときにDefaultWebInvocationPrivilegeEvaluator
が作成されます。- パラメーター:
privilegeEvaluator
- 使用するWebInvocationPrivilegeEvaluator
- 戻り値:
- さらにカスタマイズするための
WebSecurity
expressionHandler
public WebSecurity expressionHandler(SecurityExpressionHandler<FilterInvocation> expressionHandler)
使用するSecurityExpressionHandler
を設定します。これが指定されていない場合は、DefaultWebSecurityExpressionHandler
が使用されます。- パラメーター:
expressionHandler
- 使用するSecurityExpressionHandler
- 戻り値:
- さらにカスタマイズするための
WebSecurity
getExpressionHandler
public SecurityExpressionHandler<FilterInvocation> getExpressionHandler()
使用するSecurityExpressionHandler
を取得します。- 戻り値:
- さらにカスタマイズするための
SecurityExpressionHandler
getPrivilegeEvaluator
public WebInvocationPrivilegeEvaluator getPrivilegeEvaluator()
使用するWebInvocationPrivilegeEvaluator
を取得します。- 戻り値:
- さらにカスタマイズするための
WebInvocationPrivilegeEvaluator
securityInterceptor
@Deprecated public WebSecurity securityInterceptor(FilterSecurityInterceptor securityInterceptor)
使用すべきではありません。代わりにprivilegeEvaluator(WebInvocationPrivilegeEvaluator)
を使用してくださいFilterSecurityInterceptor
を設定します。通常、これはWebSecurityConfiguration.springSecurityFilterChain()
によって呼び出されます。- パラメーター:
securityInterceptor
- 使用するFilterSecurityInterceptor
- 戻り値:
- さらにカスタマイズするための
WebSecurity
postBuildAction
public WebSecurity postBuildAction(java.lang.Runnable postBuildAction)
ビルドが行われた直後に Runnable を実行します- パラメーター:
postBuildAction
-- 戻り値:
- さらにカスタマイズするための
WebSecurity
requestRejectedHandler
public WebSecurity requestRejectedHandler(RequestRejectedHandler requestRejectedHandler)
RequestRejectedException
を処理するようにハンドラーを設定します- パラメーター:
requestRejectedHandler
-- 戻り値:
- さらにカスタマイズするための
WebSecurity
- 導入:
- 5.7
performBuild
protected javax.servlet.Filter performBuild() throws java.lang.Exception
クラスからコピーされた説明:AbstractConfiguredSecurityBuilder
サブクラスはこのメソッドを実装して、返されるオブジェクトを構築する必要があります。- 次で指定:
- クラス
AbstractConfiguredSecurityBuilder<javax.servlet.Filter,WebSecurity>
のperformBuild
- 戻り値:
- Object が buit であるか、実装で許可されている場合は null
- 例外:
java.lang.Exception
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException
- 次で指定:
- インターフェース
org.springframework.context.ApplicationContextAware
のsetApplicationContext
- 例外:
org.springframework.beans.BeansException
setServletContext
public void setServletContext(javax.servlet.ServletContext servletContext)
- 次で指定:
- インターフェース
org.springframework.web.context.ServletContextAware
のsetServletContext