emqx-auth-jwtemqx-auth-jwt (opens new window) - 图1 (opens new window)

auth.jwt.secret

TypeDefault
stringemqxsecret
说明

设置 HMAC Secret。

auth.jwt.from

TypeOptional ValueDefault
enumusername, passwordpassword
说明

从什么地方获取 JWT。可选值为:

  • username: MQTT CONNECT 报文的 username 字段作为 JWT。
  • password: MQTT CONNECT 报文的 password 字段作为 JWT。

auth.jwt.pubkey

TypeDefault
stringetc/certs/jwt_public_key.pem
说明

若使用 RSA 或者 ECDSA 加密算法,须指定私钥文件。

auth.jwt.verify_claims

TypeOptional ValueDefault
enumon, offoff
说明

启用或关闭 Claims 校验功能。

auth.jwt.verify_claims.

TypeDefault
string-
说明

启用 Claims 校验功能时,可设置 JWT 中字段的可选值。

例如,若期望 JWT 中的 Claim 字段 sub 的值为 “abc”,则可以配置如下规则:

  1. auth.jwt.verify_claims.sub = abc

期望值支持两个通配符:

  • %u: username
  • %c: clientid

例如,若期望 JWT 中的 Claim 字段 sub 的值与 MQTT CONNECT 报文中 username 字段相同,则可以配置如下规则:

  1. auth.jwt.verify_claims.sub = %u