试用开源版中,dashboard里面设置用户认证模式为mongodb, 密码方式md5,加盐方式为prefix。其他认证模式都禁止了。
dashboard里面的命令是: HMGET mqtt_user:${username} password_hash salt
如果我想加一个clientid的验证(即username通过密码验证,clientid验证这个设备是否存在), 这个命令如何设置。
与此同时,redis对应记录怎么设置。谢谢!
试用开源版中,dashboard里面设置用户认证模式为mongodb, 密码方式md5,加盐方式为prefix。其他认证模式都禁止了。
dashboard里面的命令是: HMGET mqtt_user:${username} password_hash salt
如果我想加一个clientid的验证(即username通过密码验证,clientid验证这个设备是否存在), 这个命令如何设置。
与此同时,redis对应记录怎么设置。谢谢!
我是想做成一个userid对应N个clientid的形式, 即一个登陆账号下面挂很多设备。
你是想问 redis 认证还是 mongodb 认证?
Redis 认证:请参看一下这个文档,里面有一个 HSET 指令的示例: 使用 Redis 进行密码认证 | EMQX 5.2 文档
MongoDB 认证:使用 MongoDB 进行密码认证 | EMQX 5.2 文档
但是 redis 认证目前不支持 ${clientid} 占位符,你可以用 MongoDB 认证来做,Filter 那里填:
{
"username": "${username}",
"clientid": "${clientid}"
}
这样查询的 MongoDB 时候会通过这两个字段作为组合条件查询。
OMG, 我写错了,是redis