-
Notifications
You must be signed in to change notification settings - Fork 1.7k
/
db.grantRolesToUser.txt
120 lines (75 loc) · 2.44 KB
/
db.grantRolesToUser.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
=====================
db.grantRolesToUser()
=====================
.. default-domain:: mongodb
.. contents:: On this page
:local:
:backlinks: none
:depth: 1
:class: singlecol
Definition
----------
.. method:: db.grantRolesToUser ( username, roles, writeConcern )
Grants additional roles to a user.
The :method:`grantRolesToUser` method uses the following syntax:
.. code-block:: javascript
db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )
The :method:`grantRolesToUser` method takes the following arguments:
.. list-table::
:header-rows: 1
:widths: 20 20 80
* - Parameter
- Type
- Description
* - ``user``
- string
- The name of the user to whom to grant roles.
* - ``roles``
- array
- An array of additional roles to grant to the user.
* - ``writeConcern``
- document
- Optional. The level of :doc:`write concern </reference/write-concern>` for the
modification. The ``writeConcern`` document takes the same
fields as the :dbcommand:`getLastError` command.
.. |local-cmd-name| replace:: :method:`db.grantRolesToUser()`
.. include:: /includes/fact-roles-array-contents.rst
The :method:`db.grantRolesToUser()` method wraps the
:dbcommand:`grantRolesToUser` command.
Required Access
---------------
.. include:: /includes/access-grant-roles.rst
Example
-------
Given a user ``accountUser01`` in the ``products`` database with the following
roles:
.. code-block:: javascript
"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
}
]
The following :method:`grantRolesToUser()` operation gives ``accountUser01``
the :authrole:`readWrite` role on the ``products`` database and the
:authrole:`read` role on the ``stock`` database.
.. code-block:: javascript
use products
db.grantRolesToUser(
"accountUser01",
[ "readWrite" , { role: "read", db: "stock" } ],
{ w: "majority" , wtimeout: 4000 }
)
The user ``accountUser01`` in the ``products`` database now has the following
roles:
.. code-block:: javascript
"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
},
{ "role" : "read",
"db" : "stock"
},
{ "role" : "readWrite",
"db" : "products"
}
]