Token登录原理分析
生活随笔
收集整理的這篇文章主要介紹了
Token登录原理分析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Token 是在服務端產生的。如果前端使用用戶名/密碼向服務端請求認證,服務端認證成功,那么在服務端會返回 Token 給前端。前端可以在每次請求的時候帶上 Token 證明自己的合法地位。
Token是什么
token就相當于客戶端登錄的賬號的唯一標識,在做一些數據請求的時候,后臺會要求在請求頭中攜帶token,如果沒有token,或者token過期了,那么這時候就會對這個客戶端進行返回響應的數據,然后前端在解析這些數據,判斷是token過期,還是沒有攜帶token,然后讓用戶進行相應的操作。總而言之,token是在向后臺請求數據的時候必不可少的。如果沒有token,那么后臺要么不會返回響應的數據,要么就會返回一些無關緊要的數據。
簡單token的組成;uid(用戶唯一的身份標識)、time(當前時間的時間戳)、sign(簽名,token的前幾位以哈希算法壓縮成的一定長度的十六進制字符串。為防止token泄露)。
為什么要使用Token
- Token 完全由應用管理,所以它可以避開同源策略
- Token 可以避免 CSRF 攻擊,安全性高
- Token 可以是無狀態的,可以在多個服務間共享
接下來了解一下request和session的區別
- request 指在一次請求的全過程中有效,即從http請求到服務器處理結束,返回響應的整個過程,存放在HttpServletRequest對象中。在這個過程中可以使用forward方式跳轉多個jsp。在這些頁面里你都可以使用這個變量。request是用戶請求訪問的當前組件,以及和當前web組件共享同一用戶請求的web組件。如:被請求的jsp頁面和該頁面用<include>指令包含的頁面以及<forward>標記包含的其它jsp頁面;
- Session是用戶全局變量,在整個會話期間都有效。只要頁面不關閉就一直有效(或者直到用戶一直未活動導致會話過期,默認session過期時間為30分鐘,或調用HttpSession的invalidate()方法)。存放在HttpSession對象中 ,同一個http會話中的web組件共享它。
token主要有兩個作用:
使用基于 Token 的身份驗證方法,在服務端不需要存儲用戶的登錄記錄。大概的流程是這樣的:
客戶端每次向服務端請求資源的時候需要帶著服務端簽發的 Token
總結
以上是生活随笔為你收集整理的Token登录原理分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 同惠LCR测试仪TH2829产品技术参数
- 下一篇: IBM存储扩展柜磁盘在线扩容(二)