springsecurity中http.permitall與web.ignoring的區別說明
springsecurity http.permitAll與web.ignoring的區別
- 這兩個都是繼承WebSecurityConfigurerAdapter後重寫的方法
- http.permitAll不會繞開springsecurity驗證,相當於是允許該路徑通過
- web.ignoring是直接繞開spring security的所有filter,直接跳過驗證
web.ignoring()與permitAll
AnonymousAuthenticationFilter,創建認證信息的地方,默認是被認證的,那麼後面就不需要進行鑒權操作瞭
總結
web ignore比較適合配置前端相關的靜態資源,它是完全繞過spring security的所有filter的;
permitAll,會給沒有登錄的用戶適配一個AnonymousAuthenticationToken,設置到SecurityContextHolder,方便後面的filter可以統一處理authentication
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- Spring Security過濾器鏈加載執行流程源碼解析
- 解決使用security和靜態資源被攔截的問題
- 淺談SpringSecurity基本原理
- springSecurity實現簡單的登錄功能
- spring boot security設置忽略地址不生效的解決