说明

auth.mysql.pool

TypeDefault
integer8
说明

数据库连接线程池大小。

auth.mysql.username

TypeDefault
string-
说明

MySQL 用户名。

TypeDefault
string-
说明

auth.mysql.database

说明

MySQL 数据库名称。

auth.mysql.query_timeout

TypeDefault
duration5s
说明

MySQL 数据查询超时时间。查询超时将等同于未找到用户数据处理。

TypeDefault
stringselect password from mqtt_user where username = ‘%u’ limit 1
说明
占位符说明
%u将被替换为 MQTT 客户端在 CONNECT 报文中指定的用户名
%c将被替换为 MQTT 客户端在 CONNECT 报文中指定的客户端标识符
%C将被替换为 TLS 连接时客户端证书中的 Common Name
%d将被替换为 TLS 连接时客户端证书中的 Subject

auth.mysql.password_hash

说明

存储在数据库的密码所使用的加密方式。支持以下加密方式:

  • plain,支持前后加盐,例如
  • md5,支持前后加盐
  • sha,支持前后加盐
  • sha256,支持前后加盐
  • sha512,支持前后加盐
  • pbkdf2,格式为 pbkdf2,<Hashfun>,<Iterations>,<Dklen>。其中,<Hashfun> 为使用的哈希函数,支持 md4md5ripemd160shasha224sha256,,sha512<Iterations> 为迭代次数,<Dklen> 为导出密钥长度。示例:pbkdf2,sha256,1000,20

auth.mysql.super_query

TypeDefault
stringselect is_superuser from mqtt_user where username = ‘%u’ limit 1
说明

超级用户认证时使用的 SQL 选取语句,此语句中所有表名与字段名都可视情况修改,当且仅当选取得到字段的值为 1 时,该用户为超级用户。WHERE 子句中支持的占位符与 auth.mysql.auth_query 相同。

TypeDefault
stringselect allow, ipaddr, username, clientid, access, topic from mqtt_acl where ipaddr = ‘%a’ or username = ‘%u’ or username = ‘$all’ or clientid = ‘%c’
说明
占位符说明
%a将被替换为客户端 IP 地址
%u将被替换为 MQTT 客户端在 CONNECT 报文中指定的用户名
%c将被替换为 MQTT 客户端在 CONNECT 报文中指定的客户端标识符