mongodb3 X許可權配置

2021-07-26 03:55:34 字數 1934 閱讀 1640

環境: centos6.8  mongodb3.4.1

1、連線mongodb資料庫(如果mongo命令沒有做環境變數配置,需要定位到有mongo命令的目錄)

[root@vm_118_34_centos ~]# mongo

mongodb shell version v3.4.1

connecting to: mongodb:

mongodb server version: 3.4.1

2、切換到admin資料庫,並新增管理員,退出(ctrl+c)

db.createuser(  

, pwd: "admin",

roles:

} ) user欄位,為新使用者的名字;

pwd欄位,使用者的密碼;

cusomdata欄位,為任意內容,例如可以為使用者全名介紹;

roles欄位,指定使用者的角色,可以用乙個空陣列給新使用者設定空角色。在roles欄位,可以指定內建角色和使用者定義的角色。

3 、檢視建立的使用者 

show users 或 db.system.users.find()

4、啟用使用者許可權,修改配置檔案,增加配置:

security:

authorization: enabled

配置檔案一般在 /etc/mongod.conf, 可以通過vi編碼

5、重啟mongdb

service mongodb restart

6、測試管理員許可權

mongodb shell version v3.4.1

connecting to: mongodb:

mongodb server version: 3.4.1

> use admin --切換資料庫

switched to db admin

> show dbs --沒授權,展示資料庫會報錯unauthorized

2017-01-11t15:43:07.179+0800 e query [main] error: listdatabases failed:",

"code" : 13,

"codename" : "unauthorized"

} :_geterrorwithcode@src/mongo/shell/utils.js:25:13

mongo.prototype.getdbs@src/mongo/shell/mongo.js:62:1

shellhelper.show@src/mongo/shell/utils.js:755:19

shellhelper@src/mongo/shell/utils.js:645:15

@(shellhelp2):1:1

> db.auth('admin','admin')

1> show dbs --可以正常訪問了

admin 0.000gb

local 0.000gb

test 0.000gb

其他內建的角色

資料庫使用者角色:read、readwrite;

資料庫管理角色:dbadmin、dbowner、useradmin;

集群管理角色:clusteradmin、clustermanager、clustermonitor、hostmanager;

備份恢復角色:backup、restore;

所有資料庫角色:readanydatabase、readwriteanydatabase、useradminanydatabase、dbadminanydatabase

超級使用者角色:root

// 這裡還有幾個角色間接或直接提供了系統超級使用者的訪問(dbowner 、useradmin、useradminanydatabase)

內部角色:__system

MongoDB3 x中使用者許可權

1.資料庫使用者角色 read readwrite 2.資料庫管理角色 dbadmin dbowner useradmin 3.集群管理角色 clusteradmin clustermanager clustermonitor hostmanager 4.備份恢復角色 backup restore ...

mongodb3 x使用者角色

使用者和角色是多對多的關係,乙個使用者可以對應多個角色,乙個角色可以擁有多個使用者。使用者角色的不同對應的許可權也是不一樣的。下面是一些分配給使用者的常見的角色。read 允許使用者從資料庫的任何集合中讀取資料 readanydatabase 同read,但針對所有資料庫 readwrite 提供r...

Mongodb 3 X 配置身份驗證

開啟認證 啟動mongodb.mongodb syslog fork port 20000 auth 1.如果不新增引數 auth,表明用預設的root的許可權登陸 2015 12 18t10 42 04.275 0800 i control initandlisten warning you ar...