我尝试将spring配置为允许URL中使用编码的斜杠,但我无法应用该配置
我尝试添加@EnableWebSecurity,但是它似乎并没有改变任何东西。当我放置断点时,将调用@Bean方法,但不会调用configure()。
@Configuration
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@Bean
public HttpFirewall allowUrlEncodedSlashHttpFirewall() {
DefaultHttpFirewall firewall = new DefaultHttpFirewall();
firewall.setAllowUrlEncodedSlash(true);
return firewall;
}
@Override
public void configure(WebSecurity web) throws Exception {
web.httpFirewall(allowUrlEncodedSlashHttpFirewall());
}
}
答案 0 :(得分:0)
我设法使其使用xml配置工作。我在applicationContext.xml中添加了以下内容:
<bean id="allowUrlEncodedSlashHttpFirewall"
class="org.springframework.security.web.firewall.DefaultHttpFirewall">
<property name="allowUrlEncodedSlash" value="true"/>
</bean>
<security:http-firewall ref="allowUrlEncodedSlashHttpFirewall"/>