1

我们在 AWS 中有一个集群,其中一个 Document DB 已启动并正在运行。我想授予一些额外的权限,所以我以具有root授予角色的用户身份连接到数据库,并做了通常的 MongoDB 事情:

db.grantRolesToUser("nameOfTheUser", ["readWrite"])

它不仅授予了特权,还给了我:

2020-05-04T15:26:42.053+0000 E  QUERY    [js] uncaught exception: Error: Cannot update system managed users' roles :_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.grantRolesToUser@src/mongo/shell/db.js:1592:15
@(shell):1:1

这是我第一次听说任何系统管理用户。我搜索了 MongoDB 和 AWS DocumentDB 文档,但在任何地方都没有找到。这些是什么?用户最终如何被系统管理?我怎样才能改变他们的特权?

4

1 回答 1

1

serviceadmin 用户是在创建集群时隐式创建的。每个 Amazon DocumentDB 集群都有一个 serviceadmin 用户,让 AWS 能够管理您的集群。您不能以 serviceadmin 身份登录、删除、重命名、更改密码或更改权限。任何这样做的尝试都会导致错误。

有关更多信息,请参阅以下内容:https ://docs.aws.amazon.com/documentdb/latest/developerguide/security.managing-users.html

于 2020-05-04T22:49:43.413 回答