Skip to content

MQTT 5.0 增强认证 - SCRAM

EMQX 提供了基于 Salted Challenge Response Authentication Mechanism(SCRAM)的增强认证功能,此认证器使用 EMQX 内置数据库来存储客户端凭证(用户)。

SCRAM 认证是一种比密码认证更复杂的机制,它依赖与 MQTT 5.0 提供的增强认证机制,需要在连接期间交换额外的 MQTT 报文。同时由于 SCRAM 认证不依赖外部数据源,因此使用更加简单轻量。

TIP

SCRAM 认证仅支持使用 MQTT v5.0 的连接。

通过 Dashboard 配置

EMQX Dashboard 页面,点击左侧导航栏的访问控制 -> 认证,在随即打开的认证页面,单击创建,依次选择认证方式SCRAM数据源Built-in Database,点击下一步进入配置参数步骤:

SCRAM

按照实际需求选择密码加密方式sha256sha512,点击创建完成设置。

通过配置文件配置

配置示例如下:

hcl
{
    mechanism = scram
    backend = built_in_database

    algorithm = sha512
    iteration_count = 4096
}

其中:

  • algorithm:对应 Dashboard 的密码加密方式;可选值:sha256sha512
  • iteration_count(可选):输入一个整数以指定迭代次数,默认值: 4096