你的資料 100% 私隱 - JWT 完全在你的設備上進行解碼和編碼。
所有你關心的關於 JWT 的資訊,以及分步指導如何在不同框架中驗證 JWT。
JWT (JSON Web Token)是一種自包含的、無狀態的令牌,它以結構化和可讀的格式攜帶信息。無論你是在保護 API 或採用基於令牌的身份驗證,JWT 都是一個強大的工具,因為它們:
一個典型的 JWT 被分為三部分,每部分都以 Base64URL 編碼,並且以句點(.)分隔:
此結構使得 JWT 可以在各方之間提供一種緊湊、可靠的資料傳輸方式。
聲明是有效載荷的一部分,包含關鍵資訊。以下是供你參考的標準化註冊聲明:
聲明 | 全名 | 描述 |
---|---|---|
iss | 發行者 | 發行 JWT 的實體,例如授權伺服器。 |
sub | 主題 | 識別 JWT 的主題,通常代表經過身份驗證的用戶。 |
aud | 觀眾 | 指定可以接受和處理令牌的收件人。這可以是多個受眾的值陣列,也可以是一個受眾的單一值。 |
exp | 過期時間 | 設置令牌的過期時間,之後令牌變得無效。這有助於透過限制令牌的有效時間來防止重播攻擊。 |
nbf | 不早於 | 使令牌只有在此時間戳之後才有效。當時鐘無法訪問時,這非常有用。 |
iat | 發行時間 | 令牌被創建的時間。這可用於確定令牌的年齡。 |
jti | JWT ID | 令牌的唯一標識符,用於防止相同令牌被多次使用(例如,在重播攻擊中)。 |
根據授權伺服器的規範和配置,可能會在有效載荷中包含其他聲明,以支持特定的用例。你也可以向 JWT 添加自定義聲明,以滿足獨特的業務需求。
在 OpenID Connect 中使用,它包含有關經過身份驗證的用戶的聲明,例如配置文件資訊(例如,名稱,電子郵件等)。
在 OAuth 2.0 中使用,它代表用戶或應用程序授予對特定資源或 API 的訪問權限。
在以下場景中,JWT 特別有用:
必須驗證 JWT 的完整性,以確保其標頭和有效載荷未被篡改。以下是在流行編程環境中驗證 JWT 的分步示例:
所有你關心的關於 JWT 的資訊,以及分步指導如何在不同框架中驗證 JWT。