Spring Boot——Security(安全管理)
阿新 • • 發佈:2021-06-22
重要前提說明:Spring Boot專案中引入了Spring Security框架後,自動開啟了CSRF防護功能(跨站請求偽造防護——get),所以要實現一些特定功能需要使用post請求。
WebSecurityConfigurerAdapter類中有
configure方法進行身份驗證,實現安全控制。
在這個專案中,通過configure這定義了一個HTTP請求的驗證,因為有CSRF的原因如果網站上
進行get請求都會給此處的流程攔截,
第二步=驗證使用者狀態,根據狀態選擇跳轉的頁面。
此處對三個例外進行說明:
當請求路徑有/login/時,所有角色進行放行。
有/detail/common/時,對common使用者許可權放行。
有/detail/vip/時,對vip使用者許可權放行。
假如我common使用者去訪問/detail/vip/時,就會出現403(拒絕訪問頁面)。
若登入進去後,執行get請求如圖所示:
結果:404
原因:因為在登入進去後,使用者狀態是存在的,那麼便不去攔截此次get請求,而對應的get請求中controller控制層並沒有/mylogout這個路徑,所以會報404.
!!那麼我們去controller層新增上試一下
結果:能正確跳轉到登入頁面。
若想要使用http中的功能(如下),需要使用post請求。