前言
來博客園大約6,7年了,半年前開通了博客的功能,但是一直沒有寫過,想着自己的博客一直空着也不是一回事,總不能占用這資源不做一點貢獻吧。。
最近忙於產品的重新設計與開發,我就挑一個大部分人都會遇到的認證的問題,我在此拋磚引玉下
Token
Token顧明思議令牌的意思,簡單點理解,你要訪問一些特別的資源,則需要一些認證,這就是需要Token,這里的token是統稱
大概百度了一些對應的Token的內容,感覺描述的都比較的傳統,當然今天要講的也是傳統的Token設計哈哈哈
獲得Token之前一般都需要用戶輸入用戶的信息,然后提交(類似登入),一般用戶輸入的就是一個用戶名+密碼,這樣我們可以提交到服務器,然后服務器通過相關的邏輯算法進行驗證,然后返回給用戶一個Token或者在服務器端記錄對應的Session,如果你寫的是前后端不分離的系統,一般都會一個訪問標示,簡單點理解,你的訪問被一個唯一編碼記錄,然后你可以訪問服務器上記錄的一些數據,比如Session。
好吧說了這么多,先把今天要講的通過圖片表達出來
思維圖
最關鍵的是 Token保存在本地,然后默認認為Token能夠解析就默認合法,只有當Token中解析出來的時間戳跟當前的時間比較超時30分鍾的情況下,再進行認證,這樣可以減少每次訪問,每次進行復雜的認證,
於此同時只要對應的加密方式足夠,對應的Token是無法破解的,當然如果把認證的方式單獨拉出來的方式也均是可以的
第一次書寫,沒有太注意格式,敬請諒解