gpt4 book ai didi

使用java配置的spring security自定义过滤器

转载 作者:行者123 更新时间:2023-12-02 11:47:11 25 4
gpt4 key购买 nike

如何在 java 配置中用自定义过滤器替换默认过滤器?在 XML 中,例如:

<bean id="myFilter" class="lalalal.MyFilter">
<property name="authenticationManager" ref="authenticationManager"/>
</bean>

<security:http auto-config="true">
<security:custom-filter ref="myFilter" position="FORM_LOGIN_FILTER"/>
</security:http>

关于filterBefore、filterAfter和默认过滤器我知道。

最佳答案

假设您对 Spring-security 的 Java 配置有一般性的了解,添加过滤器相对简单( general details of updating spring-security config to java here ):

因此,在您的 WebSecurityConfigurerAdapter 实现中,执行如下操作:

@Configuration
@EnableWebSecurity
class SecurityConfiguration extends WebSecurityConfigurerAdapter {

@Override protected void configure(HttpSecurity http) throws Exception {

//Custom security filters
http.addFilterBefore( myFilter(), BasicAuthenticationFilter.class );

//Rest of the security configuration goes here
...
}

这是一个非常精简的示例 - 但希望有足够的帮助 - 您可以在此处放置额外的安全配置(例如基于角色的限制、csrf、 session 配置等),并且 myFilter() 是另一种定义方法您在设置过滤器的问题中提到的bean。还有一个 addFilterAfter() 方法,您可以选择将过滤器放置在链中的位置。

Here is an example for API security that shows some custom filters being used .

关于使用java配置的spring security自定义过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29975200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com