關於token的理解

2022-09-09 15:57:19 字數 859 閱讀 9188

什麼是token

token的意思是「令牌」,是服務端生成的一串字串,作為客戶端進行請求的乙個標識。

當使用者第一次登入後,伺服器生成乙個token並將此token返回給客戶端,以後客戶端只需帶上這個token前來請求資料即可,無需再次帶上使用者名稱和密碼。

簡單token的組成;uid(使用者唯一的身份標識)、time(當前時間的時間戳)、sign(簽名,token的前幾位以雜湊演算法壓縮成的一定長度的十六進製制字串。為防止token洩露)。

使用token機制的身份驗證方法,在伺服器端不需要儲存使用者的登入記錄。流程:

客戶端使用使用者名稱和密碼請求登入。服務端收到請求,驗證使用者名稱和密碼。驗證成功後,服務端會生成乙個token,然後把這個token傳送給客戶端。客戶端收到token後把它儲存起來,可以放在cookie或者local storage(本地儲存)裡。客戶端每次向服務端傳送請求的時候都需要帶上服務端發給的token。服務端收到請求,然後去驗證客戶端請求裡面帶著token,如果驗證成功,就向客戶端返回請求的資料。

token的儲存

token可以存到資料庫中,但是有可能查詢token的時間會過長導致token丟失(其實token丟失了再重新認證乙個就好,但是別丟太頻繁,別讓使用者沒事兒就去認證)。

為了避免查詢時間過長,可以將token放到記憶體中。這樣查詢速度絕對就不是問題了,也不用太擔心佔據記憶體,就算token是乙個32位的字串,應用的使用者量在百萬級或者千萬級,也是佔不了多少記憶體的。

token的加密

token是很容易洩露的,如果不進行加密處理,很容易被惡意拷貝並用來登入。加密的方式一般有:

最好是兩種方式結合使用。

還有一點,在網路層面上token使用明文傳輸的話是非常危險的,所以一定要使用https協議。

Token的簡單理解

用裝置mac位址作為token 服務端 服務端接收到該引數後,便用乙個變數來接收,同時將其作為token儲存在資料庫,並將該token設定到session中。客戶端每次請求的時候都要統一攔截,將客戶端傳遞的token和伺服器端session中的token進行對比,相同則登入成功,不同則拒絕。總結 此...

對token的理解

什麼是token token的意思是 令牌 是服務端生成的一串字串,作為客戶端進行請求的乙個標識。當使用者第一次登入後,伺服器生成乙個token並將此token返回給客戶端,以後客戶端只需帶上這個token前來請求資料即可,無需再次帶上使用者名稱和密碼。基於token機制的身份認證 使用token機...

關於推送token

關於token的分類,iso裝置的token分為三種 推送訊息用除錯token 除錯環境下使用 mdm token mdm用,在裝置第二次訪問check in url的時候使用。目前大部分的資料含混的說token是用來區分某一台device裝置,但是沒有區分mdm token和推送訊息用token的...