spring security實現的token授權

2022-02-18 11:28:13 字數 1878 閱讀 3327

在我的使用者密碼授權文章裡介紹了spring-security的工作過程,不了解的同學,可以先看看使用者密碼授權這篇文章,在

使用者密碼授權模式裡,主要是通過乙個登陸頁進行授權,然後把授權物件寫到session裡,它主要用在mvc框架裡,而對於webapi來說,一般不會採用這種方式,對於webapi

來說,一般會用jwt授權方式,就是token授權碼的方式,每訪問api介面時,在http頭上帶著你的token碼,而大叔自己也寫了乙個簡單的jwt授權模式,下面介紹一下。

/*** 密碼生成策略.

** @return

*/@bean

public passwordencoder passwordencoder()

}對外開放的,需要提供使用者名稱和密碼為引數進行登陸,然後返回token碼,當然也可以使用手機號和驗證碼登陸,授權邏輯是一樣的,獲取使用者資訊都是使用userdetailsservice,

然後開發人員根據自己的業務去重寫loaduserbyusername來獲取使用者實體。

使用者登陸成功後,為它授權及認證,這一步我們會在redis裡建立token與使用者名稱的關係。

public responseentity<?> refreshandgetauthenticationtoken(

@requestparam string username,

@requestparam string password) throws authenticationexception

/*** 登陸與授權.

** @param username .

* @param password .

* @return

*/private string generatetoken(string username, string password)

主要實現了對請求的攔截,獲取http頭上的authorization元素,token碼就在這個鍵裡,我們的token都是採用通用的bearer開頭,當你的token沒有過期時,會

儲存在redis裡,key就是使用者名稱的md5碼,而value就是使用者名稱,當拿到token之後去資料庫或者快取裡拿使用者資訊進行授權即可。

初步理解Spring Security並實踐

spring security如何使用,先在你的專案pom.xml檔案中宣告依賴。org.springframework.bootgroupid spring boot starter securityartifactid dependency 然後建立乙個類並繼承websecurityconfig...

初步理解Spring Security並實踐

spring security如何使用,先在你的專案pom.xml檔案中宣告依賴。org.springframework.boot spring boot starter security 然後建立乙個類並繼承websecurityconfigureradapter這個方法,並在之類中重寫confi...

初步理解Spring Security並實踐

spring security如何使用,先在你的專案pom.xml檔案中宣告依賴。org.springframework.boot spring boot starter security 然後建立乙個類並繼承websecurityconfigureradapter這個方法,並在之類中重寫confi...