连接鉴权
quickmsg
Bootstrap.builder()
.authConfig(AuthConfig)
.build()
1
2
3
2
3
# 匿名登录
不需要配置任何认证,则可开启匿名登录
# 固定密码
AuthConfig authConfig = new AuthConfig();
AuthConfig.FixedAuthConfig fixedAuthConfig = new AuthConfig.FixedAuthConfig();
fixedAuthConfig.setUsername("SMQTT");
fixedAuthConfig.setPassword("SMQTT");
authConfig.setFixed(fixedAuthConfig);
1
2
3
4
5
2
3
4
5
# Http认证
AuthConfig authConfig = new AuthConfig();
AuthConfig.HttpAuthConfig httpAuthConfig = new AuthConfig.HttpAuthConfig();
httpAuthConfig.setHost("www.baidu.com");
httpAuthConfig.setPort(443);
httpAuthConfig.setPath("/test");
authConfig.setHttp(httpAuthConfig);
httpAuthConfig.setHeaders(); //设置请求携带的headers
httpAuthConfig.setParams(); // 设置额外的参数
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
请求方式固定 POST body 格式为: {"clientIdentifier":"","username":"","password":""} 返回状态码 200 即可 如果检验失败返回400
# Sql认证
AuthConfig.SqlAuthConfig sqlAuthConfig = new AuthConfig.SqlAuthConfig();
sqlAuthConfig.setAuthSql("SELECT COUNT(1) FROM DEVICE where username =? and password = ? and deviceId =?");
sqlAuthConfig.setDriver("com.mysql.jdbc.Driver");
sqlAuthConfig.setUrl("jdbc:mysql://127.0.0.1:3306/smqtt");
sqlAuthConfig.setUsername("smqtt");
sqlAuthConfig.setPassword("sss");
authConfig.setSql(sqlAuthConfig);
1
2
3
4
5
6
7
2
3
4
5
6
7
默认引入mysql的驱动,如果使用其他数据自行引入驱动,修改对应的driver,查询第一个参数必须是username 第二个参数 password 第三个是 deviceId 默认返回条数就可以,有结果集的时候即判断检验成功,允许登录