[英]Enabling Spring Security without AbstractSecurityWebApplicationInitializer
我有一個基於Spring的Web應用程序(不是Spring Boot),並且正在嘗試啟用Spring Security。
我可以通過擴展AbstractSecurityWebApplicationInitializer
來啟用它,並且效果很好。 但是我想使用@EnableWebSecurity
做到這@EnableWebSecurity
,而無需擴展AbstractSecurityWebApplicationInitializer
。 但是僅此注釋不能啟用它。 有沒有辦法做到這一點,或者僅此注釋解決方案僅適用於Spring Boot?
謝謝。
在非引導環境中,您可能正在使用調度程序servlet初始化程序類,例如,擴展AbstractAnnotationConfigDispatcherServletInitializer
。 您可以這樣注冊安全過濾器鏈:
private static void initSecurityFilter(ServletContext servletContext) {
FilterRegistration.Dynamic securityFilter = servletContext.addFilter("springSecurityFilterChain",
DelegatingFilterProxy.class);
final EnumSet<DispatcherType> es = EnumSet.of(DispatcherType.REQUEST, DispatcherType.FORWARD);
securityFilter.addMappingForUrlPatterns(es, true, "/*");
}
並從onStartup
調用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.