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

自己管理型配置の特権アクション

項目一覧

  • クエリと書込みアクション
  • データベース管理アクション
  • 配置管理アクション
  • ストリーム アクションの変更
  • レプリケーション アクション
  • シャーディング アクション
  • サーバー管理アクション
  • セッション アクション
  • 診断アクション
  • 内部アクション

特権アクションは、ユーザーがリソースに対して実行できる操作を定義します。 MongoDB の特権は、リソースと許可されたアクションで構成されています。 このページには、共通の目的別にグループ化された利用可能なアクションがリストされます。

MongoDB では、リソースと許可されたアクションの事前定義された組み合わせを持つ組み込みのロールが提供されます。 付与されるアクションのリストについては、「自己管理型配置の組み込みロール」を参照してください。 カスタムロールを定義するには、「 カスタムロールの作成 」を参照してください。

find

ユーザーは次のコマンドと同等のヘルパー メソッドを実行できます。

コレクションに出力する場合、db.collection.mapReduce() ヘルパー メソッドとmapReduce コマンドのクエリ部分に必要です。

db.collection.findAndModify() ヘルパー メソッドと findAndModify コマンドのクエリ部分に必要です。

cloneCollectionAsCapped コマンドと renameCollection コマンド、および db.collection.renameCollection() ヘルパー メソッドのソース コレクションに必要です。

ユーザーに listDatabases 特権アクションがない場合、ユーザーは listDatabases コマンドを実行して、ユーザーが特権を持つデータベースのリスト(ユーザーが特定のコレクションに対して特権を持つデータベースを含む)を返すことができます(コマンドを authorizedDatabases オプションを指定しないか、true に設定して実行した場合)。

このアクションをデータベースまたはコレクション リソースに適用します。

insert

ユーザーは、次のコマンドと同等の方法を実行できます。

コレクションに出力する場合、db.collection.mapReduce() ヘルパー メソッドとmapReduce コマンドの出力部分に必要です。

$out または $merge パイプライン演算子を使用する場合、 db.collection.aggregate() ヘルパー メソッドと aggregate コマンドに必要です。

upsert オプションで使用される同等のヘルパー メソッド、update コマンド、findAndModify コマンドに必要です。

次のコマンドとそのヘルパー メソッドの ディスティネーション コレクションで必要です。

このアクションをデータベースまたはコレクション リソースに適用します。

remove

ユーザーは delete コマンドと同等のヘルパー メソッドを実行できます。

findAndModify コマンドと db.collection.findAndModify() メソッドの書込み部分に必要です。

コレクションに出力するときに replace アクションを指定する場合、db.collection.mapReduce() ヘルパー メソッドとmapReduce コマンドに必要です。

$out パイプライン演算子を使用する場合、db.collection.aggregate() ヘルパー メソッドとaggregate コマンドに必要です。

このアクションをデータベースまたはコレクション リソースに適用します。

update

ユーザーは update コマンドと同等のヘルパー メソッドを実行できます。

replace アクションを指定せずに コレクションに出力する場合、db.collection.mapReduce() ヘルパー メソッドとmapReduce コマンドに必要です。

findAndModifyコマンドとdb.collection.findAndModify()ヘルパー メソッドに必須です。

このアクションをデータベースまたはコレクション リソースに適用します。

bypassDocumentValidation

バージョン 3.2 で追加

ユーザーは bypassDocumentValidation オプションをサポートするコマンドとメソッドのドキュメント検証をバイパスできます。以下のコマンドとそれに相当するメソッドは、ドキュメント検証の回避をサポートしています。

このアクションをデータベースまたはコレクション リソースに適用します。

useUUID

バージョン 3.6 の新機能

ユーザーは、 UUID を名前空間のように使用して、次のコマンドを実行できます。

たとえば、この特権により、ユーザーは、指定された UUID を持つコレクションに対して find コマンドを実行する次のコマンドを実行することが許可されます。この操作を成功させるには、指定された UUID に対応するコレクション名前空間で find コマンドを実行する権限がユーザーに与えられている必要があります。

db.runCommand({find: UUID("123e4567-e89b-12d3-a456-426655440000")})

コレクション UUID について詳しくは、「コレクション」を参照してください。

このアクションを cluster リソースに適用します。

changeCustomData

ユーザーは、指定されたデータベース内の任意のユーザーのカスタム情報を変更できます。このアクションをデータベース リソースに適用します。

changeOwnCustomData

ユーザーは独自のカスタム情報を変更できます。 このアクションをデータベース リソースに適用します。 「自己管理型配置のパスワードの変更とカスタム データ 」も参照してください。

changeOwnPassword

ユーザーは自分のパスワードを変更できます。 このアクションをデータベース リソースに適用します。 「自己管理型配置のパスワードの変更とカスタム データ 」も参照してください。

changePassword

ユーザーは、指定されたデータベース内の任意のユーザーのパスワードを変更できます。このアクションをデータベース リソースに適用します。

createCollection

ユーザーはdb.createCollection()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

createIndex

db.collection.createIndex()メソッドとcreateIndexesコマンドへのアクセスを提供します。 このアクションをデータベースまたはコレクション リソースに適用します。

createRole

ユーザーは指定されたデータベースに新しいロールを作成できます。このアクションをデータベース リソースに適用します。

createUser

ユーザーは指定されたデータベースに新しいユーザーを作成できます。このアクションをデータベース リソースに適用します。

dropCollection

ユーザーはdb.collection.drop()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

dropRole

ユーザーは指定されたデータベースから任意のロールを削除できます。このアクションをデータベース リソースに適用します。

dropUser

ユーザーは指定されたデータベースから任意のユーザーを削除できます。このアクションをデータベース リソースに適用します。

enableProfiler

ユーザーはdb.setProfilingLevel()メソッドを実行できます。このアクションをデータベース リソースに適用します。

grantRole

ユーザーは、システム内の任意のデータベースの任意のユーザーに、データベース内の任意のロールを付与できます。このアクションをデータベース リソースに適用します。

killCursors

ユーザーは、killCursors 特権を持っているかどうかに関係なく、いつでも自分のカーソルを終了できます。

killAnyCursor

バージョン3.6.3の新機能

ユーザーは、他のユーザーが作成したカーソルであっても、任意のカーソルを強制終了できます。このアクションをコレクション リソースに適用してください。

planCacheIndexFilter

ユーザーは、 planCacheClearFiltersplanCacheListFiltersplanCacheSetFilterコマンドを実行できます。 コレクション リソースにplanCacheIndexFilterアクションを適用します。

revokeRole

ユーザーは、システム内の任意のデータベースから任意のユーザーから任意のロールを削除できます。このアクションをデータベース リソースに適用します。

setAuthenticationRestriction

バージョン 3.6 の新機能

ユーザーは、次のコマンドを実行するときに、user ドキュメントの authenticationRestrictions フィールドを指定できます。

ユーザーは、次のコマンドを実行するときに、role ドキュメント内の authenticationRestrictions フィールドを指定できます。

注意

次の組み込みロールによってこの特権が付与されます。

  • userAdmin ロールは、ロールが割り当てられているデータベースに対してこの特権を提供します。

  • userAdminAnyDatabase ロールは、すべてのデータベースに対してこの特権を提供します。

推移的に、restore および root ロールもこの特権を提供します。

このアクションをデータベース リソースに適用します。

setFeatureCompatibilityVersion

ユーザーは setFeatureCompatibilityVersion コマンドを実行できます。このアクションを cluster リソースに適用します。

unlock

ユーザーはdb.fsyncUnlock()メソッドを実行できます。このアクションを cluster リソースに適用します。

viewRole

ユーザーは、指定されたデータベース内の任意のロールに関する情報を表示できます。このアクションをデータベース リソースに適用します。

viewUser

ユーザーは、指定されたデータベース内の任意のユーザーの情報を表示できます。このアクションをデータベース リソースに適用します。

authSchemaUpgrade

ユーザーは authSchemaUpgrade コマンドを実行できます。このアクションを cluster リソースに適用します。

cleanupOrphaned

ユーザーはcleanupOrphanedコマンドを実行できます。このアクションを cluster リソースに適用します。

cpuProfiler

ユーザーは CPU プロファイラーを有効にして使用できます。このアクションを cluster リソースに適用します。

inprog

ユーザーは db.currentOp() メソッドを使用して、保留中の操作とアクティブな操作に関する情報を返すことができます。このアクションを cluster リソースに適用します。

inprog 特権がなくても、mongod インスタンスでは、ユーザーは db.currentOp( { "$ownOps": true } ) を実行して自分の操作を表示できます。

invalidateUserCache

invalidateUserCache コマンドへのアクセスを提供します。このアクションを cluster リソースに適用します。

killop

ユーザーはdb.killOp()メソッドを実行できます。このアクションを cluster リソースに適用します。

killop 特権がなくても、mongod インスタンスでは、ユーザーは自分の操作を強制終了できます。

planCacheRead

ユーザーは、次の操作を実行できます。

このアクションをデータベースまたはコレクション リソースに適用します。

planCacheWrite

ユーザーはplanCacheClearコマンドとPlanCache.clear()およびPlanCache.clearPlansByQuery()メソッドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

storageDetails

ユーザーは、非推奨の storageDetails コマンドを実行できます。このアクションをデータベースまたはコレクション リソースに適用します。

changeStream

特定のコレクション、特定のデータベース内のすべてのsystem以外のコレクション、または全データベースにわたるすべてのsystem以外のコレクションに対してchangeStreamfindを持つユーザーは、そのリソースの変更ストリーム カーソルを開くことができます。

appendOplogNote

ユーザーは oplog にメモを追加できます。このアクションを cluster リソースに適用します。

replSetConfigure

ユーザーはレプリカセットを構成できます。このアクションを cluster リソースに適用します。

replSetGetConfig

ユーザーはレプリカセットの設定を表示できます。replSetGetConfig コマンドと rs.conf() ヘルパー メソッドへのアクセスを提供します。

このアクションを cluster リソースに適用します。

replSetGetStatus

ユーザーはreplSetGetStatusコマンドを実行できます。このアクションを cluster リソースに適用します。

replSetHeartbeat

ユーザーは、非推奨の replSetHeartbeat コマンドを実行できます。このアクションを cluster リソースに適用します。

replSetStateChange

ユーザーは、replSetFreezereplSetMaintenancereplSetStepDown、および replSetSyncFrom コマンドを使用してレプリカセットの状態を変更できます。このアクションを cluster リソースに適用します。

resync

ユーザーは、非推奨の resync コマンドを実行できます。このアクションを cluster リソースに適用します。

addShard

ユーザーはaddShardコマンドを実行できます。このアクションを cluster リソースに適用します。

clearJumboFlag

clearJumboFlag コマンドを使用してチャンクのジャンボフラグをクリアするために必要です。 このアクションをデータベースまたはコレクション リソースに適用します。

clusterManager 組み込みロールに含まれています。

enableSharding

注意

適用可能なリソース

このアクションは、次のいずれかに適用できます。

  • データベースまたはコレクション リソースを使用して、データベースのシャーディングを有効にするか、コレクションをシャーディングします。

  • さまざまなシャード ゾーン操作を実行するための クラスター リソース。

リソース
説明

ユーザーに次の操作を実行する特権を付与します。

  • enableSharding コマンドを使用してデータベースのシャーディングを有効にします。また、

  • shardCollection コマンドを使用してコレクションをシャーディングします。

ユーザーに次のシャード ゾーン操作を実行する特権を付与します。

config データベース内の適切なコレクションに対して find/update アクションがある場合も、これらのシャード ゾーン操作を実行できます。詳しくは、具体的な操作を参照してください。

refineCollectionShardKey

シャーディングされたコレクションのシャード キーを調整し、refineCollectionShardKey コマンドを実行する特権を提供します。このアクションをデータベースまたはコレクションリソースに適用します。

clusterManager 組み込みロールに含まれています。

reshardCollection

ユーザーはreshardCollectionコマンドを実行できます。このアクションをデータベースまたはコレクションリソースに適用します。

バージョン 5.0 で追加

flushRouterConfig

ユーザーはflushRouterConfigコマンドを実行できます。このアクションを cluster リソースに適用します。

getShardMap

ユーザーはgetShardMapコマンドを実行できます。このアクションを cluster リソースに適用します。

listShards

ユーザーはlistShardsコマンドを実行できます。このアクションを cluster リソースに適用します。

moveChunk

ユーザーはmoveChunkコマンドを実行できます。 さらに、特権が適切なデータベースリソースに適用されている場合、ユーザーはmovePrimaryコマンドを実行できます。 このアクションを データベース または コレクション リソースに適用します。

removeShard

ユーザーはremoveShardコマンドを実行できます。このアクションを cluster リソースに適用します。

shardingState

ユーザーはshardingStateコマンドを実行できます。このアクションを cluster リソースに適用します。

applicationMessage

ユーザーはlogApplicationMessageコマンドを実行できます。このアクションを cluster リソースに適用します。

closeAllDatabases

ユーザーは、非推奨の closeAllDatabases コマンドを実行できます。このアクションを cluster リソースに適用します。

collMod

ユーザーはcollModコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

compact

ユーザーはcompactコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

connPoolSync

ユーザーは内部 connPoolSync コマンドを実行できます。このアクションを cluster リソースに適用します。

convertToCapped

ユーザーはconvertToCappedコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

dropConnections

ユーザーはdropConnectionsコマンドを実行できます。このアクションを cluster リソースに適用します。

dropDatabase

ユーザーはdropDatabaseコマンドを実行できます。このアクションをデータベース リソースに適用します。

dropIndex

ユーザーはdropIndexesコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

forceUUID

バージョン 3.6 の新機能

ユーザーは、applyOps コマンドを使用して、ユーザー定義の コレクション UUID のあるコレクションを作成できます。

このアクションを cluster リソースに適用します。

fsync

ユーザーはfsyncコマンドを実行できます。このアクションを cluster リソースに適用します。

getDefaultRWConcern

ユーザーは管理コマンド getDefaultRWConcern を発行できます。このアクションを cluster リソースに適用します。

getParameter

ユーザーはgetParameterコマンドを実行できます。このアクションを cluster リソースに適用します。

hostInfo

MongoDB インスタンスが実行されるサーバーに関する情報を提供します。このアクションを cluster リソースに適用します。

oidReset

ObjectId で使用される 5 バイトの 文字列 をリセットするために必要です。

logRotate

ユーザーはlogRotateコマンドを実行できます。このアクションを cluster リソースに適用します。

reIndex

ユーザーはreIndexコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

renameCollectionSameDB

ユーザーが renameCollection コマンドを使用して、現在のデータベース上のコレクションの名前を変更できるようにします。このアクションをデータベース リソースに適用します。

さらに、ユーザーはソース コレクションに find持っているか、ターゲット コレクションに find持っていない必要があります。

新しい名前のコレクションがすでに存在する場合、ユーザーは宛先コレクションに対してdropCollectionアクションも持っている必要があります。

rotateCertificates

ユーザーは rotateCertificates コマンドを実行できます。このアクションを cluster リソースに適用します。

setDefaultRWConcern

ユーザーは管理コマンド setDefaultRWConcern を発行できます。このアクションを cluster リソースに適用します。

setParameter

ユーザーはsetParameterコマンドを実行できます。このアクションを cluster リソースに適用します。

shutdown

ユーザーはshutdownコマンドを実行できます。このアクションを cluster リソースに適用します。

touch

ユーザーは、非推奨の touch コマンドを実行できます。このアクションを cluster リソースに適用します。

impersonate

バージョン 3.6 の新機能

ユーザーは、 users および roles パターンとともに killAllSessionsByPattern コマンドを実行できます。このアクションを cluster リソースに適用します。

killAllSessionsByPatternコマンドを実行するには、クラスター リソースに対するkillAnySession特権もユーザーに必要です。

listSessions

バージョン 3.6 の新機能

ユーザーは、すべてのユーザーまたは指定されたユーザーに対して $listSessions 操作または $listLocalSessions 操作を実行できます。このアクションを cluster リソースに適用します。

killAnySession

バージョン 3.6 の新機能

ユーザーは killAllSessions および killAllSessionsByPattern コマンドを実行できます。このアクションを cluster リソースに適用します。

Tip

以下も参照してください。

collStats

ユーザーはcollStatsコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

connPoolStats

ユーザーはconnPoolStatsコマンドを実行できます。このアクションを cluster リソースに適用します。

dbHash

ユーザーはdbHashコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

dbStats

ユーザーはdbStatsコマンドを実行できます。このアクションをデータベース リソースに適用します。

getCmdLineOpts

ユーザーはgetCmdLineOptsコマンドを実行できます。このアクションを cluster リソースに適用します。

getLog

ユーザーはgetLogコマンドを実行できます。このアクションを cluster リソースに適用します。

indexStats

ユーザーは$indexStats集約パイプライン ステージを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

$indexStats ステージを使用するには、ユーザーは少なくとも clusterMonitor ロールで認証する必要があります。

listDatabases

ユーザーはlistDatabasesコマンドを実行できます。このアクションを cluster リソースに適用します。

ユーザーに listDatabases 特権アクションがない場合、ユーザーは listDatabases コマンドを実行して、ユーザーが特権を持つデータベースのリスト(ユーザーが特定のコレクションに対して特権を持つデータベースを含む) を返すことができます(コマンドを authorizedDatabases オプションを指定しないか、true に設定して実行した場合)。

listCollections

ユーザーはlistCollectionsコマンドを実行できます。このアクションをデータベース リソースに適用します。

注意

必要な特権を持たないユーザーは、authorizedCollectionsnameOnly両方のオプションを true に設定して、listCollections コマンドを実行できます。コマンドはこの場合、ユーザーが特権を持つコレクションの名前と型のみを返します。

listIndexes

ユーザーはlistIndexesコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

serverStatus

ユーザーはserverStatusコマンドを実行できます。このアクションを cluster リソースに適用します。

validate

ユーザーはvalidateおよびvalidateDBMetadataコマンドを実行できます。 このアクションをデータベースまたはコレクション リソースに適用します。

top

ユーザーはtopコマンドを実行できます。このアクションを cluster リソースに適用します。

anyAction

リソースに対する任意のアクションを許可します。絶対に必要な場合を除き、このアクションを割り当てないでください

internal

内部アクションを許可します。絶対に必要な場合を除き、このアクションを割り当てないでください

applyOps

ユーザーはapplyOpsコマンドを実行できます。このアクションを cluster リソースに適用します。

戻る

リソース ドキュメント