关于移动端token解决方案
在開發(fā)web端項(xiàng)目過程中,經(jīng)常會(huì)接觸到cookie、sessionId這些東西,移動(dòng)端開發(fā)過程中,更多會(huì)使用token這個(gè)概念,其實(shí)屬于同一個(gè)概念,都是如何驗(yàn)證用戶的合法性所涉及的概念。
最原始的解決方法可能是生成一個(gè)隨機(jī)數(shù)作為token在服務(wù)端進(jìn)行保存,redis是一個(gè)好的內(nèi)存數(shù)據(jù)保存辦法。
JSON Web Token(JWT)是一個(gè)非常輕巧的規(guī)范。這個(gè)規(guī)范允許我們使用JWT在用戶和服務(wù)器之間傳遞安全可靠的信息。其JWT的組成:
一個(gè)JWT實(shí)際上就是一個(gè)字符串,它由三部分組成,頭部、載荷與簽名。
JWT通過簽名來驗(yàn)證token的合法性,而在很多支付系統(tǒng)中都會(huì)用簽名來驗(yàn)證數(shù)據(jù)的合法性,簽名的方式主要通過非對(duì)稱加密的方式來完成。
用戶的合法性驗(yàn)證在實(shí)際業(yè)務(wù)場景中(登錄登出驗(yàn)證)可能只是一部分,如何保證token的有效性也是業(yè)務(wù)場景中必須考慮的。
現(xiàn)實(shí)場景:
- 用戶白名單:用戶登錄過程中使用特定密碼登錄
- 用戶登出:用戶退出切換賬號(hào)
- 用戶修改密碼:密碼修改后用戶需要登出重新登錄
- 用戶單一設(shè)備登錄:APP賬號(hào)同時(shí)只能一個(gè)設(shè)備登錄,其他設(shè)備必須退出
?JWT 的使用場景,通常是在服務(wù)切換的時(shí)候,用作身份令牌的,比如從 A 服務(wù)跳轉(zhuǎn)到 B 服務(wù)、單點(diǎn)登錄(SSO)中比較廣泛的使用了該技術(shù)。
?
?
?
?
參考:
JWT實(shí)現(xiàn)token驗(yàn)證
基于JWT的Token認(rèn)證機(jī)制實(shí)現(xiàn)及安全問題
JWT(auth0):RS256 非對(duì)稱加密算法實(shí)現(xiàn) Token 的簽發(fā)、驗(yàn)證
總結(jié)
以上是生活随笔為你收集整理的关于移动端token解决方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python学习之爬虫(小甲鱼)
- 下一篇: 电机世界之直流无刷电机(科普文)