簡體   English   中英

創建單個root用戶訪問和管理MongoDB的所有數據庫

[英]Create single root user to access and manage all database of MongoDB

我在一個 MongoDB 實例上有 22 個數據庫。 我遇到了 MongoDB 身份驗證的root角色。 我想創建一個可以對現有數據庫執行任何操作以及創建新數據庫並完全管理它們的單個用戶。 我運行了以下命令,但它不允許我訪問除admin之外的任何數據庫。

use admin
db.createUser(
{
    user: "iamroot",
    pwd: "<pa$$w0rd>",
    roles: [ "root" ]
})

它僅存儲admin數據庫的root角色。 如果添加,如何將root角色應用於所有現有數據庫以及新數據庫? 是否只有一種方法可以像這樣在roles數組中提供所有數據庫名稱來實現我想要的?

use admin
db.createUser(
{
    user: "iamroot",
    pwd: "<pa$$w0rd>",
    roles: [ 
        { role: "root", db: "db_1" },
        { role: "root", db: "db_2" },
        { role: "root", db: "db_n" },
    ]
})

我猜你需要明確地為 admin db 分配 root。 對我來說,以下工作(版本:3.4.23):

use admin
db.createUser(
{
    user: "iamroot",
    pwd: "<pa$$w0rd>",
    roles: [ 
        { role: "root", db: "admin" }
    ]
})

暫無
暫無

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

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