Spring 的 WebSecurityConfigurerAdapter 過濾器


你需要一個 WebSecurityConfigurerAdapter 來對用戶提供安全的校驗,確保用戶能夠訪問必要的資源。

一個基於 Spring Boot 的應用程序將會幫你完成安全的校驗(通過在 HTTP 的基礎授權上添加自己的 WebSecurityConfigurerAdapter)。

這個將會添加 過濾器鏈表的 Order = 0(這個是默認配置),同時將會保護所有的資源,除非你能夠提供正確的配置。

注解 @EnableResourceServer 將會做同樣的事情,但是過濾器鏈表的順序默認是 Order = 3。

因此可以知道 WebSecurityConfigurerAdapter 和 ResourceServerConfigurerAdapter 都是Spring 使用的過濾器,用來對訪問進行過濾的。

但是過濾的順序是多少呢?

WebSecurityConfigurerAdapter 的 @Order(100)

 

 

如果我們想讓WebSecurityConfigurerAdapter比ResourceServerConfigurerAdapter優先級高的話,只需要讓前者的@Order值比后者的@Order值更低就行了。

@EnableResourceServer 的注解的 Order 是 3

 

 

在spring 的體系里Order值越小優先級越高,所以ResourceServerConfigurerAdapter優先級比另外一個更高,他會優先處理,而WebSecurityConfigurerAdapter會失效。

所以,在不同在上面 2 個定義的過濾器上面,如果你加了注解,會影響過濾器的調用順序。

 

 

比如說這個注解,因為添加到代碼中了,所以這個過濾器會被先調用。

https://www.ossez.com/t/spring-websecurityconfigureradapter/585


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM