徐州市建设局招投标网站,100种画册排版图解,手机网站 数据库,外贸看的英文网站emqx使用mysql完成用户密码验证和ACL鉴权emqx使用mysql完成用户密码验证和ACL鉴权摘要#xff1a;前几篇博客介绍的是使用配置文件配置了ACL和客户端用户名密码配置实现生产环境下的安全登录和权限控制#xff0c;各项配置比较繁琐#xff0c;修改起来比较麻烦#xff0c;下…emqx使用mysql完成用户密码验证和ACL鉴权emqx使用mysql完成用户密码验证和ACL鉴权摘要前几篇博客介绍的是使用配置文件配置了ACL和客户端用户名密码配置实现生产环境下的安全登录和权限控制各项配置比较繁琐修改起来比较麻烦下面介绍使用mysql进行统一的管理控制。环境说明1.linux系统下centos 7环境2.使用docker运行emqtt服务器参照https://blog.csdn.net/u011089760/article/details/898925913.进入docker方式参照https://blog.csdn.net/u011089760/article/details/898925914.MySQL版本5.61)配置mysql连接配置加载mysql权限插件如果无法加载可以通过界面配置的方式进行插件的配置和启动mysql数据库建表CREATE TABLE mqtt_acl (id int(11) unsigned NOT NULL AUTO_INCREMENT,allow int(1) DEFAULT NULL COMMENT 0: deny, 1: allow,ipaddr varchar(60) DEFAULT NULL COMMENT IpAddress,username varchar(100) DEFAULT NULL COMMENT Username,clientid varchar(100) DEFAULT NULL COMMENT ClientId,access int(2) NOT NULL COMMENT 1: subscribe, 2: publish, 3: pubsub,topic varchar(100) NOT NULL DEFAULT COMMENT Topic Filter,PRIMARY KEY (id)) ENGINEInnoDB DEFAULT CHARSETutf8;CREATE TABLE mqtt_user( id int(11) unsigned NOT NULL AUTO_INCREMENT,username varchar(100) DEFAULT NULL,password varchar(100) DEFAULT NULL,salt varchar(20) DEFAULT NULL,is_superuser tinyint(1) DEFAULT 0,created datetime DEFAULT NULL, PRIMARY KEY (id), UNIQUE KEY mqtt_username (username) ) ENGINEMyISAM DEFAULT CHARSETutf8;插入ACL鉴权及用户登录账号密码数据数据INSERT INTO mqtt_acl (id, allow, ipaddr, username, clientid, access, topic)VALUES (1,1,NULL,$all,NULL,2,#),(2,0,NULL,$all,NULL,1,$SYS/#),(3,0,NULL,$all,NULL,1,eq #),(5,1,127.0.0.1,NULL,NULL,2,$SYS/#),(6,1,127.0.0.1,NULL,NULL,2,#),(7,1,NULL,dashboard,NULL,1,$SYS/#);如果is_superuser是1的话acl中的控制将不受限制如配置遇到问题或其他技术相关可以留言emqx使用mysql完成用户密码验证和ACL鉴权相关教程