Class JsonWebToken

java.lang.Object
io.github.xezzon.zeroweb.auth.JsonWebToken

public final class JsonWebToken extends Object
签发/解码 JWT 的工具类。 提供了基于不同加密算法(ECC、HMAC)的 JWT 签发器和解码器。
Author:
xezzon
  • Field Details

    • USERNAME_CLAIM

      public static final String USERNAME_CLAIM
      JWT 中用于存储用户名的声明(Claim)名称。
      See Also:
    • NICKNAME_CLAIM

      public static final String NICKNAME_CLAIM
      JWT 中用于存储用户昵称的声明(Claim)名称。
      See Also:
    • ROLES_CLAIM

      public static final String ROLES_CLAIM
      JWT 中用于存储用户角色的声明(Claim)名称。
      See Also:
    • GROUPS_CLAIM

      public static final String GROUPS_CLAIM
      JWT 中用于存储用户组的声明(Claim)名称。
      See Also:
    • PERMISSION_CLAIM

      public static final String PERMISSION_CLAIM
      JWT 中用于存储用户权限的声明(Claim)名称。
      See Also:
    • AUTHORIZED_PARTY_CLAIM

      public static final String AUTHORIZED_PARTY_CLAIM
      JWT 中用于存储授权方(Authorized Party)的声明(Claim)名称,通常指 ID 令牌的发行方。
      See Also:
    • AZP_VALUE

      public static final String AZP_VALUE
      JWT 授权方的值,表示由 ZeroWeb 签发。
      See Also:
    • TIMEOUT_CLAIM

      public static final String TIMEOUT_CLAIM
      JWT 中用于存储令牌有效时长的声明(Claim)名称,单位为秒。
      See Also:
    • DEFAULT_TIMEOUT

      public static final Long DEFAULT_TIMEOUT
      JWT 的默认过期时间,单位为秒(2分钟)。
  • Method Details

    • signer

      public static JsonWebToken.Signer signer(ECPrivateKey privateKey)
      创建一个 JWT 签发器,使用 ECC 私钥进行签名。
      Parameters:
      privateKey - 用于签名的 ECC 私钥。
      Returns:
      配置好的 JWT 签发器。
    • signer

      public static JsonWebToken.Signer signer(byte[] secretKey)
      创建一个 JWT 签发器,使用对称密钥进行签名。
      Parameters:
      secretKey - 用于签名的对称密钥。
      Returns:
      配置好的 JWT 签发器。
    • decoder

      public static JsonWebToken.Decoder decoder(ECPublicKey publicKey)
      创建一个 JWT 解码器,使用 ECC 公钥进行验签。
      Parameters:
      publicKey - 用于验签的 ECC 公钥。
      Returns:
      配置好的 JWT 解码器。
    • decoder

      public static JsonWebToken.Decoder decoder(byte[] secretKey)
      创建一个 JWT 解码器,使用对称密钥进行验签。
      Parameters:
      secretKey - 用于验签的对称密钥。
      Returns:
      配置好的 JWT 解码器。