1. 程式人生 > >Mongo3.4.2建立使用者管理

Mongo3.4.2建立使用者管理

二、建立超級管理員及普通的使用者 修改使用者密碼

注意一點,帳號是跟著庫走的,所以在指定庫裡授權,必須也在指定庫裡驗證(auth)

常用到的角色介紹:

Read:允許使用者讀取指定資料庫
readWrite:允許使用者讀寫指定資料庫
dbAdmin:允許使用者在指定資料庫中執行管理函式,如索引建立、刪除,檢視統計或訪問system.profile
userAdmin:允許使用者向system.users集合寫入,可以找指定資料庫裡建立、刪除和管理使用者
clusterAdmin:只在admin資料庫中可用,賦予使用者所有分片和複製集相關函式的管理許可權。
readAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀許可權
readWriteAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀寫許可權
userAdminAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的userAdmin許可權
dbAdminAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的dbAdmin許可權。
root:只在admin資料庫中可用。超級賬號,超級許可權

1.在資料庫安裝成功的基礎上連線上客戶端輸入如下指令:

 use admin

 db.createUser(
   {
     user: "root",
     pwd: "root",
     roles: [ { role: "root", db: "admin" } ]
   }
 )

注意:建立超級管理員成功

2.建立讀寫使用者指令如下:

use test
db.createUser(
  {
    user: "test",
    pwd: "123456",
    roles: [ { role: "readWrite", db: "test" } ]
  }
)

3.建立只讀使用者指令:

use test
db.createUser(
  {
    user: "read",
    pwd: "123456",
    roles: [ { role: "read", db: "test" } ]
  }
)

4.修改使用者密碼首先要登入到對應的使用者然後執行如下命令:

db.updateUser(
   "test",
   {
      pwd: "test",
      customData: { title: "Senior Manager" }
   }
)

(3.4.2修改密碼方式)

 db.changeUserPassword("使用者名稱", "新密碼")

注:上一節中的mongd.cfg中的配置檔案加上認證如下:

logpath=D:\data\logs\mongod.log
dbpath=D:\data\db
logappend=true
auth=true