grantRolesToUser
On this page本页内容
Definition定义
grantRolesToUser
-
Grants additional roles to a user.将其他角色授予用户。TipIn在mongosh
, this command can also be run through thedb.grantRolesToUser()
helper method.mongosh
中,这个命令也可以通过db.grantRolesToUser()
助手方法运行。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.mongosh
用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。如果不需要方便,或者需要额外的返回字段,请使用数据库命令。
Syntax语法
The grantRolesToUser
command uses the following syntax:grantRolesToUser
命令使用以下语法:
db.runCommand(
{
grantRolesToUser: "<user>",
roles: [ <roles> ],
writeConcern: { <write concern> },
comment: <any>
}
)
Command Fields命令字段
The command takes the following fields:该命令包含以下字段:
grantRolesToUser | string | |
roles | array | |
writeConcern | document | |
comment | any |
|
In the 在角色字段中,可以指定内置角色和用户定义的角色。roles
field, you can specify both built-in roles and user-defined roles.
To specify a role that exists in the same database where 要指定grantRolesToUser
runs, you can either specify the role with the name of the role:grantRolesToUser
运行的同一数据库中存在的角色,可以使用角色名称指定该角色:
"readWrite"
Or you can specify the role with a document, as in:或者,您可以使用文档指定角色,如中所示:
{ role: "<role>", db: "<database>" }
To specify a role that exists in a different database, specify the role with a document.若要指定其他数据库中存在的角色,请使用文档指定该角色。
Required Access所需访问权限
You must have the 必须对数据库具有grantRole
action on a database to grant a role on that database.grantRole
操作才能在该数据库上授予角色。
Example实例
Given a user 给定accountUser01
in the products
database with the following roles:products
数据库中具有以下角色的accountUser01
:
"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
}
]
The following 下面的grantRolesToUser
operation gives accountUser01
the read
role on the stock
database and the readWrite
role on the products
database.grantRolesToUser
操作为accountUser01
提供了stock
数据库上的read
角色和products
数据库上的readWrite
角色。
use products
db.runCommand( { grantRolesToUser: "accountUser01",
roles: [
{ role: "read", db: "stock"},
"readWrite"
],
writeConcern: { w: "majority" , wtimeout: 2000 }
} )
The user accountUser01
in the products
database now has the following roles:products
数据库中的用户accountUser01
现在具有以下角色:
"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
},
{ "role" : "read",
"db" : "stock"
},
{ "role" : "readWrite",
"db" : "products"
}
]