On this page本页内容
db.
revokePrivilegesFromRole
(rolename, privileges, writeConcern)¶Removes the specified privileges from the user-defined role on the database where the method runs. 从运行该方法的数据库上的用户定义角色中删除指定的权限。The revokePrivilegesFromRole
method has the following syntax:revokePrivilegesFromRole
方法语法如下所示:
The revokePrivilegesFromRole
method takes the following arguments:revokePrivilegesFromRole
方法采用以下参数:
rolename |
string | |
privileges |
array | privileges for more information on the format of the privileges.privileges 。 |
writeConcern |
document | writeConcern document takes the same fields as the getLastError command.writeConcern 文档采用与getLastError 命令相同的字段。 |
The db.revokePrivilegesFromRole()
method wraps the revokePrivilegesFromRole
command.db.revokePrivilegesFromRole()
方法包装revokePrivilegesFromRole
命令。
If run on a replica set, 如果在副本集上运行,默认情况下,db.revokePrivilegesFromRole()
is executed using majority
write concern by default.db.revokePrivilegesFromRole()
将使用majority
写入关注点执行。
To revoke a privilege, the resource document pattern must match exactly the 要撤销权限,资源文档模式必须与该权限的resource
field of that privilege. resource
字段完全匹配。The actions
field can be a subset or match exactly.actions
字段可以是子集,也可以完全匹配。
For example, given the role 例如,给定accountRole
in the products
database with the following privilege that specifies the products
database as the resource:products
数据库中的角色accountRole
,该角色具有将products
数据库指定为资源的以下权限:
You cannot revoke 不能仅从find
and/or update
from just one collection in the products
database. products
数据库中的一个集合中撤消“查找”和/或“更新”。The following operations result in no change to the role:以下操作不会导致角色发生变化:
To revoke the 要从角色"find"
and/or the "update"
action from the role accountRole
, you must match the resource document exactly. accountRole
中撤销"find"
和/或"update"
操作,必须完全匹配资源文档。For example, the following operation revokes just the 例如,以下操作仅从现有权限中撤销"find"
action from the existing privilege."find"
操作。
You must have the 您必须对数据库a权限目标执行revokeRole
action on the database a privilege targets in order to revoke that privilege. revokeRole
操作,才能撤销该权限。If the privilege targets multiple databases or the 如果权限针对多个数据库或cluster
resource, you must have the revokeRole
action on the admin
database.cluster
资源,则必须对admin
数据库执行revokeRole
操作。
The following operation removes multiple privileges from the 以下操作将从associates
role:associates
角色中删除多个权限: