ANNOUNCEMENT: Voyage AI joins MongoDB to power more accurate and trustworthy AI applications on Atlas.
Learn more
Docs Menu

db.revokeRolesFromRole()

db.revokeRolesFromRole(rolename, roles, writeConcern)

指定された継承ロールをロールから削除します。

重要

mongosh メソッド

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

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

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

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

db.revokeRolesFromRole( "<rolename>", [ <roles> ], { <writeConcern> } )

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

Parameter
タイプ
説明

rolename

string

ロールを取り消すロールの名前。

roles

配列

削除する継承されたロール。

writeConcern

ドキュメント

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

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

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

"readWrite"

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

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

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

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

重要

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

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

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

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

データベースのロールを取り消すには、データベースに対してrevokeRoleアクションが必要です。

emeaデータベース内のpurchaseAgentsロールは、 roles配列にリストされているように、いくつかの他のロールから特権を継承します。

{
"_id" : "emea.purchaseAgents",
"role" : "purchaseAgents",
"db" : "emea",
"privileges" : [],
"roles" : [
{
"role" : "readOrdersCollection",
"db" : "emea"
},
{
"role" : "readAccountsCollection",
"db" : "emea"
},
{
"role" : "writeOrdersCollection",
"db" : "emea"
}
]
}

emeaデータベースに対する次のdb.revokeRolesFromRole()操作により、 purchaseAgentsロールから 2 つのロールが削除されます。

use emea
db.revokeRolesFromRole( "purchaseAgents",
[
"writeOrdersCollection",
"readOrdersCollection"
],
{ w: "majority" , wtimeout: 5000 }
)

purchaseAgentsロールには現在、次のロールが 1 つだけ含まれています。

{
"_id" : "emea.purchaseAgents",
"role" : "purchaseAgents",
"db" : "emea",
"privileges" : [],
"roles" : [
{
"role" : "readAccountsCollection",
"db" : "emea"
}
]
}