AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

db.grantRolesToUser()(mongoshメソッド)

db.grantRolesToUser(username, roles, writeConcern)

ユーザーに追加のロールを付与します。

重要

mongosh メソッド

このページでは メソッドについて説明します。ただし、データベースコマンドやNode.jsなどの言語固有のドライバーのドキュメントには 該当しませんmongosh

データベースコマンドについては、grantRolesToUser コマンドを参照してください。

MongoDB API ドライバーについては、各言語の「MongoDB ドライバーのドキュメント」を参照してください。

db.grantRolesToUser()メソッドでは、次の構文を使用します。

db.grantRolesToUser( "<username>", [ <roles> ], { <writeConcern> } )

db.grantRolesToUser()メソッドは次の引数を取ります。

Parameter
タイプ
説明

user

string

ロールを付与するユーザーの名前。

roles

配列

ユーザーに付与する追加のロールの配列。

writeConcern

ドキュメント

任意。 操作の 書込み保証( write concern ) のレベル。 詳しくは、 書込み保証(write concern) の仕様を参照してください。

rolesフィールドでは、組み込みロールユーザー定義ロールの両方を指定できます。

db.grantRolesToUser()が実行されるのと同じデータベースに存在するロールを指定するには、ロールの名前を使用してロールを指定します。

"readWrite"

または、次のように、ドキュメントを使用してロールを指定することもできます。

{ role: "<role>", db: "<database>" }

別のデータベースに存在するロールを指定するには、 ドキュメントを使用してロールを指定します。

db.grantRolesToUser()grantRolesToUserメソッドは コマンドをラップします。

このメソッドは、次の環境でホストされている配置で使用できます。

重要

このコマンドは、MongoDB Atlas クラスターではサポートされていません。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

レプリカセットで実行する場合、db.grantRolesToUser() はデフォルトで 書込み保証 (write"majority" concern)を使用して実行されます。

データベースにロールを付与するには、そのデータベースに対してgrantRoleアクションが必要です。

products データベースに次のロールを持つユーザー accountUser01 がある場合:

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
}
]

次のdb.grantRolesToUser() 操作、accountUser01 readWriteproductsには、read データベースで ロールが付与され、stock データベースでは ロールが付与されます。

use products
db.grantRolesToUser(
"accountUser01",
[ "readWrite" , { role: "read", db: "stock" } ],
{ w: "majority" , wtimeout: 4000 }
)

productsデータベース内のユーザー accountUser01 には現在、次のロールがあります。

"roles" : [
{ "role" : "assetsReader",
"db" : "assets"
},
{ "role" : "read",
"db" : "stock"
},
{ "role" : "readWrite",
"db" : "products"
}
]