• <dd id="3gzlp"></dd>

    <li id="3gzlp"><acronym id="3gzlp"></acronym></li>

    <span id="3gzlp"></span>

    為什么要使用jwt來進行認證授權呢?

    java_jtZ 發布于 06/13 19:16
    閱讀 335
    收藏 0

    面對海量數據,你能否從容應對?>>>

    初學者,學習一個分布式電商項目學到用戶認證授權,項目用的spring security oauth+jwt來實現用戶的認證授權,還有單點登錄。有一點不理解,jwt令牌也是用戶輸入用戶名和密碼后獲得的,那為什么不直接使用用戶名和密碼登錄呢,我能想到的是避免遭到惡意攻擊(惡意用戶注冊很多賬號,不斷請求登錄,導致數據庫宕機),除此之外還有其他原因嗎。望大佬們能夠不吝賜教啊

    加載中
    0
    tcxu
    tcxu

        JS 對象簡譜 網絡令牌 (Json web token, JWT), 是為了在網絡應用環境間傳遞聲明而執行的一種基于JSON的開放標準((RFC 7519)。它是一種 緊湊且安全,且特別適用于分布式站點的單點登錄(SSO)場景的令牌。JWT 由3部分組成:頭部(header), 載荷(payload, 類似于飛機上承載的物品),和 簽證(signature).

        Dearmadman 在 一文 簡書  "什么是 JWT -- JSON WEB TOKEN" 中, 詳述了 傳統的session認證后

    指出 JWT 了優點如下:

    • 因為json的通用性,所以JWT是可以進行跨語言支持的,像JAVA,JavaScript,NodeJS,PHP等很多語言都可以使用。
    • 因為有了payload部分,所以JWT可以在自身存儲一些其他業務邏輯所必要的非敏感信息。
    • 便于傳輸,jwt的構成非常簡單,字節占用很小,所以它是非常便于傳輸的。
    • 它不需要在服務端保存會話信息, 所以它易于應用的擴展

        不過,也有人說"

    0
    風和日麗去流浪
    風和日麗去流浪

    賬號密碼登陸后,正常登陸是隨機生成token存入數據庫,隨時和請求的token做對比。JWT是將一些固定數據加密生成token,沒數據庫的事,每次將請求的token解密,看看是否過期等。所以速度上快,但無法提前限制用戶。

    0
    caixu23
    caixu23

    不好的地方就是不能主動失效,要等到定義在里面的時間過期

    返回頂部
    頂部
    聚看影院