spring-security 和shiro目前最主流的安全框架,很好的保護了系統的安全性。shiro實現的原理和spring-security具有異曲同工之妙,學會乙個框架,另乙個框架也會很容易上手。
1 spring-security流程
usernamepasswordauthenticationfilter
||providermanager
||daoauthenticationprovider
(abstractuserdetailsauthenticationprovider)
|| userdetailsservice 這個是最終自己實現的類
實現authenticationentrypoint介面,當匿名請求需要登入的介面時,攔截處理
實現authenticationsuccesshandler介面,當登入成功後,該處理類的方法被呼叫
實現authenticationfailurehandler介面,當登入失敗後,該處理類的方法被呼叫
實現accessdeniedhandler介面,當登入後,訪問介面沒有許可權的時候,該處理類的方法被呼叫
實現logoutsuccesshandler介面,登出的時候呼叫
inte***ce
authenticationmanager
.authenticate
() 認證管理者,
class
providermanger implement authenticationmanager}}
inte***ce
authenticationprovider.authenticate()
abstract abstractuserdetailsauthenticationprovider implement authenticationprovider
abstract
retrieveuser()
;}class
daoauthenticationprovider
extends
abstractuserdetailsauthenticationprovider
}
SpringSecurity自定義登入認證
spring security預設的登入表單只有username和password,但實際業務中我們可能需要使用其他的字段校驗,因此需要重寫認證部分。springsecurityfilterchain org.springframework.web.filter.delegatingfilterpr...
springsecurity Run As認證服務
zhangxin.security.service.roleservice.loadmenu role user,run as temp zhangxin.security.runasdemo.runasdate.showdate role admin,role run as temp object...
Token Cookie Session的認識了解
token token的意思是 令牌 是使用者身份的驗證方式,最簡單的token組成 uid 使用者唯一的身份標識 time 當前時間的時間戳 sign 簽名,由token的前幾位 雜湊演算法壓縮成一定長的十六進製制字串,可以防止惡意第三方拼接token請求伺服器 還可以把不變的引數也放進token...