对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

dropRole(数据库命令)

dropRole

从运行命令的数据库中删除用户定义的角色。

提示

In mongosh, this command can also be run through the db.dropRole() helper method.

Helper methods are convenient for mongosh users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.

此命令可用于以下环境中托管的部署:

重要

MongoDB Atlas 集群不支持此命令。有关 Atlas 对所有命令的支持的信息,请参阅不支持的命令

该命令具有以下语法:

db.runCommand(
{
dropRole: "<role>",
writeConcern: { <write concern> },
comment: <any>
}
)

该命令具有以下字段:

字段
类型
说明

dropRole

字符串

要从数据库中删除的用户定义角色的名称。

writeConcern

文档

可选。操作的写关注级别。请参阅写关注规范

comment

any

可选。用户提供的待附加到该命令的注释。设置后,该注释将与该命令的记录一起出现在以下位置:

注释可以是任何有效的 BSON 类型(字符串、整型、对象、数组等)。

mongod上删除角色时,之前通过身份验证的用户仍会保持登录数据库的状态,但会立即失去该角色的权限。

mongos上删除角色时,以前经过身份验证的用户仍保持登录数据库的状态,但在缓存刷新时会失去该角色的特权。 缓存会在userCacheInvalidationIntervalSecs参数指定的时间后自动刷新,或者在运行invalidateUserCache命令时手动刷新。

必须对数据库执行dropRole操作才能从该数据库中删除角色。

以下操作从products数据库中删除readPrices角色:

use products
db.runCommand(
{
dropRole: "readPrices",
writeConcern: { w: "majority" }
}
)