特権アクションは、ユーザーがリソースに対して実行できる操作を定義します。MongoDB の特権は、リソースと許可されたアクションで構成されます。このページには、共通の目的別にグループ化された利用可能なアクションがリストされます。
MongoDB では、リソースと許可されたアクションの事前定義された組み合わせを持つ組み込みのロールが提供されます。許可されたアクションのリストについては、以下をご覧ください。
カスタムロールを定義するには、以下を参照してください。
クエリと書込みアクション
findユーザーは次のコマンドと同等のヘルパーメソッドを実行できます。
killCursors(ただし、カーソルが現在認証されているユーザーに関連付けられている場合に限ります)mapReduceと{out: inline}オプション
コレクションに出力する場合、
db.collection.mapReduce()ヘルパー メソッドとmapReduceコマンドのクエリ部分に必要です。db.collection.findAndModify()ヘルパー メソッドとfindAndModifyコマンドのクエリ部分に必要です。cloneCollectionAsCappedコマンドとrenameCollectionコマンド、およびdb.collection.renameCollection()ヘルパー メソッドのソース コレクションに必要です。Users without the
listDatabasesprivilege action can run thelistDatabasescommand to return a list of databases for which they have privileges. This includes databases where the user has privileges on specific collections. Run the command with theauthorizedDatabasesoption unspecified or set totrue.このアクションをデータベースまたはコレクション リソースに適用します。
insertユーザーは、次のコマンドと同等の方法を実行できます。
コレクションに出力する場合、
db.collection.mapReduce()ヘルパー メソッドとmapReduceコマンドの出力部分に必要です。$outまたは$mergeパイプライン演算子を使用する場合、db.collection.aggregate()ヘルパー メソッドとaggregateコマンドに必要です。upsertオプションで使用される同等のヘルパー メソッド、updateコマンド、findAndModifyコマンドに必要です。次のコマンドとそのヘルパー メソッドの ディスティネーション コレクションで必要です。
このアクションをデータベースまたはコレクション リソースに適用します。
removeユーザーは
deleteコマンドと同等のヘルパー メソッドを実行できます。findAndModifyコマンドとdb.collection.findAndModify()メソッドの書込み部分に必要です。コレクションに出力するときに アクションを指定する場合、
mapReduceコマンドとdb.collection.mapReduce()ヘルパーメソッドに必要です。replace$outパイプライン演算子を使用する場合、db.collection.aggregate()ヘルパー メソッドとaggregateコマンドに必要です。このアクションをデータベースまたはコレクション リソースに適用します。
updateユーザーは
updateコマンドと同等のヘルパー メソッドを実行できます。replaceアクションを指定せずに コレクションに出力する場合、db.collection.mapReduce()ヘルパー メソッドとmapReduceコマンドに必要です。findAndModifyコマンドとdb.collection.findAndModify()ヘルパー メソッドに必須です。このアクションをデータベースまたはコレクション リソースに適用します。
bypassDocumentValidationユーザーは
bypassDocumentValidationオプションをサポートするコマンドやメソッド上で、 スキーマ検証をバイパスできます。以下のコマンドとそれに相当するメソッドは、スキーマ検証の回避をサポートしています。このアクションをデータベースまたはコレクション リソースに適用します。
useUUIDユーザーは、UUID を名前空間のように使用して、次のコマンドを実行できます。
この特権、ユーザーは次のコマンドを実行することが許可されます。このコマンドは、指定された UUID を持つコレクションに対して
findコマンドを実行します。この操作を成功させるには、指定された UUID に対応するコレクション名前空間でfindコマンドを実行する権限がユーザーに与えられている必要があります。db.runCommand({find: UUID("123e4567-e89b-12d3-a456-426655440000")}) コレクション UUID について詳しくは、「コレクション」を参照してください。
このアクションを
clusterリソースに適用します。
データベース管理アクション
changeOwnCustomDataユーザーは独自のカスタム情報を変更できます。このアクションをデータベース リソースに適用します。「パスワードの変更とカスタム データ」も参照してください。
changeOwnPasswordユーザーは自分のパスワードを変更できます。このアクションをデータベース リソースに適用します。「パスワードの変更とカスタム データ」も参照してください。
createCollectionユーザーは
db.createCollection()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
createIndexdb.collection.createIndex()メソッドとcreateIndexesコマンドへのアクセスを提供します。 このアクションをデータベースまたはコレクション リソースに適用します。
dropCollectionユーザーは
db.collection.drop()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
enableProfilerユーザーは
db.setProfilingLevel()メソッドを実行できます。このアクションをデータベース リソースに適用します。
planCacheIndexFilterUser can run the
planCacheClearFilters,planCacheListFilters, andplanCacheSetFiltercommands. Apply theplanCacheIndexFilteraction to collection resources.
setAuthenticationRestrictionユーザーは、次のコマンドを実行するときに、
userドキュメントの authenticationRestrictions フィールドを指定できます。ユーザーは、次のコマンドを実行するときに、
roleドキュメント内のauthenticationRestrictionsフィールドを指定できます。注意
次の組み込みロールによってこの特権が付与されます。
userAdminロールは、ロールが割り当てられているデータベースに対してこの特権を提供します。userAdminAnyDatabaseロールは、すべてのデータベースに対してこの特権を提供します。
このアクションをデータベース リソースに適用します。
setFeatureCompatibilityVersionユーザーは
setFeatureCompatibilityVersionコマンドを実行できます。このアクションをclusterリソースに適用します。
unlockユーザーは
db.fsyncUnlock()メソッドを実行できます。このアクションをclusterリソースに適用します。
配置管理アクション
cleanupOrphanedユーザーは
cleanupOrphanedコマンドを実行できます。このアクションをclusterリソースに適用します。
inprogユーザーは
db.currentOp()メソッドを使用して、保留中の操作とアクティブな操作に関する情報を返すことができます。このアクションをclusterリソースに適用します。Even without the
inprogprivilege, onmongodinstances, users can view their own operations by runningdb.currentOp( { "$ownOps": true } ).
invalidateUserCacheinvalidateUserCacheコマンドへのアクセスを提供します。このアクションをclusterリソースに適用します。
killopユーザーは
db.killOp()メソッドを実行できます。このアクションをclusterリソースに適用します。Even without the
killopprivilege, onmongodinstances, users can kill their own operations.
planCacheReadユーザーは、次の操作を実行できます。
$planCacheStats集計ステージ
このアクションをデータベースまたはコレクション リソースに適用します。
planCacheWriteユーザーは
planCacheClearコマンドとPlanCache.clear()およびPlanCache.clearPlansByQuery()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
ストリーム アクションの変更
changeStreamUser with
changeStreamandfindon the specific collection, all non-systemcollections in a specific database, or all non-systemcollections across all databases can open change stream cursor for that resource.
レプリケーション アクション
replSetGetConfigユーザーはレプリカセットの設定を表示できます。
replSetGetConfigコマンドとrs.conf()ヘルパー メソッドへのアクセスを提供します。このアクションを
clusterリソースに適用します。
replSetGetStatusユーザーは
replSetGetStatusコマンドを実行できます。このアクションをclusterリソースに適用します。
replSetStateChangeユーザーは、
replSetFreeze、replSetMaintenance、replSetStepDown、およびreplSetSyncFromコマンドを使用してレプリカセットの状態を変更できます。このアクションをclusterリソースに適用します。
シャーディング アクション
addShardユーザーは
addShardコマンドを実行できます。このアクションをclusterリソースに適用します。
analyzeShardKeyユーザーは
analyzeShardKeyコマンドを実行できます。このアクションをデータベースとコレクションリソースに適用します。clusterManagerenableShardingと の組み込みロールに含まれています。
checkMetadataConsistencyユーザーは
checkMetadataConsistencyコマンドを実行できます。このアクションをcluster、データベース、またはコレクション リソースに適用します。バージョン7.0の新機能。
clearJumboFlagclearJumboFlagコマンドを使用してチャンクのジャンボフラグをクリアするために必要です。 このアクションをデータベースまたはコレクション リソースに適用します。clusterManager組み込みロールに含まれています。
enableSharding- リソース説明
ユーザーに次の操作を実行する特権を付与します。
enableShardingコマンドを使用してデータベースのシャーディングを有効にするshardCollectionコマンドを使用してコレクションをシャードする
refineCollectionShardKeyシャーディングされたコレクションのシャード キーを調整し、
refineCollectionShardKeyコマンドを実行する特権を提供します。このアクションをデータベースまたはコレクションリソースに適用します。clusterManager組み込みロールに含まれています。
reshardCollectionユーザーは
reshardCollectionコマンドを実行できます。このアクションをデータベースまたはコレクションリソースに適用します。バージョン 5.0 の新機能。
flushRouterConfigユーザーは
flushRouterConfigコマンドを実行できます。このアクションをclusterリソースに適用します。
getClusterParameterユーザーは
getClusterParameterコマンドを実行できます。このアクションをclusterリソースに適用します。バージョン6.0の新機能。
getShardMapユーザーは
getShardMapコマンドを実行できます。このアクションをclusterリソースに適用します。
listShardsユーザーは
listShardsコマンドを実行できます。このアクションをclusterリソースに適用します。
moveChunkユーザーは
moveChunkコマンドとmoveRangeコマンドを実行できます。さらに、特権が適切なデータベース リソースに適用されている場合、ユーザーはmovePrimaryコマンドを実行できます。このアクションをデータベースまたはコレクションリソースに適用します。
removeShardユーザーは
removeShardコマンドを実行できます。このアクションをclusterリソースに適用します。
shardedDataDistributionユーザーは
$shardedDataDistribution集計パイプライン ステージを実行できます。バージョン6.0.3の新機能。
shardingStateユーザーは
shardingStateコマンドを実行できます。このアクションをclusterリソースに適用します。
splitChunkユーザーは
splitコマンドを実行できます。このアクションをclusterリソースに適用します。
サーバー管理アクション
applicationMessageユーザーは
logApplicationMessageコマンドを実行できます。このアクションをclusterリソースに適用します。
bypassWriteBlockingModesetUserWriteBlockModeコマンドによって書込みがブロックされている場合でも、ユーザーは書込みを実行できます。このアクションをclusterリソースに適用します。
collModユーザーは
collModコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
compactユーザーは
compactコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
compactStructuredEncryptionDataユーザーは
compactStructuredEncryptionDataコマンドを実行できます。このアクションをデータベース リソースに適用します。注意
バージョン7.0.40で変更。
このアクションはデータベース リソースにのみ適用されます。以前のバージョンでは、このアクションをコレクション リソースにも適用できました。
convertToCappedユーザーは
convertToCappedコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
dropConnectionsユーザーは
dropConnectionsコマンドを実行できます。このアクションをclusterリソースに適用します。
dropDatabaseユーザーは
dropDatabaseコマンドを実行できます。このアクションをデータベース リソースに適用します。
dropIndexユーザーは
dropIndexesコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
forceUUIDユーザーは、
applyOpsコマンドを使用して、ユーザー定義の コレクション UUID のあるコレクションを作成できます。このアクションを
clusterリソースに適用します。
fsyncユーザーは
fsyncコマンドを実行できます。このアクションをclusterリソースに適用します。
getDefaultRWConcernユーザーは管理コマンド
getDefaultRWConcernを発行できます。このアクションをclusterリソースに適用します。
getParameterユーザーは
getParameterコマンドを実行できます。このアクションをclusterリソースに適用します。
oidResetObjectId で使用される 5 バイトの 文字列 をリセットするために必要です。
logRotateユーザーは
logRotateコマンドを実行できます。このアクションをclusterリソースに適用します。
reIndexユーザーは
reIndexコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
renameCollectionSameDBユーザーが
renameCollectionコマンドを使用して、現在のデータベース上のコレクションの名前を変更できるようにします。このアクションをデータベース リソースに適用します。Additionally, the user must either have
findon the source collection or not havefindon the destination collection.If a collection with the new name already exists, the user must also have the
dropCollectionaction on the destination collection.
rotateCertificatesユーザーは
rotateCertificatesコマンドを実行できます。このアクションをclusterリソースに適用します。
setDefaultRWConcernユーザーは管理コマンド
setDefaultRWConcernを発行できます。このアクションをclusterリソースに適用します。
setParameterユーザーは
setParameterコマンドを実行できます。このアクションをclusterリソースに適用します。
setUserWriteBlockModeユーザーは
setUserWriteBlockModeコマンドを実行できます。このアクションをclusterリソースに適用します。
shutdownユーザーは
shutdownコマンドを実行できます。このアクションをclusterリソースに適用します。
セッション アクション
impersonateユーザーは、
usersおよびrolesパターンとともにkillAllSessionsByPatternコマンドを実行できます。このアクションをclusterリソースに適用します。To run
killAllSessionsByPatterncommand, users must also havekillAnySessionprivileges on the cluster resource.
listSessionsユーザーは、すべてのユーザーまたは指定されたユーザーに対して
$listSessions操作または$listLocalSessions操作を実行できます。このアクションをclusterリソースに適用します。
killAnySessionユーザーは
killAllSessionsおよびkillAllSessionsByPatternコマンドを実行できます。このアクションをclusterリソースに適用します。Tip
Atlas Search インデックス アクション
次のアクションにより、ユーザーはAtlas Search データベースコマンドを実行できるようになります。 これらのアクションは、 MongoDB Atlas でホストされている配置にのみ関連します。
createSearchIndexesユーザーは
createSearchIndexesデータベース コマンドを実行できます。このアクションをデータベースまたはコレクション リソースに適用します。
dropSearchIndexユーザーは
dropSearchIndexデータベース コマンドを実行できます。このアクションをデータベースまたはコレクション リソースに適用します。
listSearchIndexesユーザーは
$listSearchIndexes集計ステージを実行できます。このアクションをデータベースまたはコレクション リソースに適用します。
updateSearchIndexユーザーは
updateSearchIndexデータベース コマンドを実行できます。このアクションをデータベースまたはコレクション リソースに適用します。
診断アクション
collStatsユーザーは
collStatsコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
connPoolStatsユーザーは
connPoolStatsコマンドを実行できます。このアクションをclusterリソースに適用します。
dbHashユーザーは
dbHashコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
dbStatsユーザーは
dbStatsコマンドを実行できます。このアクションをデータベース リソースに適用します。
getCmdLineOptsユーザーは
getCmdLineOptsコマンドを実行できます。このアクションをclusterリソースに適用します。
getLogユーザーは
getLogコマンドを実行できます。このアクションをclusterリソースに適用します。
indexStatsユーザーは
$indexStats集約パイプライン ステージを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。$indexStatsステージを使用するには、ユーザーは少なくともclusterMonitorロールで認証する必要があります。
listDatabasesユーザーは
listDatabasesコマンドを実行できます。このアクションをclusterリソースに適用します。Users without the
listDatabasesprivilege action can run thelistDatabasescommand to return a list of databases for which they have privileges. This includes databases where the user has privileges on specific collections. Run the command with theauthorizedDatabasesoption unspecified or set totrue.
listCollectionsユーザーは
listCollectionsコマンドを実行できます。このアクションをデータベース リソースに適用します。注意
必要な特権を持たないユーザーは、
authorizedCollectionsとnameOnlyの両方のオプションをtrueに設定して、listCollectionsコマンドを実行できます。コマンドはこの場合、ユーザーが特権を持つコレクションの名前と型のみを返します。
listIndexesユーザーは
listIndexesコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
queryStatsReadユーザーは、
transformIdentifiersオプションなしで$queryStats集計ステージを実行できます。
queryStatsReadTransformedユーザーは、
transformIdentifiersオプションの有無にかかわらず、$queryStats集計ステージを実行できます。
serverStatusユーザーは
serverStatusコマンドを実行できます。このアクションをclusterリソースに適用します。
validateユーザーは
validateおよびvalidateDBMetadataコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。
topユーザーは
topコマンドを実行できます。このアクションをclusterリソースに適用します。
内部アクション
applyOpsユーザーは
applyOpsコマンドを実行できます。このアクションをclusterリソースに適用します。