AWS CloudTrail
ユーザーガイド (Version 1.0)

証跡の作成

手順に従って、すべてのリージョンに適用される証跡を作成します。すべてのリージョンに適用される証跡は、すべてのリージョンのログファイルを S3 バケットに配信します。証跡を作成すると、指定したイベントのログ記録が CloudTrail によって自動的に開始されます。

注記

認証を作成したら、より詳細な分析と CloudTrail ログで収集されたデータに基づいた行動のためにその他の AWS サービスを設定できます。詳細については、「CloudTrail サポートされるサービスと統合」を参照してください。

コンソールで証跡を作成する

証跡については、次の設定を指定できます。

  • 証跡をすべてのリージョンに適用するか、それとも 1 つのリージョンに適用するかを指定する。

  • ログファイルを受け取るための Amazon S3 バケットを指定する。

  • 管理イベントとデータイベントについて、ログ記録の対象を読み取り専用イベントにするか、書き込み専用イベントにするか、それともすべてのイベントにするかを指定する。

AWS マネジメントコンソール を使用して CloudTrail 証跡を作成するには

  1. AWS マネジメントコンソール にサインインした後、https://console.aws.amazon.com/cloudtrail/ にある CloudTrail コンソールを開きます。

  2. 証跡を作成する AWS リージョンを選択します。

  3. [Get Started Now (今すぐ開始する)] を選択します。

    ヒント

    [Get Started Now (今すぐ開始する)] が表示されない場合は、[Trails (証跡)]、[Create trail (証跡の作成)] の順に選択します。

  4. [Create Trail (証跡の作成)] ページの [Trail name (証跡名)] に証跡の名前を入力します。詳細については、「CloudTrail 証跡の命名要件」を参照してください。

  5. [Apply trail to all regions (すべてのリージョンに証跡を適用する)] で [Yes (はい)] を選択すると、すべてのリージョンのログファイルを受信します。これがデフォルトの設定であり、かつ推奨の設定です。[No (いいえ)] を選択した場合は、証跡を作成したリージョンのログファイルのみがログに記録されます。

  6. [Management events (管理イベント)] の [Read/Write events (読み取り/書き込みイベント)] で、ログに記録する証跡を [All (すべて)]、[Read-only (読み取りのみ)]、[Write-only (書き込みのみ)] または [None (なし)] から選択し、[保存] を選択します。デフォルトでは、証跡はすべての管理イベントを記録します。詳細については、「管理イベント」を参照してください。

  7. [Data events] では、Amazon S3 バケットか AWS Lambda 関数、またはその両方のログ記録を指定することができます。デフォルトでは、証跡はデータイベントを記録しません。データイベントのログ記録には追加料金が適用されます。CloudTrail の料金については、「AWS CloudTrail 料金表」を参照してください。

    すべての S3 バケットおよび Lambda 関数を記録するか、バケットまたは関数を個々に指定するオプションを選択することができます。

    Amazon S3 バケットで、以下のように行います。

    • [S3] タブを選択します。

    • バケットを指定するには、[Add S3 bucket (S3 バケットを追加する)] を選択します。データイベントをログに記録する S3 バケット名とプレフィックス (オプション) を入力します。バケットごとに、[読み取り] イベント (例: GetObject) か、[書き込み] イベント (例: PutObject)、または両方を記録するかどうかを選択します。詳細については、「データイベント」を参照してください。

    • ご使用の AWS アカウントのすべての S3 バケットにデータイベントを記録するには、[Select all S3 buckets in your account (アカウントのすべての S3 バケットを選択)] を選択します。続いて、記録するイベントとして [読み取り] イベント (例: GetObject) か、[書き込み] イベント (例: PutObject)、または両方を選択します。この設定は、個別のバケットに設定した個々の設定よりも優先されます。たとえば、すべての S3 バケットにログ記録 [読み取り] イベントを指定し、データイベントログ記録に特定のバケットの追加を選択した場合、追加したバケットには既に [読み取り] が設定されています。選択を解除することはできません。[書き込み] のオプションしか設定することができません。

      注記

      [アカウントのすべての S3 バケットの選択] オプションを選択すると、現在ご使用の AWS アカウント内のすべてのバケットや、証跡作成後に作成する任意のバケットで、データイベントのログ記録を行うことができるようになります。このアクティビティが、別の AWS アカウントに属するバケットで実行されている場合でも、AWS アカウントのユーザーまたはロールによって実行されるデータイベントのアクティビティのログ記録も行うことができます。

      証跡が 1 つのリージョンのみに適用される場合、[アカウントのすべての S3 バケットの選択] オプションを選択すると、同じリージョン内のすべてのバケット、およびそのリージョンで後で作成するバケットに対して、データイベントのログ記録が証跡として有効になります。AWS アカウント内の他のリージョンの Amazon S3 バケットのデータイベントは記録されません。

    Lambda 関数で、以下のように行います。

    • [Lambda] タブを選択します。

    • 関数を個々にログ記録するように指定するには、リストからそれらの関数を選択します。

      注記

      15,000 を超える Lambda 関数がアカウントに存在する場合は、証跡作成時に CloudTrail コンソールですべての関数を表示または選択することはできません。表示されていない場合でも、すべての関数をログ記録するオプションを選択することができます。特定の関数のデータイベントをログ記録する場合、ARN が分かれば、関数を手動で追加することができます。コンソールで証跡を作成したら、AWS CLI や put-event-selectors コマンドを使用して、特定の Lambda 関数のデータイベントのログ記録を設定することもできます。詳細については、「AWS CLI を使用して証跡を管理する」を参照してください。

    • AWS アカウントのすべての Lambda 関数に対するデータイベントを記録するには、[Log all current and future functions (現在および将来の関数をすべて記録する)] を選択します。この設定は、関数に個々に設定した各設定よりも優先されます。すべての関数が表示されていなくても、関数はすべてログ記録されます。

      注記

      すべてのリージョンで証跡を作成している場合は、この選択によって、AWS アカウントの現時点のすべての関数や、証跡作成後に任意のリージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。単一リージョンで証跡を作成している場合は、この選択によって、AWS アカウントの対象リージョンの現時点のすべての関数や、証跡作成後に対象リージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。他のリージョンで作成された Lambda 関数のデータイベントのログ記録は有効になりません。

      このアクティビティが、その他の AWS アカウントに属する関数で実行されている場合でも、すべての関数のデータイベントのログ記録を行うと、AWS アカウントのユーザーまたはロールによって実行されるデータイベントのアクティビティのログ記録も有効になります。

  8. [Storage location (ストレージの場所)] の [Create a S3 bucket (S3 バケットを作成する)] で [Yes (はい)] を選択すると、新しいバケットが作成されます。新しいバケットを作成すると、CloudTrail によって必要なバケットポリシーが作成され、適用されます。

    注記

    [No] を選択した場合は、既存の S3 バケットを選択します。バケットポリシーでは、バケットへの書き込み権限を CloudTrail に付与する必要があります。バケットポリシーを手動で編集する方法については、CloudTrail の Amazon S3 バケットのポリシー を参照してください。

  9. [S3 bucket (S3 バケット)] で、ログファイルストレージとして指定するバケットの名前を入力します。名前はグローバルに一意である必要があります。詳細については、「Amazon S3 バケットの命名要件」を参照してください。

  10. 詳細設定を指定するには、「証跡の詳細設定を指定する」を参照してください。それ以外の場合は、[Create (作成)] を選択します。

  11. 新しい証跡が [Trails (証跡)] ページに表示されます。[Trails (証跡)] ページでは、すべてのリージョンを対象に、アカウント内の証跡が表示されます。約 15 分で CloudTrail によってログファイルが発行され、アカウント内で実行された AWS API コールが表示されます。ユーザーは、指定した S3 バケット内のログファイルを確認することができます。

注記

証跡の作成後に証跡名を変更することはできません。ただし、証跡を削除して新しい証跡を作成することは可能です。

証跡の詳細設定を指定する

証跡については、次の設定を指定できます。

  • ログファイルを受け取る S3 バケットのログファイルプレフィックスを指定する。

  • デフォルトの暗号化 (Amazon S3 で管理された暗号化キー (SSE-S3)) の代わりに、AWS Key Management Service (SSE-KMS) を使用してログファイルを暗号化します。

  • ログファイルの検証を有効にする。

  • ログファイルの配信時に通知を送る Amazon SNS を指定する。

証跡の詳細設定を指定するには

  1. [Storage location (ストレージの場所)] で、[Advanced (詳細)] を選択します。

  2. [Log file prefix (ログファイルのプレフィックス)] フィールドで、Amazon S3 バケットのプレフィックスを入力します。Amazon S3 オブジェクトの URL にプレフィックスを付け加えることで、そのバケット内にフォルダのような構成を作成できます。ログファイルの保存先となる場所は、テキストフィールドの下に表示されます。

  3. [SSE-KMS を使用してログファイルを暗号化] で、SSE-S3 を使用する代わりに SSE-KMS を使用してログファイルを暗号化する場合は、[はい] を選択します。

  4. [Create a KMS key] で、[Yes] を選択して新しいキーを作成するか、または [No] を選択して既存のキーを使用します。

  5. [Yes] を選択した場合、[KMS key (KMS キー)] フィールドにエイリアスを入力します。CloudTrail は、キーを使用してログファイルを暗号化し、ポリシーを追加します。

    注記

    [No (いいえ)] を選択した場合は、既存の KMS キーを選択します。別のアカウントのキーの ARN を入力することもできます。詳細については、「CMK を使用するために証跡を更新する」を参照してください。キーポリシーでは、CloudTrail がキーを使用してログファイルを暗号化することと、指定したユーザーが暗号化されていない形式でログファイルを読み取ることを許可する必要があります。キーポリシーを手動で編集する方法については、CloudTrail の AWS KMS キーポリシーの設定 を参照してください。

  6. [Enable log file validation (ログファイル検証を有効にする)] で [Yes (はい)] を選択して、S3 バケットにログダイジェストが配信されるようにします。ダイジェストファイルは、ログファイルが CloudTrail に配信された後に変更されていないことを確認するために使用できます。詳細については、「CloudTrail ログファイルの整合性の検証」を参照してください。

  7. バケットにログが配信されるたびに通知を受け取る場合は、[Send SNS notification for every log file delivery (ログファイルの配信ごとに SNS 通知を送信する)] で [Yes (はい)] を選択します。CloudTrail は、1 つのログファイルに複数のイベントを保存します。SNS 通知は、ログファイルごとに送信されます (イベントごとではありません)。

  8. [Create a SNS topic (新しい SNS トピックを作成する)] で [Yes (はい)] を選択して新しいトピックを作成するか、または [No (いいえ)] を選択して既存のトピックを使用します。すべてのリージョンに適用される証跡を作成した場合、すべてのリージョンからのログファイル配信を知らせる SNS 通知は、ユーザーが作成した単一の SNS トピックに送信されます。

    注記

    [No (いいえ)] を選択した場合は、既存のトピックを選択します。別のリージョンにあるトピックの ARN を入力したり、適切なアクセス許可を持ったアカウントにあるトピックの ARN を入力することもできます。詳細については、「CloudTrail の Amazon SNS トピックポリシー」を参照してください。

  9. [Yes (はい)] を選択した場合は、[SNS topic (SNS トピック)] フィールドに名前を入力します。

    トピックを作成する場合は、ログファイル配信の通知を受けるトピックを受信登録する必要があります。受信登録は Amazon SNS コンソールから行うことができます。通知頻度の都合上、受信登録については、Amazon SQS キューを使用して通知をプログラムで処理するように設定することをお勧めします。詳細については、「Amazon Simple Notification Service 入門ガイド」を参照してください。

  10. [Create (作成)] を選択します。

次のステップ

証跡を作成したら、証跡に戻って次の変更を加えることができます。

注記

証跡を設定する際には、別のアカウントに属している S3 バケットや SNS トピックを選択することもできます。ただし、CloudTrail から CloudWatch Logs ロググループにイベントを配信する場合は、現在のアカウント内に存在するロググループを選択する必要があります。