InfluxDB-權限管理

身份驗證與授權


InfluxDB的HTTP API和CLI(command line interface),通過簡單的基於證書的內建權限控制,使用API鏈接數據庫。啓動身份驗證後,http請求只有加入證書才能被接受。 

 

設置身份驗證


  1. 創建一個admin用戶
  2. 默認情況下,在配置文件中,身份驗證是關閉的。可以通過設置 [http] 中的 auth-enabled=true 來開啓
  3. 重啓應用

有兩種操作方式:

  • 啓動控制檯後,再設置用戶 auth <username> <password>
$ influx
Connected to http://localhost:8086 version 0.9.4.1
InfluxDB shell 0.9.4.1
> auth user pwd
>
  • 以用戶名密碼啓動:
influx -username useer -password abcd

用戶類型及其權限


管理員

所有管理員有所有數據庫的讀寫權限,並且可以執行以下所有的管理類查詢語句: 
數據庫管理:

◦ CREATE DATABASE, 和 DROP DATABASE 
◦ DROP SERIES 和 DROP MEASUREMENT 
◦ CREATE RETENTION POLICYALTER RETENTION POLICY, 和 DROP RETENTION POLICY 
◦ CREATE CONTINUOUS QUERY 和 DROP CONTINUOUS QUERY

用戶管理: 
◦ Admin user management: 
CREATE USERGRANT ALL PRIVILEGESREVOKE ALL PRIVILEGES, 和 SHOW USERS 
◦ Non-admin user management: 
CREATE USERGRANT [READ,WRITE,ALL], REVOKE [READ,WRITE,ALL], 和 SHOW GRANTS 
◦ General user management: 
SET PASSWORD 和 DROP USER

非管理員用戶

非管理員用戶可以賦一種權限: 
◦ READ 
◦ WRITE 
◦ ALL (READ 和 WRITE ) 
這三種情況可以賦給每個用戶,每個數據庫。

 

用戶管理命令


管理員用戶管理

  • 創建一個新的管理員用戶
CREATE USER <username> WITH PASSWORD '<password>' WITH ALL PRIVILEGES
  • 爲一個已有用戶授權管理員權限
GRANT ALL PRIVILEGES TO <username>
  • 取消用戶權限
REVOKE ALL PRIVILEGES FROM <username>
  • 展示用戶及其權限
SHOW USERS

非管理員用戶管理

  • 創建一個新的普通用戶
CREATE USER <username> WITH PASSWORD '<password>'
  • 爲一個已有用戶授權
GRANT [READ,WRITE,ALL] ON <database_name> TO <username>
  • 取消權限
REVOKE [READ,WRITE,ALL] ON <database_name> FROM <username>
  • 展示用戶在不同數據庫上的權限
SHOW GRANTS FOR <user_name>

普通用戶賬號功能管理

  • 重設密碼
SET PASSWORD FOR <username> = '<password>'
  • 刪除用戶
DROP USER <username>

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章