MongoDB 默認沒有設置用戶名密碼,須要咱們本身設置。簡單來講首先設置一個管理全部用戶角色的用戶admin,而後根據須要爲此用戶添加其餘角色便可。mongodb
1.設置一個管理全部用戶角色的用戶adminshell
例如,如下內容使用角色和 角色myUserAdmin
在admin
數據庫中 建立用戶。數據庫
use admin db.createUser( { user: "myUserAdmin", pwd: passwordPrompt(), // or cleartext password roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } )
注意上面代碼中的passwordPrompt():spa
Starting in version 4.2 of the
mongo
shell, you can use thepasswordPrompt()
method in conjunction with various user authentication/management methods/commands to prompt for the password instead of specifying the password directly in the method/command call. However, you can still specify the password directly as you would with earlier versions of themongo
shell.code從
mongo
shell的4.2版開始,您能夠將該passwordPrompt()
方法與各類用戶身份驗證/管理方法/命令結合使用來提示輸入密碼,而不是直接在方法/命令調用中指定密碼。可是,您仍然能夠像使用早期版本的mongo
shell 同樣直接指定密碼 。blog
而後須要受權(筆者在執行上面操做以後沒有重啓直接進行下一步能夠實現):ci
use admin //若是不重啓能夠,能夠不用輸入這句
db.auth("myUserAdmin", "abc123" )
返回1表示成功。get
2.建立數據庫用戶it
use test db.createUser( { user: "myTester", pwd: passwordPrompt(), // or cleartext password roles: [ { role: "readWrite", db: "test" }, { role: "read", db: "reporting" } ] } )