EMQX认证方式

1.内置数据源

  •   Username认证
  •   Cliend ID 认证
  使用配置文件与 EMQ X 内置数据库提供认证数据源,通过 HTTP API 进行管理,足够简单轻量。
 
2.外部数据库
  •   LDAP 认证
  •   MySQL 认证
  •   PostgreSQL 认证
  •   Redis 认证
  •   MongoDB 认证
  外部数据库可以存储大量数据,同时方便与外部设备管理系统集成。
 
3.其他认证 
  •   HTTP 认证
  •   JWT 认证
  JWT 认证可以批量签发认证信息,HTTP 认证能够实现复杂的认证鉴权逻辑。
  更改插件配置后需要重启插件才能生效,部分认证鉴权插件包含 ACL 功能
 
4.认证结果
  认证成功:经过比对客户端认证成功
  认证失败:经过比对客户端认证失败,数据源中密码与当前密码不一致
  忽略认证(ignore):当前认证方式中未查找到认证数据,无法显式判断结果是成功还是失败,交由认证链下一认证方式或匿名认证来判断
 
5.匿名认证
  

 

6.密码加盐规则与哈希方法

  

 

7.如何生成认证信息

  为每个客户端分用户名、Client ID、密码以及 salt(盐)等信息
  使用与 MySQL 认证相同加盐规则与哈希方法处理客户端信息得到密文
  将客户端信息写入数据库,客户端的密码应当为密文信息
 
8.EMQ X身份认证流程
  

 

9.认证链

  

 

posted @ 2021-10-12 18:44  921341593  阅读(463)  评论(0编辑  收藏  举报