メニュー
Amazon Relational Database Service
ユーザーガイド (API Version 2014-10-31)

AWS CloudTrail を使用して Amazon RDS API 呼び出しのログを記録する

AWS CloudTrail は、AWS アカウントによって、または AWS アカウントの代わりに行われた Amazon RDS API 呼び出しをすべて記録するサービスです。ログ情報は、Amazon S3 バケットに格納されます。CloudTrail により収集された情報を使用して、Amazon RDS DB インスタンスのアクティビティを監視できます。たとえば、リクエストが正常に完了したかどうかや、リクエストを行ったユーザーを判断できます。CloudTrail の詳細については、『AWS CloudTrail User Guide』を参照してください。

Amazon RDS コンソールまたは Amazon RDS コマンドラインインターフェイスを使用して AWS アカウントの代わりにアクションが実行された場合、AWS CloudTrail ではそのアクションが Amazon RDS API への呼び出しとして記録されます。たとえば、Amazon RDS コンソールを使用して DB インスタンスを変更した場合や、AWS CLI の rds-modify-db-instance コマンドを呼び出した場合、AWS CloudTrail のログには、Amazon RDS API の ModifyDBInstance アクションへの呼び出しが表示されます。AWS CloudTrail に記録される Amazon RDS API アクションのリストについては、「Amazon RDS API リファレンス」を参照してください。

注記

AWS CloudTrail では、Amazon RDS API 呼び出しのイベントのみが記録されます。Amazon RDS API の一部ではないデータベースで実行されたアクションを監査する場合 (ユーザーがデータベースに接続するときや、データベーススキーマに変更が加えられたときなど)、DB エンジンに装備された監視機能を使用する必要があります。

CloudTrail イベントログ作成機能の設定

CloudTrail は、監査証跡をリージョンごとに別個に作成し、Amazon S3 バケットに保存します。ログファイルの作成時に Amazon SNS を使用して通知するように CloudTrail を設定することができます (ただし、オプションです)。CloudTrail は通知を頻繁に行います。そのため、Amazon SQS キューと組み合わせて Amazon SNS を使用し、プログラムを使って通知を処理することをお勧めします。

CloudTrail は、AWS マネジメントコンソール、AWS CLI、または API を使用して有効にすることができます。CloudTrail のログ作成機能を有効にすると、CloudTrail サービスにより、ログファイルを格納する Amazon S3 バケットを作成できるようになります。詳細については、『AWS CloudTrail User Guide』の「証跡の作成と更新」を参照してください。『AWS CloudTrail User Guide』では、複数のリージョンの CloudTrail ログを 1 つの Amazon S3 バケットに集計する方法も説明されています。

CloudTrail サービスを使用してもコストは発生しません。ただし、Amazon S3 の標準使用料と Amazon SNS の使用料 (このオプションを追加した場合) が適用されます。料金の詳細については、Amazon S3Amazon SNS の料金表ページを参照してください。

CloudTrail ログファイルの Amazon RDS イベントエントリ

CloudTrail ログファイルは、JSON を使用してフォーマットしたイベント情報を含みます。1 件のイベントレコードは、1 回の AWS API 呼び出しを表し、アクションをリクエストしたユーザーやリクエストの日時など、リクエストされたアクションに関する情報を含みます。

CloudTrail ログファイルは、Amazon RDS API 呼び出しだけでなく、AWS アカウントに関するすべての AWS API 呼び出しイベントを含みます。ただし、ログファイルを読み取って、eventName 要素を使用して Amazon RDS API の呼び出しをスキャンできます。

以下の例では、DB インスタンスのスナップショットを作成し、Amazon RDS コンソールを使用してそのインスタンスを削除したユーザーの CloudTrail ログを示しています。コンソールは、userAgent 要素によって識別されます。コンソールによりリクエストされた API 呼び出し (CreateDBSnapshotDeleteDBInstance) は各レコードの eventName 要素で確認できます。ユーザーに関する情報 (Alice) は userIdentity 要素で確認できます。

Copy
{ Records:[ { "awsRegion":"us-west-2", "eventName":"CreateDBSnapshot", "eventSource":"rds.amazonaws.com", "eventTime":"2014-01-14T16:23:49Z", "eventVersion":"1.0", "sourceIPAddress":"192.0.2.01", "userAgent":"AWS Console, aws-sdk-java\/unknown-version Linux\/2.6.18-kaos_fleet-1108-prod.2 Java_HotSpot(TM)_64-Bit_Server_VM\/24.45-b08", "userIdentity": { "accessKeyId":"AKIADQKE4SARGYLE", "accountId":"123456789012", "arn":"arn:aws:iam::123456789012:user/Alice", "principalId":"AIDAI2JXM4FBZZEXAMPLE", "sessionContext": { "attributes": { "creationDate":"2014-01-14T15:55:59Z", "mfaAuthenticated":false } }, "type":"IAMUser", "userName":"Alice" } }, { "awsRegion":"us-west-2", "eventName":"DeleteDBInstance", "eventSource":"rds.amazonaws.com", "eventTime":"2014-01-14T16:28:27Z", "eventVersion":"1.0", "sourceIPAddress":"192.0.2.01", "userAgent":"AWS Console, aws-sdk-java\/unknown-version Linux\/2.6.18-kaos_fleet-1108-prod.2 Java_HotSpot(TM)_64-Bit_Server_VM\/24.45-b08", "userIdentity": { "accessKeyId":"AKIADQKE4SARGYLE", "accountId":"123456789012", "arn":"arn:aws:iam::123456789012:user/Alice", "principalId":"AIDAI2JXM4FBZZEXAMPLE", "sessionContext": { "attributes": { "creationDate":"2014-01-14T15:55:59Z", "mfaAuthenticated":false } }, "type":"IAMUser", "userName":"Alice" } } ] }

CloudTrail ログファイルのさまざまな要素と値の詳細については、『AWS CloudTrail User Guide』の「CloudTrail イベントリファレンス」を参照してください。

CloudTrail が統合された Amazon パートナーソリューションを使用して CloudTrail ログファイルの読み取りと分析を実行することもできます。オプションについては、AWS パートナーのページを参照してください。