文档菜单
文档首页
/
MongoDB 手册
/ / /

dropRole

本页

  • 定义
  • 兼容性
  • 语法
  • 命令字段
  • 行为
  • 所需访问权限
  • 示例
dropRole

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

提示

mongosh中,此命令也可以通过db.dropRole()辅助方法运行.

辅助方法对mongosh用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。在不需要便利性或需要额外的返回字段的情况下,请使用数据库命令。

此命令适用于以下环境部署

  • MongoDB Atlas:云中MongoDB部署的全托管服务

重要

此命令不支持在M0、M2、M5和M10+集群中。更多信息,请参阅不支持命令。

命令具有以下语法

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

命令具有以下字段

字段
类型
描述
dropRole
string
要从数据库中删除的用户自定义角色的名称。
writeConcern
document

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

comment
any

可选。用户提供的与该命令关联的注释。一旦设置,此注释将出现在以下位置的记录旁边

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

当在mongod上删除角色时,之前已认证的用户仍然登录到数据库,但立即失去该角色的权限。

当在mongos上删除角色时,之前已认证的用户仍然登录到数据库,但在缓存刷新时失去该角色的权限。缓存刷新在userCacheInvalidationIntervalSecs参数指定的时时间后自动刷新,或者在您运行invalidateUserCache命令时手动刷新。

您必须具有在数据库上执行dropRole 操作的权限才能从该数据库中删除角色。

以下操作从 products 数据库中移除了 readPrices 角色

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

返回

createRole