Amazon DocumentDB イベントの監査 - Amazon DocumentDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon DocumentDB イベントの監査

Amazon DocumentDB (MongoDB との互換性) を使用すると、クラスター内で実行されたイベントを監査できます。ログに記録されるイベントの例としては、認証の成功と失敗、データベース内のコレクションの削除、インデックスの作成などがあります。Amazon DocumentDB ではデフォルトで監査が無効になっているため、この機能を使用する必要があります。

監査が有効になると、Amazon DocumentDB はデータ定義言語 (DDL)、認証、認可、およびユーザー管理イベントを Amazon CloudWatch Logs に記録します。監査が有効になると、Amazon DocumentDB はクラスターの監査レコード(JSON ドキュメント)を Amazon CloudWatch Logs にエクスポートします。Amazon CloudWatch Logs を使用すると、Amazon DocumentDB 監査イベントを分析、モニタリング、アーカイブできます。

Amazon DocumentDB では監査を有効にしても追加料金は発生しませんが、CloudWatch Logs の使用には標準料金がかかります。CloudWatch Logs の料金については、「」を参照してください。Amazon CloudWatch の料金

Amazon DocumentDB 監査機能は、AWS CloudTrail。CloudTrail は、AWS Command Line Interface(AWS CLI) またはAWS Management Consoleは、クラスター、インスタンス、パラメータグループ、スナップショットなどのリソース上で実行できます。の監査AWSリソースはCloudTrail 有効化され、無効にすることはできません。Amazon DocumentDB 監査機能は、オプトイン機能です。これによって、オブジェクト (データベース、コレクション、インデックスやユーザーなど) のクラスター内で発生したオペレーションが記録されます。

サポートされるイベント

Amazon DocumentDB 監査では、次のイベントカテゴリがサポートされています。接続,データ定義言語 (DDL),ユーザー管理, およびauthorization。イベントタイプは次のとおりです。

イベントタイプ カテゴリ 説明
authCheck 承認 不正な操作によるオペレーションの実行。
authenticate Connection 新規接続に対する認証 (成功または失敗)。
createDatabase DDL 新しいデータベースの作成。
createCollection DDL データベース内での新しいコレクションの作成。
createIndex DDL コレクション内での新しいインデックスの作成。
dropCollection DDL データベース内のコレクションの削除。
dropDatabase DDL データベースの削除。
dropIndex DDL コレクション内のインデックスの削除。
createUser ユーザー管理 新しいユーザーの作成。
dropAllUsersFromDatabase ユーザー管理 データベース内のすべてのユーザーの削除。
dropUser ユーザー管理 既存のユーザーの削除。
grantRolesToUser ユーザー管理 ユーザーにロールを付与します。
revokeRolesFromUser ユーザー管理 ユーザーからのロールを取り消します。
updateUser ユーザー管理 既存のユーザーの更新。

監査の有効化

クラスターでの監査の有効化は、2 ステップのプロセスです。両方のステップが完了していることを確認してください。完了していない場合、監査ログが CloudWatch Logs に送信されません。

ステップ 1. audit_logs クラスターパラメータを有効にする

audit_logs パラメータを enabled に設定するには、新しいクラスターパラメータグループを作成するか、既存のカスタムパラメータグループを使用して、audit_logsenabled に設定してパラメータを変更します。デフォルトのパラメータグループを変更することはできません。

詳細については、以下を参照してください。

ステップ 2. Amazon CloudWatch Logs のエクスポートを有効にする

の値audit_logsクラスターパラメータがenabledでは、Amazon DocumentDB を有効にして Amazon CloudWatch にログをエクスポートできるようにする必要があります。これらのステップをいずれか一方でも省略すると、監査ログが CloudWatch に送信されません。

クラスターを作成する場合、ポイントインタイムリストアを実行する場合、またはスナップショットを復元する場合は、以下のステップで CloudWatch Logs を有効にすることができます。

AWS Management Console の使用

Amazon DocumentDB のログを CloudWatch にエクスポートできるようにするには、以下のトピックを参照してください。

AWS CLI の使用

新しいクラスターの作成時に監査ログを有効にするには

次のコードでは、クラスターsample-clusterに設定され、CloudWatch 監査ログが有効になります。

Linux、macOS、Unix の場合:

aws docdb create-db-cluster \ --db-cluster-identifier sample-cluster \ --port 27017 \ --engine docdb \ --master-username master-username \ --master-user-password password \ --db-subnet-group-name default \ --enable-cloudwatch-logs-exports audit

Windows の場合:

aws docdb create-db-cluster ^ --db-cluster-identifier sample-cluster ^ --port 27017 ^ --engine docdb ^ --master-username master-username ^ --master-user-password password ^ --db-subnet-group-name default ^ --enable-cloudwatch-logs-exports audit

既存のクラスターを変更するときに監査ログを有効にするには

次のコードでは、クラスターを変更します。sample-clusterに設定され、CloudWatch 監査ログが有効になります。

Linux、macOS、Unix の場合:

aws docdb modify-db-cluster \ --db-cluster-identifier sample-cluster \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit"]}'

Windows の場合:

aws docdb modify-db-cluster ^ --db-cluster-identifier sample-cluster ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit"]}'

これらのオペレーションによる出力は、次のようになります (JSON 形式)。

{ "DBCluster": { "HostedZoneId": "ZNKXH85TT8WVW", "StorageEncrypted": false, "DBClusterParameterGroup": "default.docdb4.0", "MasterUsername": "<user-name>", "BackupRetentionPeriod": 1, "Port": 27017, "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "sg-77186e0d" } ], "DBClusterArn": "arn:aws:rds:us-east-1:900083794985:cluster:sample-cluster", "Status": "creating", "Engine": "docdb", "EngineVersion": "4.0.0", "MultiAZ": false, "AvailabilityZones": [ "us-east-1a", "us-east-1c", "us-east-1f" ], "DBSubnetGroup": "default", "DBClusterMembers": [], "ReaderEndpoint": "sample-cluster.cluster-ro-corcjozrlsfc.us-east-1.docdb.amazonaws.com", "EnabledCloudwatchLogsExports": [ "audit" ], "PreferredMaintenanceWindow": "wed:03:08-wed:03:38", "AssociatedRoles": [], "ClusterCreateTime": "2019-02-13T16:35:04.756Z", "DbClusterResourceId": "cluster-YOS52CUXGDTNKDQ7DH72I4LED4", "Endpoint": "sample-cluster.cluster-corcjozrlsfc.us-east-1.docdb.amazonaws.com", "PreferredBackupWindow": "07:16-07:46", "DBClusterIdentifier": "sample-cluster" } }

監査の無効化

監査を無効にするには、CloudWatch Logs のエクスポートを無効にし、audit_logsパラメータ。

CloudWatch Logs のエクスポートを無効にする

監査ログのエクスポートを無効にするには、AWS Management Consoleまたは AWS CLI を使用します。

AWS Management Console の使用

以下の手順では、AWS Management Consoleをクリックして、CloudWatch へのAmazon DocumentDB エクスポートを無効にします。

監査ログを無効にするには

  1. にサインインします。AWS Management Consoleを開き、Amazon DocumentDB コンソールを開きます。https://console.aws.amazon.com/docdb

  2. ナビゲーションペインで [Clusters] を選択します。ログのエクスポートを無効にするクラスターの名前の左側にあるボタンを選択します。

  3. [アクション] を選択してから、[変更] を選択します。

  4. [ログのエクスポート] セクションまで下にスクロールし、[無効] を選択します。

  5. [Continue] を選択します。

  6. 変更を確認してから、この変更をクラスターにいつ適用するかを選択します。

    • Apply during the next scheduled maintenance window (次に予定されているメンテナンス期間中に適用)

    • すぐに適用

  7. [Modify cluster] (クラスターの変更) を選択します。

AWS CLI の使用

次のコードでは、クラスターを変更します。sample-clusterに設定され、CloudWatch 監査ログが無効になります。

Linux、macOS、Unix の場合:

aws docdb modify-db-cluster \ --db-cluster-identifier sample-cluster \ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["audit"]}'

Windows の場合:

aws docdb modify-db-cluster ^ --db-cluster-identifier sample-cluster ^ --cloudwatch-logs-export-configuration '{"DisableLogTypes":["audit"]}'

このオペレーションによる出力は、次のようになります (JSON 形式)。

{ "DBCluster": { "DBClusterParameterGroup": "default.docdb4.0", "HostedZoneId": "ZNKXH85TT8WVW", "MasterUsername": "<user-name>", "Status": "available", "Engine": "docdb", "Port": 27017, "AvailabilityZones": [ "us-east-1a", "us-east-1c", "us-east-1f" ], "EarliestRestorableTime": "2019-02-13T16:35:50.387Z", "DBSubnetGroup": "default", "LatestRestorableTime": "2019-02-13T16:35:50.387Z", "DBClusterArn": "arn:aws:rds:us-east-1:900083794985:cluster:sample-cluster2", "Endpoint": "sample-cluster2.cluster-corcjozrlsfc.us-east-1.docdb.amazonaws.com", "ReaderEndpoint": "sample-cluster2.cluster-ro-corcjozrlsfc.us-east-1.docdb.amazonaws.com", "BackupRetentionPeriod": 1, "EngineVersion": "4.0.0", "MultiAZ": false, "ClusterCreateTime": "2019-02-13T16:35:04.756Z", "DBClusterIdentifier": "sample-cluster2", "AssociatedRoles": [], "PreferredBackupWindow": "07:16-07:46", "DbClusterResourceId": "cluster-YOS52CUXGDTNKDQ7DH72I4LED4", "StorageEncrypted": false, "PreferredMaintenanceWindow": "wed:03:08-wed:03:38", "DBClusterMembers": [], "VpcSecurityGroups": [ { "Status": "active", "VpcSecurityGroupId": "sg-77186e0d" } ] } }

audit_logs パラメータを無効にする

クラスターの audit_logs パラメータを無効にするには、audit_logs パラメータ値が disabled であるパラメータグループを使用するようにクラスターを変更します。または、クラスターの audit_logs パラメータグループのパラメータ値を disabled に変更することもできます。

詳細については、以下のトピックを参照してください。

監査イベントへのアクセス

Amazon CloudWatch の監査イベントにアクセスするには、以下のステップを実行してください。

  1. CloudWatch コンソール (https://console.aws.amazon.com/cloudwatch/) を開きます。

  2. Amazon DocumentDB クラスターと同じリージョンであることを確認します。

  3. ナビゲーションペインで [ログ] を選択します。

  4. クラスターの監査ログを確認するため、リストから /aws/docdb/yourClusterName/audit を見つけ出して選択します。

    各インスタンスの監査イベントは、各インスタンス名の下に表示されます。