MongoDB設置用戶名以及密碼

MongoDB 默認沒有設置用戶名密碼,須要咱們本身設置。簡單來講首先設置一個管理全部用戶角色的用戶admin,而後根據須要爲此用戶添加其餘角色便可。mongodb

 

1.設置一個管理全部用戶角色的用戶adminshell

例如,如下內容使用角色和 角色myUserAdminadmin數據庫中 建立用戶數據庫

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 the passwordPrompt() 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 the mongo shell.code

mongoshell的4.2版開始,您能夠將該passwordPrompt()方法與各類用戶身份驗證/管理方法/命令結合使用來提示輸入密碼,而不是直接在方法/命令調用中指定密碼。可是,您仍然能夠像使用早期版本的mongoshell 同樣直接指定密碼 。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" } ]
  }
)
相關文章
相關標籤/搜索