国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

為什么使用雙token實(shí)現(xiàn)無感刷新用戶認(rèn)證?

這篇具有很好參考價(jià)值的文章主要介紹了為什么使用雙token實(shí)現(xiàn)無感刷新用戶認(rèn)證?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

單token機(jī)制

認(rèn)證機(jī)制:對(duì)與單token的認(rèn)證機(jī)制在我們項(xiàng)目中僅使用一個(gè)Access Token的訪問令牌進(jìn)行用戶身份認(rèn)證和授權(quán)的方案處理。

不足之處:

  • 安全性較低(因?yàn)橹挥幸粋€(gè)token在客戶端和服務(wù)器端之間進(jìn)行傳遞,一目Acess Token被截獲或者被泄露,攻擊者就會(huì)在有效時(shí)間內(nèi)完成模擬用戶行為,訪問所有受保護(hù)資源)
  • 短有效期策略限制無法撒銷會(huì)話(為了提高安全性access token通常設(shè)置的時(shí)間是比較短的,然而需要頻繁的去獲取access token.影響的是用戶的體驗(yàn),尤其是長時(shí)間操作或者是后臺(tái)的服務(wù)場(chǎng)景下就會(huì)遇到一個(gè)瓶矜,而且也無法撤銷對(duì)應(yīng)的匯報(bào),如果某個(gè)token被盜用了,難以立即撤銷這個(gè)token的有效性,從而不能立即中斷攻擊者的訪問權(quán)限)
  • 無代態(tài)刷新問題(若要自動(dòng)去刷新token維持長期的繪畫,單token的機(jī)制需要將刷新的邏輯耦合到具體的業(yè)務(wù)流程當(dāng)中,這就會(huì)增加復(fù)雜性和潛在的安全風(fēng)險(xiǎn))
  • 沒有權(quán)限細(xì)分管理(單一的access token包含所有的授權(quán)信息,不易于對(duì)不同范文或者是力度的一個(gè)資源進(jìn)行精細(xì)化的訪問控制)

雙Token機(jī)制

操作機(jī)制:雙Token主要包含了AccessToken (訪問令牌) 和 RefreshToken (刷新令牌),它的出現(xiàn)就是為了解決單token的不足,所以才會(huì)引入雙token的機(jī)制也就是 RefreshToken (刷新令牌),因?yàn)樗梢匝娱L實(shí)際的繪畫時(shí)間,用戶提供了一種安全的方式來去更新AccessToken,并且在必要的時(shí)候撤銷特定用戶的權(quán)限,而并不會(huì)影響有效的繪畫內(nèi)容。

實(shí)時(shí)上雙token的機(jī)制是 o os 2.0標(biāo)準(zhǔn)中常見的一種實(shí)現(xiàn),主要包含兩個(gè)類型的token,一個(gè)是AccessToken (訪問令牌) ,一個(gè)是RefreshToken (刷新令牌)

AccessToken (訪問令牌):它會(huì)設(shè)置一個(gè)有效時(shí)間較短的令牌內(nèi)容,用于的是用戶每次請(qǐng)求受保護(hù)資源時(shí),進(jìn)行身份驗(yàn)證的操作,通常直接包含在api請(qǐng)求頭或者是URL地址參數(shù)之中,用于證明客戶端其實(shí)是有權(quán)限去訪問特定的資源的

RefreshToken (刷新令牌):刷新令牌,會(huì)設(shè)置一個(gè)有效時(shí)間比較長并且安全存儲(chǔ)比較高的一個(gè)令牌,主要用于AccessToken過期了以后,去重新獲取AccessToken的操作內(nèi)容。我們并不需要用戶去提供一個(gè)特殊的登錄憑證。因?yàn)镽efreshToken 一般不會(huì)頻繁的在網(wǎng)絡(luò)上進(jìn)行傳輸,目的就是為了降低被截取的一個(gè)風(fēng)險(xiǎn)


雙token有很多優(yōu)勢(shì):

  • 安全性提升(因?yàn)锳ccessToken和RefreshToken其實(shí)是會(huì)被分離的,即使AccessToken被盜用了,但是由于有效時(shí)間是比較短的,損失還是可以控制的,同時(shí)RefreshToken的安全性則會(huì)變的更高,一般還不暴露在網(wǎng)絡(luò)的傳輸過程當(dāng)中,攻擊者其實(shí)很難竊取到AccessToken長期的有效訪問權(quán)限)
  • 用戶體驗(yàn)優(yōu)化(RefreshToken可以實(shí)現(xiàn)無感知的token刷新,也就是我們所說的無感刷新,因?yàn)楫?dāng)AccessToken失效的時(shí)候,客戶端就會(huì)自動(dòng)去刷新AccessToken,利用的就是RefreshToken,用戶并不需要進(jìn)行一個(gè)重新的登錄,從而保證操作的連貫性)
  • 權(quán)限控制靈活(而且雙token機(jī)制還有很好的權(quán)限控制靈活性,可以通過控制RefreshToken的有效期,刷新次數(shù)等方式來靈活的管理用戶的繪畫生命周期,并且在必要的時(shí)候去撤銷RefreshToken的內(nèi)容從而終止后續(xù)所以AccessToken的一個(gè)訪問生成)

雙token流程

為什么使用雙token實(shí)現(xiàn)無感刷新用戶認(rèn)證?,服務(wù)器,運(yùn)維

用戶登錄(主要是用戶通過用戶名或者是用戶碼或者其他憑證向服務(wù)器去進(jìn)行訪問)---->?

驗(yàn)證通過?(驗(yàn)證我們的一個(gè)身份,然后服務(wù)器,將會(huì)設(shè)置一個(gè)請(qǐng)求授權(quán))---->

頒發(fā)Access Token & Refresh Token(當(dāng)認(rèn)證成功了以后,頒發(fā)兩個(gè)內(nèi)容,一個(gè)是Access Token 另一個(gè) Refresh Token,Access Token是一個(gè)短期的token(比如幾十分鐘),Refresh Token是一個(gè)長期的token(比如可以設(shè)置幾天或者更長的時(shí)間),這兩個(gè)token都會(huì)返回客戶端)----->

客戶端存儲(chǔ)tokens(并且客戶端會(huì)進(jìn)行對(duì)應(yīng)的存儲(chǔ))--->

客戶端使用Access Token訪問受保護(hù)資源(查看Access Token是否已經(jīng)有過期的風(fēng)險(xiǎn),當(dāng)Access Token即將或者已經(jīng)過期了后,客戶端用Refresh Token向服務(wù)器發(fā)送一個(gè)新的請(qǐng)求,獲取新的Access Token,服務(wù)器驗(yàn)證Refresh Token有效,如Refresh Token有效就會(huì)頒發(fā)一個(gè)新的Access Token,當(dāng)然在此過程中有兩種不同的情況,一種是并不會(huì)刷新Refresh Token還有一種在申請(qǐng)Access Token的時(shí)候還可能會(huì)重新生成Refresh Token,那么這兩個(gè)token的有效期時(shí)間會(huì)從當(dāng)前的時(shí)間段往回深延,具體的選擇需要根據(jù)實(shí)際的業(yè)務(wù)情況進(jìn)行策略的抉擇)--->

客戶端更新存儲(chǔ)的tokens(客戶端接收到新的Access Token以后則需要替換原來的Access Token,并且在新訪問的時(shí)候則使用新的token進(jìn)行一個(gè)訪問)

應(yīng)用場(chǎng)景:

實(shí)時(shí)上雙token我們可以應(yīng)用到,單點(diǎn)登錄,移動(dòng)應(yīng)用或者是web網(wǎng)站應(yīng)用當(dāng)中,或者是第三方授權(quán)操作處理等

注意事項(xiàng):

Refresh Token安全的存儲(chǔ),需要去確定客戶端確保Refresh Token在本地實(shí)現(xiàn)更為安全的存儲(chǔ)操作,需要去避免被泄露,被篡改,而且對(duì)應(yīng)Refresh Token需要去實(shí)時(shí)更為合理的生命周期管理和失效的策略,包括并且不限于我們響應(yīng)的倒退時(shí)間還得去考慮何時(shí)更新或者是廢除Refresh Token,我們需要考慮并發(fā)的處理,防止同一個(gè)Refresh Token在同一時(shí)刻被多次刷新Access Token,目的就是為了防止我們的攻擊行為,那么當(dāng)用戶進(jìn)行系統(tǒng)退出的時(shí)候,注銷的不光是Access Token還得將Refresh Token也進(jìn)行一個(gè)一統(tǒng)刪除,確保用戶在進(jìn)行后續(xù)操作的時(shí)候無法在獲得最新的一個(gè)授權(quán),那么對(duì)于訪問的限制,Refresh Token相關(guān)接口應(yīng)該收到一個(gè)嚴(yán)格的控制,僅限于可性的客戶端才能進(jìn)行對(duì)應(yīng)的訪問處理文章來源地址http://www.zghlxwxcb.cn/news/detail-800488.html

到了這里,關(guān)于為什么使用雙token實(shí)現(xiàn)無感刷新用戶認(rèn)證?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • VUE前端實(shí)現(xiàn)token的無感刷新

    VUE前端實(shí)現(xiàn)token的無感刷新

    說實(shí)話,這個(gè)其實(shí)沒啥好講的,要說有復(fù)雜度的話,也主要是在后端。 實(shí)現(xiàn)token無感刷新對(duì)于前端來說是一項(xiàng)十分常用的技術(shù),其本質(zhì)都是為了優(yōu)化用戶體驗(yàn),當(dāng)token過期時(shí)不需要用戶調(diào)回登錄頁重新登錄,而是當(dāng)token失效時(shí),進(jìn)行攔截,發(fā)送刷新token的請(qǐng)求,獲取最新的tok

    2024年02月05日
    瀏覽(22)
  • VUE前端實(shí)現(xiàn)token的無感刷新,即refresh_token

    通常,對(duì)于一些需要記錄用戶行為的系統(tǒng),在進(jìn)行網(wǎng)絡(luò)請(qǐng)求的時(shí)候都會(huì)要求傳遞一下登錄的token。不過,為了接口數(shù)據(jù)的安全,服務(wù)器的token一般不會(huì)設(shè)置太長,根據(jù)需要一般是1-7天的樣子,token過期后就需要重新登錄。不過,頻繁的登錄會(huì)造成體驗(yàn)不好的問題,因此,需要體

    2024年02月09日
    瀏覽(22)
  • axios封裝終極版實(shí)現(xiàn)token無感刷新及全局loading

    前言 關(guān)于axios全局loading的封裝博主已經(jīng)發(fā)過一次了,這次是在其基礎(chǔ)上增加了token的無感刷新。 token無感刷新流程 首次登錄的時(shí)候會(huì)獲取到兩個(gè)token(AccessToken,RefreshToken) 持久化保存起來(localStorage方案) 正常請(qǐng)求業(yè)務(wù)接口的時(shí)候攜帶AccessToken 當(dāng)接口口返回401權(quán)限錯(cuò)誤時(shí),

    2024年02月21日
    瀏覽(21)
  • 微信小程序自動(dòng)刷新token,無感刷新token

    ??????? 小程序登錄開發(fā)通常是調(diào)用wx.login獲取code,然后發(fā)送到后臺(tái),后臺(tái)請(qǐng)求微信拿到用戶openId,然后根據(jù)openId查詢用戶,有就走登錄流程然后返回token,沒有則創(chuàng)建用戶之后走登錄流程然后返回token,也就是都需要返回一個(gè)有時(shí)效性的token給小程序端,來保持登錄狀態(tài),

    2024年02月12日
    瀏覽(22)
  • 無感刷新 token

    無感刷新 token

    前景提要: ts 簡易封裝 axios,統(tǒng)一 API 實(shí)現(xiàn)在 config 中配置開關(guān)攔截器 axios 實(shí)現(xiàn)請(qǐng)求 loading 效果 無感刷新 token 一般指的是使用 refresh token 無感刷新 access token。 設(shè)置全局請(qǐng)求攔截器,從 localstorage 或其他地方獲取 token 放在請(qǐng)求頭中攜帶。在響應(yīng)攔截器中,判斷響應(yīng)結(jié)果中是否

    2024年02月06日
    瀏覽(21)
  • Vue 無感刷新token

    Vue 無感刷新token

    關(guān)于無感刷新的理解:? 實(shí)現(xiàn)token無感刷新對(duì)于前端來說是一項(xiàng)非常常用的技術(shù),其本質(zhì)是為了優(yōu)化用戶體驗(yàn),當(dāng)token過期時(shí)不需要用戶跳回登錄頁重新登錄,而是當(dāng)token失效時(shí),進(jìn)行攔截,發(fā)送刷新token的請(qǐng)求,獲取最新的token進(jìn)行覆蓋,讓用戶感受不到token已經(jīng)過期 刷新token的一些方案

    2024年02月10日
    瀏覽(24)
  • 【微信小程序】 token 無感刷新

    【微信小程序】 token 無感刷新

    ?本文是作者本人學(xué)習(xí)過程中的筆記總結(jié),若文中有不正確或需要補(bǔ)充的地方,歡迎在評(píng)論區(qū)中留言??? 小程序端登錄時(shí),除了返回用戶信息,還需返回兩個(gè) token 信息 accessToken:用于驗(yàn)證用戶身份 refreshToken:用于刷新 accessToken 當(dāng)請(qǐng)求返回狀態(tài)碼為401(即 accessToken 過期)時(shí)

    2024年01月21日
    瀏覽(23)
  • Facebook 用戶量十分龐大,為什么還使用 MySQL 數(shù)據(jù)庫?

    Facebook 用戶量十分龐大,為什么還使用 MySQL 數(shù)據(jù)庫?

    當(dāng)談到社交媒體巨頭Facebook時(shí),我們立刻想到的是其龐大的用戶基礎(chǔ)和每日海量的數(shù)據(jù)流。然而,您可能會(huì)驚訝地發(fā)現(xiàn),盡管面對(duì)如此巨大的規(guī)模,F(xiàn)acebook 仍然選擇使用 MySQL 數(shù)據(jù)庫作為其核心的數(shù)據(jù)存儲(chǔ)和管理系統(tǒng)。 為什么Facebook沒有選擇其他更強(qiáng)大或更高級(jí)的數(shù)據(jù)庫系統(tǒng)?

    2024年02月04日
    瀏覽(27)
  • [20231023]為什么刷新緩存后輸出記錄順序發(fā)生變化6.txt

    [20231023]為什么刷新緩存后輸出記錄順序發(fā)生變化6.txt --//前幾天做了單表刷新緩存后輸出記錄順序發(fā)生變化的情況,測(cè)試2個(gè)表的情況時(shí)遇到一個(gè)奇怪的現(xiàn)象。 --//我前面的測(cè)試18c,如果使用10046跟蹤看不到我遇到的情況,我想使用strace跟蹤,發(fā)現(xiàn)該機(jī)器配置使用asm,strace跟蹤無法

    2024年02月06日
    瀏覽(38)
  • [20231013]為什么刷新緩存后輸出記錄順序發(fā)生變化3.txt

    [20231013]為什么刷新緩存后輸出記錄順序發(fā)生變化3.txt --//當(dāng)年提的問題,鏈接http://blog.itpub.net/267265/viewspace-2763181/= [20210316]為什么刷新緩存后輸出記錄順序發(fā)生變化.txt, --//正好別人問我,順便我重復(fù)看了一下,順便解答這個(gè)問題,實(shí)際上也許解答不對(duì),許多行為我僅僅是猜測(cè)

    2024年02月08日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包