重要
バージョン 7.1 から非推奨:代わりにauditConfigクラスター パラメータを使用してください。
定義
getAuditConfigバージョン 5.0 の新機能。
getAuditConfigは、 とmongodmongosサーバーインスタンスから監査する構成を取得する管理コマンドです。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
重要
このコマンドは、MongoDB Atlas クラスターではサポートされていません。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
構文
このコマンドの構文は、次のとおりです。
db.adminCommand( { getAuditConfig: 1 } )
動作
を使用するには、 監査getAuditConfig を有効にする必要があります。
ランタイム監査構成に参加していないノードは、 auditLog.filterとsetParameter.auditAuthorizationSuccessの現在の構成ファイル設定を返します。
ランタイム監査するに参加しているノードは、メモリから現在の構成を同期します。構成の更新はoplogメカニズムを介して分散されるため、 mongodノードの更新はセカンダリ ノードにすばやく分散されます。ただし、 ノードでは分散メカニズムは異なります。mongos mongospollノードは、構成更新のために定期的にプライマリサーバーを する必要があります。シャードがプライマリサーバーでアップデートされた構成の詳細をポーリングする前に、プライマリサーバーで を実行し、シャードでsetAuditConfig getAuditConfigを実行すると、ポーリング遅延により古いデータが表示される可能性があります。
注意
自動監査スクリプトを作成している場合は、引用符のスタイルとクラスター署名を表すために使用される型が、 mongoshとレガシーのmongo shell では異なることに注意してください。 mongoshでは、型は Binary と Long、Long です。 レガシー shell で対応する型は、BinData と NumberLong です。
// mongosh signature: { hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), keyId: Long("0") } // mongo "signature" : { "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : Long(0) }
例
データベースでgetAuditConfig adminを実行します。
db.adminCommand({getAuditConfig: 1})
サンプル サーバーは、読み取りおよび書込み操作を監査するように構成されています。 必要な操作をキャプチャするフィルターがあり、 auditAuthorizationSuccess値はtrueに設定されています。
{ generation: ObjectId("60e73e74680a655705f16525"), filter: { atype: 'authCheck', 'param.command': { '$in': [ 'find', 'insert', 'delete', 'update', 'findandmodify' ] } }, auditAuthorizationSuccess: true, ok: 1, '$clusterTime': { clusterTime: Timestamp(1, 1625767540), signature: { hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), keyId: Long("0") } }, operationTime: Timestamp(1, 1625767540) }