Windows下MongoDB設置用戶、密碼

默認狀況下,mongod也是沒有管理員帳戶的。所以除非你在admin數據庫中使用db.createUser()命令添加了管理員賬號,且使用–auth參數啓動mongod,不然在數據庫中任何人均可以無需認證執行全部命令。mongodb

1、建立全部數據庫管理員用戶:

一、管理員身份運行cmd.exe,先cd到Mongodb安裝目錄的bin目錄,數據庫

輸入命令mongo.exe,進入mongodb命令界面:
image.png工具

二、建立數據庫test1spa

image.png

插入一條數據,而後用命令:showimage.png
三、進入admin數據庫:rest

命令:image.pngcode

四、建立管理帳號:cmd

首先看看mongodb內置角色:it

1. 數據庫用戶角色:read、readWrite;
2. 數據庫管理角色:dbAdmin、dbOwner、userAdmin;
3. 集羣管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 備份恢復角色:backup、restore;
5. 全部數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超級用戶角色:root  
7. 內部角色:__system

使用命令:class

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

image.png

五、重啓mongodb服務,test

從新打開cmd,在mongodb路徑的bin目錄下,執行mongod --dbpath d:\mongodb\data --auth (data是安裝mongodb建立的數據庫文件夾)

六、驗證用戶添加是否成功:

結果爲1,說明成功。
七、使用Robomongo工具鏈接:
image.png

能夠看到剛纔建立的管理員用戶testAdmin(角色userAdminAnyDatabase),有權限訪問全部數據庫。

2、下面對單個數據庫設置用戶、密碼

同上建立test1的方式,建立數據庫test2

運行命令: db.createUser({user:'test2admin',pwd:'123456',roles:[{role:'readWrite',db:'test2'}]})

image.png

使用Robomongo工具鏈接:

image.png

用戶test2admin只能看到數據庫test2。

相關文章
相關標籤/搜索