#spring #spring-security
#spring #spring-безопасность
Вопрос:
Я попытался настроить 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());
}
}
Ответ №1:
Мне удалось заставить его работать, используя конфигурацию xml. Я добавил следующее в свой applicationContext.xml:
<bean id="allowUrlEncodedSlashHttpFirewall"
class="org.springframework.security.web.firewall.DefaultHttpFirewall">
<property name="allowUrlEncodedSlash" value="true"/>
</bean>
<security:http-firewall ref="allowUrlEncodedSlashHttpFirewall"/>