emqx 添加訪問賬號方式

在閱讀該教程之前,假定你已經瞭解 MQTTEMQX 的簡單知識。

emqx_auth_username 它通過比對每個終端的接入的 username 和 password 與 EMQ X 中存儲的是否一致來實現終端接入的控制。其功能邏輯如下:

emqx_auth_username 目前版本僅提供了 連接認證 的功能。且提供了 CLI 和 REST API 來進行管理當前集羣中的 Username 庫

插件配置項說明

在這裏給出了其 3.1.0 版本默認的配置文件。其內容非常的簡單,主要包括:

1.Password 密文加密類型

終端在連接時,必須採用對用加密類型的密文纔可以成功連接

## Password hash.
##
## Value: plain | md5 | sha | sha256
auth.user.password_hash = sha256

Username 管理

CLI 命令

在成功啓動 emqx_auth_username 該插件時,會向 EMQ X 註冊一些 CLI 命令以在運行時管理 username:

$ ./bin/emqx_ctl users

users list                                     
users add <Username> <Password>                
users update <Username> <NewPassword>          
users del <Username>                           

REST API

在成功啓動 emqx_auth_username 該插件時,會開啓對應的 REST API 用於在運行時管理 username

獲取所有的 username

# Request
GET api/v3/auth_username

# Response
{
   "code": 0,
   "data": ["username1"]
}

添加一個 username:

# Request
POST api/v3/auth_username
{
   "username": "some_name",
   "password": "password"
}

# Response
{
   "code": 0
}

更新某 username 的密碼 :

# Request
PUT api/v3/auth_username/$NAME
{
   "password": "password"
}

# Response
{
   "code", 0
}

查看某 username 的密碼 (密文):

# Request
GET api/v3/auth_username/$NAME

# Response
{
   "code": 0,
   "data": {
       "username": "some_username",
       "password": "hashed_password"
   }
}

刪除某 username:

# Request
DELETE api/v3/auth_username/$NAME

# Response
{
   "code": 0
}
發佈了202 篇原創文章 · 獲贊 88 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章