使用Jwt令牌做單點登陸

2021-10-23 15:16:38 字數 2298 閱讀 6919

使用springboot搭建後台,整合jwt令牌,作為token

>

>

io.jsonwebtokengroupid

>

>

jjwtartifactid

>

>

0.9.1version

>

dependency

>

jwt

:#jwt配置,提供個jwtutils類去使用

key: kaikai_ty #jwt生成token時的金鑰

expiration

:1500000

#token的過期時間 1500毫秒

@servletcomponentscan

(basepackages="")

//filter過濾器的包路徑

public

class

//將該工具類被放到bean中

@bean

public jwtutils jwt()

} 該類主要用於生成和解析jwt令牌的

//token工具類

@configurationproperties

(prefix =

"jwt"

)public

class

jwtutil

public

void

setkey

(string key)

public

long

getexpiration()

public

void

setexpiration

(long expiration)

//生成token

public string gettoken

(string userno, string password)

"key1", "value1"); ?//新增自定義key:value對

return builder.

compact()

;//生成token

}//解析token

public claims parser

(string token)

}

@configuration

//配置類註解

public

class

loginfilterconfig

extends

webmvcconfigurationsupport

}

@component

@propertysource()

//配置檔案中的url路徑

;//已登入,讓通過,訪問實際介面

}}

(

"login"

)public ajaxrsult login

(@requestparam

(value=

"username"

)string username,

@requestparame

(value=

"password"

)string password)

}我們也可以將token 儲存到資料庫,然後當使用者登陸的時候去查詢資料庫是否有對應的資料,再做判斷,但是這裡設定有的效期不到半小時,沒必要去操作一次資料庫,或者我們可以將token儲存到session中,然後用訪問其他頁面再去session中取tokn也可以,但session會增大伺服器的壓力,建議還是直接根據解析的token的資料,然後查詢資料庫

單點登陸 單點登陸設計

1單點登入基本流程場景1 使用者未登入情況下訪問受限資源 例如 使用者在站點a 登入成功了,這時候使用者再去訪問站點 下的受限資源。private a.do 由於使用者在站點a登入了,那麼在 x.com 域下一定存在authid的cookie,並且redis中一定儲存了使用者的登入資訊。當使用者訪問...

如何使用redis實現令牌登陸

登陸控制器介面 前端js部分 令牌登陸測試介面 public class consts redis的key的管理類 約定 乙個redis key 對映乙個列舉例項 getter public enum rediskeys 拼接出完整redis的key public string join strin...

SSO 單點登陸

1.單點登陸概述 單點登入 single sign on 簡稱為 sso,是目前比較流行的企業業務整合的解決方案之一。sso的定義是在多個應用系統中,使用者只需要登入一次就可以訪問所有相互信任的應用系統。很早期的公司,一家公司可能只有乙個server,慢慢的server開始變多了。每個server都...