OAuth 2.0 JSON Web 令牌(JWT)身份验证和授权,用于发布或订阅 MQTT 消息

可以使用 OAuth 2.0 JWT 对 MQTT 客户端进行身份验证,以连接到事件网格命名空间。 可以在 JWT 中嵌入和验证自定义声明,以授权发布或订阅事件网格主题空间的权限。

重要

仅在使用 MQTT v5 协议版本时才支持此功能。

先决条件

使用 OAuth 2.0 JWT 进行身份验证

可以使用 MQTT v5 CONNECT 数据包提供 OAuth 2.0 JWT 对客户端进行身份验证,并使用 MQTT v5 AUTH 数据包刷新令牌。

重要

如果未将 CONNECT 数据包的身份验证方法设置为 CUSTOM-JWT,则即使所有其他配置都正确,也会收到“无效颁发者”错误。

在 CONNECT 数据包中,可以在以下字段中提供所需值:

字段
身份验证方法 CUSTOM-JWT
身份验证数据 JWT

在 AUTH 数据包中,可以在以下字段中提供所需值:

字段
身份验证方法 CUSTOM-JWT
身份验证数据 JWT
身份验证原因代码 二十五

值为 25 的身份验证原因代码表示重新进行身份验证。

注意

受众:aud 声明必须设置为 https://[namespace].ts.eventgrid.azure.net/

访问权限

使用 OAuth 2.0 JWT 身份验证的客户端可以使用客户端属性和权限来限制对特定主题的访问。

后续步骤