Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

grantRolesToUser

項目一覧

  • 定義
  • 互換性
  • 構文
  • コマンドフィールド
  • 必要なアクセス権
grantRolesToUser

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

Tip

mongosh では、このコマンドは db.grantRolesToUser() ヘルパー メソッドを通じて実行することもできます。

ヘルパー メソッドはmongoshユーザーには便利ですが、データベースコマンドと同じレベルの情報は返されない可能性があります。 便宜上必要ない場合、または追加の戻りフィールドが必要な場合は、 データベースコマンドを使用します。

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

  • MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです

重要

このコマンドは、M 0 、M 2 、M 5 、M 10 + クラスターではサポートされていません。 詳細については、「サポートされていないコマンド 」を参照してください。

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

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

grantRolesToUserコマンドは、次の構文を使用します。

db.runCommand(
{
grantRolesToUser: "<user>",
roles: [ <roles> ],
writeConcern: { <write concern> },
comment: <any>
}
)

このコマンドは、次のフィールドを使用します。

フィールド
タイプ
説明
grantRolesToUser
string
追加のロールを付与するユーザーの名前。
roles
配列
ユーザーに付与する追加のロールの配列。
writeConcern
ドキュメント

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

comment
any

任意。このコマンドに添付するユーザー指定のコメント。設定すると、このコメントは以下の場所にこのコマンドの記録と合わせて表示されます。

コメントには、有効な BSON 型(string, integer, object, array など)を使用できます。

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

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

"readWrite"

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

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

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

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

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

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

次のgrantRolesToUser操作により、 accountUser01には、 stockデータベースでreadロールとproductsデータベースでreadWriteロールが付与されます。

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

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

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

戻る

dropUser