mongodb 設置賬號和密碼


mongodb密碼和傳統數據如mysql等有些區別: mongodb的用戶名和密碼是基於特定數據庫的,而不是基於整個系統的。所有所有數據庫db都需要設置密碼。

1. 查看所有數據庫(在mongodb新版本里並沒有admin數據庫,但是並不妨礙第2步操作。)

show dbs

2. 進入admin數據庫

use admin

3. 創建管理員賬戶

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

mongodb中的用戶是基於身份role的,該管理員賬戶的 role是 userAdminAnyDatabase。admin用戶用於管理賬號,不能進行關閉數據庫等操作。

4. 創建root

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

創建完admin管理員,創建一個超級管理員root。角色:root。root角色用於關閉數據庫。

db.shutdownServer()

5. 創建用戶自己的數據庫的管理角色

use yourdatabase

db.createUser({user: "user",pwd: "password",roles: [ { role: "dbOwner", db: "yourdatabase" } ]})

role: "dbOwner"代表數據庫所有者角色,擁有最高該數據庫最高權限。比如新建索引等當賬號管理員和超級管理員,可以為自己的數據庫創建用戶了。(坑)這時候一定,一定要切換到所在數據庫上去創建用戶,不然創建的用戶還是屬於admin。

如果是讀寫角色的話,權限設置為role: "readWrite"

6. 查看用戶

show users

7. 刪除用戶

刪除用戶必須由賬號管理員來刪,所以,切換到admin角色

use admin

db.auth("admin","password")

刪除單個用戶

db.system.users.remove({user:"XXXXXX"})

刪除所有用戶

db.system.users.remove({})


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM