簡體   English   中英

MongoDB:用戶創建數據庫需要哪些權限?

[英]MongoDB: Which permissions are needed for a user to create a database?

我們需要創建一個特殊角色,該角色將僅允許以下操作:

  1. 創建一個新的數據庫
  2. 創建一個新用戶,該數據庫的管理員

創建數據庫需要哪些MongoDB角色? 它沒有寫在這里的文檔中的任何地方https://docs.mongodb.com/manual/reference/built-in-roles/似乎沒有一個已知的角色可以執行此任務

我認為readWrite是您需要的角色。 我嘗試了以下操作:

  1. 使用管理用戶連接到我的admin數據庫
  2. 創建一個新aaa用戶,定義admin數據庫,用密碼和兩個角色: readWrite上(不存在)的數據庫xxxdbAdmin上(不存在)數據庫yyy
  3. 使用aaa用戶連接到admin數據庫

因此,我嘗試在xxxyyy數據庫中的test集合中插入文檔:

use xxx
db.test.insert({})

有反應在2毫秒內插入1條記錄

use yyy
db.test.insert({})

響應未授權yyy執行命令...

該錯誤消息表示aaa無法在test執行insert :數據庫創建是在第一次插入時發生的,因此您需要具有readWrite角色才能進行第一次insert ==>創建數據庫。

我希望我采用的檢查問題的方法可以幫助您解決問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM