mosquitto中auth-plug的mysql认证与授权

2017-01-07 08:43:08来源:CSDN作者:uniom人点击

创建数据库
CREATE DATABASE IF NOT EXISTS mqttdb;




DROPTABLE IF EXISTS users;

CREATE TABLE users (
 id INTEGER AUTO_INCREMENT,
 username VARCHAR(25)NOT NULL,
 pw VARCHAR(128)NOT NULL,
 super INT(1)NOT NULL DEFAULT 0,
 PRIMARY KEY (id)
 );
 

CREATEUNIQUE INDEXusers_usernameON users (username);


DROPTABLE IF EXISTS acls;

CREATE TABLE acls (
 id INTEGER AUTO_INCREMENT,
 username VARCHAR(25)NOT NULL,
 topic VARCHAR(256)NOT NULL,
 rw INTEGER(1)NOT NULL DEFAULT 1, -- 1: read-only, 2: read-write
 PRIMARY KEY (id)
 );
CREATEUNIQUE INDEXacls_user_topicON acls (username, topic(228));


添加数据:

密码为哈希,算法为PBKDF2,有特定格式要求,研究了好久,github上有js,python等,没java版的,写了个

https://github.com/zhyufeng/PBKDF2HmacSHA1

可以测试使用,有用的Star哦。


认证:

添加 用户 zhang2,密码  password,如下


INSERT INTO users (username, pw, super)
 VALUES ('zhang2',
 'PBKDF2$sha1$98$XaIs9vQgmLujKHZG4/B3dNTbeP2PyaVKySTirZznBrE=$2DX/HZDTojVbfgAIdozBi6CihjWP1+akYnh/h9uQfIVl6pLoAiwJe1ey2WW2BnT+',
 0);


授权:

限定zhang2的topic仅仅为loc/zhang2,发收


INSERT INTO acls (username, topic, rw) VALUES ('zhang2','loc/zhang2',1);



相关文章

    无相关信息

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台