【问题标题】:Rocketchat connection to secure MongoDBRocketchat 连接以保护 MongoDB
【发布时间】:2019-06-01 11:30:23
【问题描述】:

我正在尝试确保 mongodb 添加具有权限的 Rocketchat 用户,这是查询结果:

rs01:PRIMARY> use admin
rs01:PRIMARY> show users
{
        "_id" : "admin.rocketchatuser",
        "user" : "rocketchatuser",
        "db" : "admin",
        "customData" : {

        },
        "roles" : [
                {
                        "role" : "readWrite",
                        "db" : "admin"
                },
                {
                        "role" : "readWrite",
                        "db" : "local"
                },
                {
                        "role" : "dbOwner",
                        "db" : "rocketchat"
                }
        ]
}

这是我的连接字符串:

MONGO_OPLOG_URL=mongodb://rocketchatuser:mypassword@localhost:27017/local?authSource=admin&replSet=rs01
MONGO_URL=mongodb://rocketchatuser:mypassword@localhost:27017/rocketchat?authSource=admin

这里是 mongodb 日志:

Unauthorized: not authorized on rocketchat to execute command

但仍然出现连接被拒绝错误。

有什么想法吗?

【问题讨论】:

    标签: mongodb authentication rocket.chat


    【解决方案1】:

    最后,我在重新按照this guide 中的说明并从 Rocket.Chat 服务启用日志记录后发现了问题,并看到它需要授予 Rocketuser 在管理数据库上具有角色 clusterMonitor:

    db.runCommand({ grantRolesToUser: "rocketchatuser" , roles: [{role: "clusterMonitor", db: "admin"}]})
    

    授予用户后它连接并开始成功运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-17
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2016-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多