証跡の作成
手順に従って、すべてのリージョンに適用される証跡を作成します。すべてのリージョンに適用される証跡は、すべてのリージョンのログファイルを S3 バケットに配信します。証跡を作成すると、指定したイベントのログ記録が AWS CloudTrail によって自動的に開始されます。
注記
認証を作成したら、より詳細な分析と CloudTrail ログで収集されたデータに基づいた行動のためにその他の AWS サービスを設定できます。詳細については、「CloudTrail がサポートされているサービスと統合 」を参照してください。
コンソールでの証跡の作成 (基本的なイベントセレクタ)
コンソールでは、有効にしたすべての AWS リージョンのイベントをログに記録する証跡を作成します。これは推奨されるベストプラクティスです。単一リージョンでイベントのログ記録を行うには (非推奨)、AWS CLI を使用します。
アドバンストイベントセレクタをまだ有効にしていない場合は、次の手順を使用します。アドバンストイベントセレクタを有効にしている場合は、コンソールでの証跡の作成 (アドバンストイベントセレクタ) を参照して証跡でデータイベントログを設定します。
AWS Management Console を使用して CloudTrail 証跡を作成するには
AWS Management Console にサインインし、CloudTrail コンソールを開きます (https://console.aws.amazon.com/cloudtrail/
)。 -
CloudTrail サービスのホームページでは、[証跡] ページ、または [ダッシュボード] ページの [証跡] セクションで、[証跡の作成] を選択します。
-
[Create Trail] (証跡の作成) ページの [Trail name] (証跡名) に証跡の名前を入力します。詳細については、「命名の要件」を参照してください。
-
これが AWS Organizations 組織の証跡の場合、組織内のすべてのアカウントに対して証跡を有効にできます。このオプションを表示するには、管理アカウントまたは委任された管理者アカウントのユーザーまたはロールでコンソールにサインインする必要があります。組織の証跡を正しく作成するには、ユーザーまたはロールに十分なアクセス許可があることを確認してください。詳細については、「組織の証跡の作成 」を参照してください。
-
[ストレージの場所] で、[新しい S3 バケットを作成する] を選択すると、新しいバケットが作成されます。新しいバケットを作成すると、CloudTrail によって必要なバケットポリシーが作成され、適用されます。
注記
[Use existing S3 bucket] を選択した場合、[Trail log bucket name] のバケットを指定するか、[Browse] を選択してバケットを選択します。バケットポリシーでは、バケットへの書き込み権限を CloudTrail に付与する必要があります。バケットポリシーを手動で編集する方法については、CloudTrail の Amazon S3 バケットポリシー を参照してください。
ログを見つけやすくするために、新しいフォルダ (プレフィックスとも呼ばれます) を既存のバケットに作成して CloudTrail ログを保存します。プレフィックスを [プレフィックス] に入力します。
-
[Log file SSE-KMS encryption] (ログファイルの SSE-KMS 暗号化) で、SSE-S3 暗号化を使用する代わりに SSE-KMS 暗号化を使用してログファイルを暗号化する場合は、[Enabled] (有効) を選択します。デフォルトは [Enabled] です。SSE-KMS 暗号化を有効にしない場合、ログは SSE-S3 暗号化を使用して暗号化されます。SSE-KMS 暗号化の詳細については、「AWS Key Management Service (SSE-KMS) によるサーバー側の暗号化の使用」を参照してください。SSE-S3 暗号化の詳細については、「Amazon S3 が管理する暗号化キーによるサーバー側の暗号化 (SSE−S3) の使用」を参照してください。
SSE-KMS 暗号化を有効にする場合は、[New] または [Existing] AWS KMS key を選択します。[AWS KMS Alias] で、
alias/
MyAliasName
フォーマットのエイリアスを指定します。詳細については、「KMS キーを使用するようにリソースを更新する 」を参照してください。CloudTrail は、AWS KMS マルチリージョンキーもサポートしています。マルチリージョンキーの詳細については、AWS Key Management Service デベロッパーガイドの「マルチリージョンキーを使用する」を参照してください。注記
別のアカウントのキーの ARN を入力することもできます。このキーポリシーは、CloudTrail がキーを使用してログファイルを暗号化し、指定したユーザーが暗号化されていない形式でログファイルを読み取れるようにする必要があります。キーポリシーを手動で編集する方法については、CloudTrail の AWS KMS キーポリシーの設定 を参照してください。
-
[Additional settings] で、次の操作を行います。
-
[ログファイル検証を有効にする] で [Enabled] を選択して、S3 バケットにログダイジェストが配信されるようにします。ダイジェストファイルは、ログファイルが CloudTrail に配信された後に変更されていないことを確認するために使用できます。詳細については、「CloudTrail ログファイルの整合性の検証」を参照してください。
-
バケットにログが配信されるたびに通知を受け取る場合は、[SNS notification delivery] で [Enabled] を選択します。CloudTrail は、1 つのログファイルに複数のイベントを保存します。SNS 通知は、ログファイルごとに送信されます (イベントごとではありません)。詳細については、「CloudTrail の Amazon SNS 通知の設定」を参照してください。
SNS 通知を有効にすると、[Create a new SNS topic] で、[New] を選択してトピックを作成するか、[Existing] を選択して既存のトピックを使用します。すべてのリージョンに適用される証跡を作成した場合、すべてのリージョンからのログファイル配信を知らせる SNS 通知は、ユーザーが作成した単一の SNS トピックに送信されます。
[New] を選択した場合、CloudTrail は新しいトピックの名前を指定します。または、自分で名前を入力できます。[Existing] を選択した場合、ドロップダウンリストから SNS トピックを選択します。別のリージョンにあるトピックの ARN を入力したり、適切なアクセス許可を持ったアカウントにあるトピックの ARN を入力することもできます。詳細については、「CloudTrail の Amazon SNS トピックポリシー」を参照してください。
トピックを作成する場合は、ログファイル配信の通知を受けるトピックを受信登録する必要があります。受信登録は Amazon SNS コンソールから行うことができます。通知頻度の都合上、受信登録については、Amazon SQS キューを使用して通知をプログラムで処理するように設定することをお勧めします。詳細については、Amazon Simple Notification Service 入門ガイドを参照してください。
-
-
オプションで、CloudTrail がログファイルを CloudWatch Logs に送信するように CloudTrail を設定するには、[CloudWatch Logs] の [Enabled] を選択します。詳細については、「CloudWatch Logs へのイベントの送信」を参照してください。
-
CloudWatch Logs との統合を有効にする場合は、[New] を選択して新しいロググループを作成するか、[Existing] を選択して既存のものを使用します。[New] を選択した場合、CloudTrail は新しいロググループの名前を指定します。または、自分で名前を入力できます。
-
[Existing] を選択した場合、ドロップダウンリストからロググループを選択します。
-
[New] を選択して、CloudWatch Logs にログを送信するためのアクセス許可のための新しい IAM ロールを作成します。[Existing] を選択して、ドロップダウンリストから既存の IAM ロールを選択します。新しいロールまたは既存のロールのポリシーステートメントは、[ポリシードキュメント] を展開すると表示されます。このロールの詳細については、「CloudTrail がモニタリングに CloudWatch Logs を使用するためのロールポリシードキュメント」を参照してください。
注記
証跡を設定する際には、別のアカウントに属している S3 バケットや SNS トピックを選択することもできます。ただし、CloudTrail から CloudWatch Logs ロググループにイベントを配信する場合は、現在のアカウント内に存在するロググループを選択する必要があります。
-
-
[タグ] で、1 つまたは複数のカスタムタグ (キーと値のペア) を証跡に追加します。CloudTrail 証跡と CloudTrail ログファイルを含む Amazon S3 バケットの両方を識別するのにタグが役立ちます。その後、CloudTrail リソースのリソースグループを使用できます。詳細については、「AWS Resource Groups」および「証跡タグを使用する理由とは」を参照してください。
-
[Choose log events] ページで、ログに記録するイベントタイプを選択します。[管理イベント] で、次の操作を行います。
-
[API activity] で、証跡で記録する対象を [読み取り] イベント、[書き込み] イベント、またはその両方を選択します。詳細については、「管理イベント」を参照してください。
-
[Exclude AWS KMS events] を選択して AWS Key Management Service (AWS KMS) イベントを、証跡から除外します。デフォルト設定では、すべての AWS KMS イベントが含まれています。
AWS KMS イベントをログまたは除外するオプションは、証跡の管理イベントをログに記録する場合にのみ使用できます。管理イベントをログに記録しないように選択した場合は、AWS KMS イベントはログに記録されず、AWS KMS イベントログ設定は変更できません。
通常、
Encrypt
、Decrypt
、GenerateDataKey
などの AWS KMS アクションは、大容量イベント (99% 以上) を生成します。これらのアクションは、[読み取り] イベントとしてログに記録されるようになりました。Disable
、Delete
、およびScheduleKey
などの小容量の関連する AWS KMS アクション (通常、AWS KMS イベントボリュームの 0.5% 未満を占める) は、[Write] (書き込み) イベントとしてログに記録されます。Encrypt
、Decrypt
、GenerateDataKey
のようなボリュームの大きなイベントを除外し、Disable
、Delete
、ScheduleKey
などの関連イベントを記録する場合は、[書き込み] 管理イベントを記録することを選択し、[Exclude AWS KMS events] チェックボックスをオフにします。 -
[Exclude Amazon RDS Data API events] を選択して、証跡から Amazon Relational Database Service データ API イベントを除外できます。デフォルト設定では、すべての Amazon RDS Data API イベントが含まれています。Amazon RDS Data API イベントの詳細については、「Aurora の Amazon RDS Amazon RDS ユーザーガイド」の「AWS CloudTrail による Data API コールのログ記録」を参照してください。
-
-
[Data events] (データイベント) で、Amazon S3 バケット、AWS Lambda 関数、Amazon DynamoDB テーブル、その他さまざまなリソースタイプのログ記録データイベントを指定できます。デフォルトでは、証跡はデータイベントを記録しません。データイベントのログ記録には追加料金が適用されます。詳細については、「データイベント」を参照してください。CloudTrail の料金については、「AWS CloudTrail 料金
」を参照してください。アドバンストイベントセレクタを使用すると、より多くのデータイベントタイプを使用できます。詳細については、このトピックの「コンソールでの証跡の作成 (アドバンストイベントセレクタ)」を参照してください。 Amazon S3 バケットの場合
-
[Data source] で、[S3] を選択します。
-
すべての現在および将来の S3 バケットを記録することを選択するか、バケットまたは関数を個々に指定することができます。デフォルトでは、現在および将来のすべての S3 バケットのデータイベントが記録されます。
注記
デフォルトの [すべての現在および将来の S3 バケット] オプションを維持すると、現在の AWS アカウント内のすべてのバケットや、証跡作成後に作成する任意のバケットで、データイベントのログ記録を行うことができるようになります。これにより、アクティビティが別の AWS アカウントに属するバケットで実行されている場合も含め、AWS アカウント内のすべての IAM アイデンティティによって実行されるデータイベントのアクティビティのログ記録も行うことができます。
証跡が 1 つのリージョンのみで作成される場合 (AWS CLI を使用して作成)、[現在および将来のすべての S3 バケット] を選択すると、同じリージョン内のすべてのバケット、およびそのリージョンで後に作成するバケットに対して、データイベントのログ記録が有効になります。AWS アカウント内の他のリージョンの Amazon S3 バケットのデータイベントは記録されません。
-
デフォルトの [All current and future S3 buckets] で、[読み取り] イベント、[書き込み] イベント、またはその両方をログ記録することを選択します。
-
個々のバケットを選択するには、[All current and future S3 buckets] の [読み取り] および [書き込み] のチェックボックスをオフにします。[Individual bucket selection] で、データイベントをログ記録するバケットを参照します。目的のバケットのバケットプレフィックスを入力して、特定のバケットを検索します。このウィンドウで、複数のバケットを選択できます。[Add bucket] を選択してより多くのバケットのデータイベントをログ記録します。[読み取り] イベント (例:
GetObject
) か、[書き込み] イベント (例:PutObject
)、または両方を選択します。この設定は、個別のバケットに設定した個々の設定よりも優先されます。たとえば、すべての S3 バケットにログ記録 [読み取り] イベントを指定し、データイベントログ記録に特定のバケットの追加を選択した場合、追加したバケットには既に [読み取り] が設定されています。選択を解除することはできません。[書き込み] のオプションしか設定することができません。
ログ記録からバケットを削除するには、[X] を選択します。
-
-
データイベントをログに記録する別のデータタイプを追加するには、[Add data event type] を選択します。
-
Lambda 関数の場合
-
[Data source] で、[Lambda] を選択します。
-
[Lambda 関数] で、[All regions] を選択してすべての Lambda 関数をログ記録するか、[Input function as ARN] を使用して、特定の関数のデータイベントをログ記録します。
AWS アカウントのすべての Lambda 関数に対するデータイベントを記録するには、[現在および将来の関数をすべて記録する] を選択します。この設定は、関数に個々に設定した各設定よりも優先されます。すべての関数が表示されていなくても、関数はすべてログ記録されます。
注記
すべてのリージョンで証跡を作成している場合は、この選択によって、AWS アカウントの現時点のすべての関数や、証跡作成後に任意のリージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。単一リージョンで証跡を作成している場合は (AWS CLI を使用して作成)、この選択によって、AWS アカウントの対象リージョンの現時点のすべての関数や、証跡作成後に対象リージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。他のリージョンで作成された Lambda 関数のデータイベントのログ記録は有効になりません。
すべての関数のデータイベントのログ記録を行うと、アクティビティが他の AWS アカウントに属する関数で実行されている場合も含め、AWS アカウント内のすべての IAM アイデンティティが実行するデータイベントのアクティビティのログ記録も有効になります。
-
[Input function as ARN] を選択した場合、Lambda 関数の ARN を入力します。
注記
15,000 を超える Lambda 関数がアカウントに存在する場合は、証跡作成時に CloudTrail コンソールですべての関数を表示または選択することはできません。表示されていない場合でも、すべての関数をログ記録するオプションを選択することができます。特定の関数のデータイベントをログ記録する場合、ARN が分かれば、関数を手動で追加することができます。コンソールで証跡を作成したら、AWS CLI や put-event-selectors コマンドを使用して、特定の Lambda 関数のデータイベントのログ記録を設定することもできます。詳細については、「AWS CLI を使用して証跡を管理する」を参照してください。
-
-
DynamoDB テーブルの場合
-
[Data event source] で、[DynamoDB] を選択します。
-
[DynamoDB table selection] で、[Browse] を選択してテーブルを選択するか、アクセス許可を持つ DynamoDB テーブルの ARN に貼り付けます。DynamoDB テーブルの ARN は次の形式です。
arn:
partition
:dynamodb:region
:account_ID
:table/table_name
別のテーブルを追加するには、[Add row] を選択し、テーブルを参照するか、アクセス許可のあるテーブルの ARN に貼り付けます。
-
-
証跡に CloudTrail Insights イベントをログに記録させたい場合は、[Insights イベント] を選択します。
[Event type] で、[Insights events] を選択します。Insights イベントで、API コールレート、API エラーレート、または両方を選択します。[API コール率] の Insights イベントをログに記録するには、[Write] 管理イベントをログ記録している必要があります。[API エラー率] の Insights イベントをログに記録するには、[Read] または [Write] 管理イベントをログ記録している必要があります。
CloudTrail Insights が異常なアクティビティの管理イベントを分析し、異常が検出されたときにイベントをログに記録します。デフォルトでは、証跡は Insights イベントを記録しません。Insights トイベントの詳細については、「証跡の Insights イベントの記録」を参照してください。Insights イベントの記録には追加料金が適用されます。CloudTrail の料金については、「AWS CloudTrail 料金
」を参照してください。 Insights イベントは、証跡詳細ページの [ストレージの場所] 領域で指定されている同じ S3 バケットの、
/CloudTrail-Insight
という名前の異なるフォルダへ配信されます。CloudTrail によって新しいプレフィックスが作成されます。たとえば、現在の送信先 S3 バケットの名前がS3bucketName/AWSLogs/CloudTrail/
の場合、新しいプレフィックスが付いた S3 バケットの名前はS3bucketName/AWSLogs/CloudTrail-Insight/
になります。 -
ログに記録するイベントタイプの選択が終了したら、[Next] を選択します。
-
[Review and create] ページで選択内容を確認します。[Edit] を選択して、そのセクションに表示される証跡設定を変更します。証跡を作成する準備ができたら、[Create trail] を選択します。
-
新しい証跡が [Trails] (証跡) ページに表示されます。[Trails (証跡)] ページでは、すべてのリージョンを対象に、アカウント内の証跡が表示されます。約 5 分で CloudTrail によってログファイルが発行され、アカウント内で実行された AWS API コールが表示されます。ユーザーは、指定した S3 バケット内のログファイルを確認することができます。Insights イベントログを有効にしていて、異常なアクティビティが検出された場合、CloudTrail が最初の Insights イベントを配信するまでに最大 36 時間かかることがあります。
注記
CloudTrail は、通常、API コールから平均 5 分以内にログを配信します。この時間は保証されません。詳細については、「AWS CloudTrail サービスレベルアグリーメント
コンソールでの証跡の作成 (アドバンストイベントセレクタ)
コンソールでは、有効にしたすべての AWS リージョンのイベントをログに記録する証跡を作成します。これは推奨されるベストプラクティスです。単一リージョンでイベントのログ記録を行うには (非推奨)、AWS CLI を使用します。
アドバンストイベントセレクタを有効にしている場合は、次の手順を使用します。アドバンストイベントセレクタを有効にしている場合は、コンソールでの証跡の作成 (基本的なイベントセレクタ) を参照して証跡でデータイベントログを設定します。
AWS Management Console を使用して CloudTrail 証跡を作成するには
AWS Management Console にサインインし、CloudTrail コンソールを開きます (https://console.aws.amazon.com/cloudtrail/
)。 -
CloudTrail サービスのホームページでは、[証跡] ページ、または [ダッシュボード] ページの [証跡] セクションで、[証跡の作成] を選択します。
-
[Create Trail] (証跡の作成) ページの [Trail name] (証跡名) に証跡の名前を入力します。詳細については、「命名の要件」を参照してください。
-
これが AWS Organizations 組織の証跡の場合、組織内のすべてのアカウントに対して証跡を有効にできます。このオプションを表示するには、管理アカウントまたは委任された管理者アカウントのユーザーまたはロールでコンソールにサインインする必要があります。組織の証跡を正しく作成するには、ユーザーまたはロールに十分なアクセス許可があることを確認してください。詳細については、「組織の証跡の作成 」を参照してください。
-
[ストレージの場所] で、[新しい S3 バケットを作成する] を選択すると、新しいバケットが作成されます。新しいバケットを作成すると、CloudTrail によって必要なバケットポリシーが作成され、適用されます。
注記
[Use existing S3 bucket] を選択した場合、[Trail log bucket name] のバケットを指定するか、[Browse] を選択してバケットを選択します。バケットポリシーでは、バケットへの書き込み権限を CloudTrail に付与する必要があります。バケットポリシーを手動で編集する方法については、CloudTrail の Amazon S3 バケットポリシー を参照してください。
ログを見つけやすくするために、新しいフォルダ (プレフィックスとも呼ばれます) を既存のバケットに作成して CloudTrail ログを保存します。プレフィックスを [プレフィックス] に入力します。
-
[Log file SSE-KMS encryption] (ログファイルの SSE-KMS 暗号化) で、SSE-S3 暗号化を使用する代わりに SSE-KMS 暗号化を使用してログファイルを暗号化する場合は、[Enabled] (有効) を選択します。デフォルトは [Enabled] です。SSE-KMS 暗号化を有効にしない場合、ログは SSE-S3 暗号化を使用して暗号化されます。SSE-KMS 暗号化の詳細については、「AWS Key Management Service (SSE-KMS) によるサーバー側の暗号化の使用」を参照してください。SSE-S3 暗号化の詳細については、「Amazon S3 が管理する暗号化キーによるサーバー側の暗号化 (SSE−S3) の使用」を参照してください。
SSE-KMS 暗号化を有効にする場合は、[New] または [Existing] AWS KMS key を選択します。[AWS KMS Alias] で、
alias/
MyAliasName
フォーマットのエイリアスを指定します。詳細については、「KMS キーを使用するようにリソースを更新する 」を参照してください。CloudTrail は、AWS KMS マルチリージョンキーもサポートしています。マルチリージョンキーの詳細については、AWS Key Management Service デベロッパーガイドの「マルチリージョンキーを使用する」を参照してください。注記
別のアカウントのキーの ARN を入力することもできます。詳細については、「KMS キーを使用するようにリソースを更新する」を参照してください。このキーポリシーは、CloudTrail がキーを使用してログファイルを暗号化し、指定したユーザーが暗号化されていない形式でログファイルを読み取れるようにする必要があります。キーポリシーを手動で編集する方法については、CloudTrail の AWS KMS キーポリシーの設定 を参照してください。
-
[Additional settings] で、次の操作を行います。
-
[ログファイル検証を有効にする] で [Enabled] を選択して、S3 バケットにログダイジェストが配信されるようにします。ダイジェストファイルは、ログファイルが CloudTrail に配信された後に変更されていないことを確認するために使用できます。詳細については、「CloudTrail ログファイルの整合性の検証」を参照してください。
-
バケットにログが配信されるたびに通知を受け取る場合は、[SNS notification delivery] で [Enabled] を選択します。CloudTrail は、1 つのログファイルに複数のイベントを保存します。SNS 通知は、ログファイルごとに送信されます (イベントごとではありません)。詳細については、「CloudTrail の Amazon SNS 通知の設定」を参照してください。
SNS 通知を有効にすると、[Create a new SNS topic] で、[New] を選択してトピックを作成するか、[Existing] を選択して既存のトピックを使用します。すべてのリージョンに適用される証跡を作成した場合、すべてのリージョンからのログファイル配信を知らせる SNS 通知は、ユーザーが作成した単一の SNS トピックに送信されます。
[New] を選択した場合、CloudTrail は新しいトピックの名前を指定します。または、自分で名前を入力できます。[Existing] を選択した場合、ドロップダウンリストから SNS トピックを選択します。別のリージョンにあるトピックの ARN を入力したり、適切なアクセス許可を持ったアカウントにあるトピックの ARN を入力することもできます。詳細については、「CloudTrail の Amazon SNS トピックポリシー」を参照してください。
トピックを作成する場合は、ログファイル配信の通知を受けるトピックを受信登録する必要があります。受信登録は Amazon SNS コンソールから行うことができます。通知頻度の都合上、受信登録については、Amazon SQS キューを使用して通知をプログラムで処理するように設定することをお勧めします。詳細については、Amazon Simple Notification Service 入門ガイドを参照してください。
-
-
オプションで、CloudTrail がログファイルを CloudWatch Logs に送信するように CloudTrail を設定するには、[CloudWatch Logs] の [Enabled] を選択します。詳細については、「CloudWatch Logs へのイベントの送信」を参照してください。
-
CloudWatch Logs との統合を有効にする場合は、[New] を選択して新しいロググループを作成するか、[Existing] を選択して既存のものを使用します。[New] を選択した場合、CloudTrail は新しいロググループの名前を指定します。または、自分で名前を入力できます。
-
[Existing] を選択した場合、ドロップダウンリストからロググループを選択します。
-
[New] を選択して、CloudWatch Logs にログを送信するためのアクセス許可のための新しい IAM ロールを作成します。[Existing] を選択して、ドロップダウンリストから既存の IAM ロールを選択します。新しいロールまたは既存のロールのポリシーステートメントは、[ポリシードキュメント] を展開すると表示されます。このロールの詳細については、「CloudTrail がモニタリングに CloudWatch Logs を使用するためのロールポリシードキュメント」を参照してください。
注記
証跡を設定する際には、別のアカウントに属している S3 バケットや SNS トピックを選択することもできます。ただし、CloudTrail から CloudWatch Logs ロググループにイベントを配信する場合は、現在のアカウント内に存在するロググループを選択する必要があります。
-
-
[タグ] で、1 つまたは複数のカスタムタグ (キーと値のペア) を証跡に追加します。CloudTrail 証跡と CloudTrail ログファイルを含む Amazon S3 バケットの両方を識別するのにタグが役立ちます。その後、CloudTrail リソースのリソースグループを使用できます。詳細については、「AWS Resource Groups」および「証跡タグを使用する理由とは」を参照してください。
-
[Choose log events] ページで、ログに記録するイベントタイプを選択します。[管理イベント] で、次の操作を行います。
-
[API activity] で、証跡で記録する対象を [読み取り] イベント、[書き込み] イベント、またはその両方を選択します。詳細については、「管理イベント」を参照してください。
-
[Exclude AWS KMS events] を選択して AWS Key Management Service (AWS KMS) イベントを、証跡から除外します。デフォルト設定では、すべての AWS KMS イベントが含まれています。
AWS KMS イベントをログまたは除外するオプションは、証跡の管理イベントをログに記録する場合にのみ使用できます。管理イベントをログに記録しないように選択した場合は、AWS KMS イベントはログに記録されず、AWS KMS イベントログ設定は変更できません。
通常、
Encrypt
、Decrypt
、GenerateDataKey
などの AWS KMS アクションは、大容量イベント (99% 以上) を生成します。これらのアクションは、[読み取り] イベントとしてログに記録されるようになりました。Disable
、Delete
、およびScheduleKey
などの小容量の関連する AWS KMS アクション (通常、AWS KMS イベントボリュームの 0.5% 未満を占める) は、[Write] (書き込み) イベントとしてログに記録されます。Encrypt
、Decrypt
、GenerateDataKey
のようなボリュームの大きなイベントを除外し、Disable
、Delete
、ScheduleKey
などの関連イベントを記録する場合は、[書き込み] 管理イベントを記録することを選択し、[Exclude AWS KMS events] チェックボックスをオフにします。 -
[Exclude Amazon RDS Data API events] を選択して、証跡から Amazon Relational Database Service データ API イベントを除外できます。デフォルト設定では、すべての Amazon RDS Data API イベントが含まれています。Amazon RDS Data API イベントの詳細については、Aurora の Amazon RDS Amazon RDS ユーザーガイドの「AWS CloudTrail による Data API コールのログ記録」を参照してください。
-
-
データイベントをログに記録するには、[データイベント] を選択します。
-
[データイベントタイプ] で、データイベントをログ記録するリソースのタイプを選択します。
注記
Lake Formation によって作成された AWS Glue テーブルのデータイベントをログ記録するには、[Lake Formation] を選択します。
-
ログセレクタテンプレートを選択します。CloudTrail には、リソースタイプのすべてのデータイベントをログに記録する事前定義済みのテンプレートが含まれています。カスタムログセレクタテンプレートを構築するには、[Custom] を選択します。
注記
S3 バケットの事前定義済みテンプレートを選択すると、現在の AWS アカウント内のすべてのバケットや、証跡作成後に作成する任意のバケットで、データイベントログ記録を行うことができるようになります。これにより、アクティビティが別の AWS アカウントに属するバケットで実行されている場合も含め、AWS アカウント内のすべての IAM アイデンティティによって実行されるデータイベントのアクティビティのログ記録も行うことができます。
証跡が 1 つのリージョンのみに適用される場合、すべての S3 バケットをログ記録する事前定義済みテンプレートを選択すると、同じリージョン内のすべてのバケット、およびそのリージョンで後に作成するバケットに対して、データイベントのログ記録が可能になります。AWS アカウント内の他のリージョンの Amazon S3 バケットのデータイベントは記録されません。
すべてのリージョンで証跡を作成している場合は、Lambda 関数の事前定義済みテンプレートを選択すると、AWS アカウントの現時点のすべての関数や、証跡作成後に任意のリージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。単一リージョンで証跡を作成している場合は (AWS CLI を使用して作成)、この選択によって、AWS アカウントの対象リージョンの現時点のすべての関数や、証跡作成後に対象リージョンに作成する可能性のある Lambda 関数のデータイベントのログ記録が有効になります。他のリージョンで作成された Lambda 関数のデータイベントのログ記録は有効になりません。
すべての関数のデータイベントのログ記録を行うと、アクティビティが他の AWS アカウントに属する関数で実行されている場合も含め、AWS アカウント内のすべての IAM アイデンティティが実行するデータイベントのアクティビティのログ記録も有効になります。
-
(オプション) [セレクタ名] に、セレクタを識別する名前を入力します。セレクタ名は、「2 つの S3 バケットだけのデータイベントを記録する」など、高度なイベントセレクタに関する説明的な名前です。セレクタ名は、拡張イベントセレクタに「
Name
」と表示され、[JSON ビュー] を展開すると表示されます。 -
[Advanced event selectors] で、データイベントをログに記録する特定のリソースの式を作成します。事前定義済みのログテンプレートを使用している場合は、このステップをスキップできます。
-
次のフィールドから選択します。配列 (複数の値) を受け入れるフィールドの場合、CloudTrail は値の間に OR を追加します。
-
readOnly
-readOnly
は、true
またはfalse
の値の [Equals] に設定できます。読み取り専用データイベントは、Get*
またはDescribe*
イベントなどのリソースの状態を変更しないイベントです。書き込みイベントは、Put*
、Delete*
、またはWrite*
イベントなどのリソース、属性、またはアーティファクトを追加、変更、または削除します。read
およびwrite
イベントの両方を記録するには、readOnly
セレクタを追加しないでください。 -
eventName
-eventName
は任意の演算子を使用できます。これを使用して、CloudTrail に記録されるデータイベント (PutBucket
、PutItem
、またはGetSnapshotBlock
) を含めるまたは除外します。このフィールドには、カンマ区切りで複数の値を設定できます。 -
resources.ARN
-resources.ARN
には任意の演算子を使用することができますが、等号または不等号を使用する場合、値は、テンプレートでresources.type
の値として指定したタイプの有効なリソースの ARN と正確に一致する必要があります。以下の表は、それぞれの
resources.Type
に有効な ARN フォーマットを示しています。resources.Type resources.ARN AWS::DynamoDB::Table
arn:
partition
:dynamodb:region
:account_ID
:table/table_name
AWS::Lambda::Function
arn:
partition
:lambda:region
:account_ID
:function:function_name
AWS::S3::Object
1arn:
partition
:s3:::bucket_name
/ arn:partition
:s3:::bucket_name
/object_or_file_name
/AWS::CloudTrail::Channel
arn:
partition
:cloudtrail:region
:account_ID
:channel/channel_UUID
AWS::CodeWhisperer::Profile
arn:
partition
:codewhisperer:region
:account_ID
:profile/profile_ID
AWS::Cognito::IdentityPool
arn:
partition
:cognito-identity:region
:account_ID
:identitypool/identity_pool_ID
AWS::DynamoDB::Stream
arn:
partition
:dynamodb:region
:account_ID
:table/table_name
/stream/date_time
AWS::EC2::Snapshot
arn:
partition
:ec2:region
::snapshot/snapshot_ID
AWS::EMRWAL::Workspace
arn:
partition
:emrwal:region
::workspace/workspace_name
AWS::FinSpace::Environment
arn:
partition
:finspace:region
:account_ID
:environment/environment_ID
AWS::Glue::Table
arn:
partition
:glue:region
:account_ID
:table/database_name
/table_name
AWS::GuardDuty::Detector
arn:
partition
:guardduty:region
:account_ID
:detector/detector_ID
AWS::KendraRanking::ExecutionPlan
arn:
partition
:kendra-ranking:region
:account_ID
:rescore-execution-plan/rescore_execution_plan_ID
AWS::ManagedBlockchain::Network
arn:
partition
:managedblockchain:::networks/network_name
AWS::ManagedBlockchain::Node
arn:
partition
:managedblockchain:region
:account_ID
:nodes/node_ID
AWS::MedicalImaging::Datastore
arn:
partition
:medical-imaging:region
:account_ID
:datastore/data_store_ID
AWS::PCAConnectorAD::Connector
arn:
partition
:pca-connector-ad:region
:account_ID
:connector/connector_ID
AWS::SageMaker::FeatureGroup
arn:
partition
:sagemaker:region
:account_ID
:feature-group/feature_group_name
AWS::SageMaker::ExperimentTrialComponent
arn:
partition
:sagemaker:region
:account_ID
:experiment-trial-component/experiment_trial_component_name
AWS::S3::AccessPoint
2arn:
partition
:s3:region
:account_ID
:accesspoint/access_point_name
AWS::S3ObjectLambda::AccessPoint
arn:
partition
:s3-object-lambda:region
:account_ID
:accesspoint/access_point_name
AWS::S3Outposts::Object
arn:
partition
:s3-outposts:region
:account_ID
:object_path
AWS::SSMMessages::ControlChannel
arn:
partition
:ssmmessages:region
:account_ID
:control-channel/control_channel_ID
AWS::VerifiedPermissions::PolicyStore
arn:
partition
:verifiedpermissions:region
:account_ID
:policy-store/policy_store_ID
1 特定の S3 バケット内のすべてのオブジェクトのすべてのデータイベントをログ記録するには、
StartsWith
演算子を使用し、一致する値としてバケット ARN のみを含めます。末尾のスラッシュは意図的です。除外しないでください。2 S3 アクセスポイントのすべてのオブジェクトでイベントをログ記録するには、アクセスポイント ARN のみを使用し、オブジェクトパスを含めず、
StartsWith
またはNotStartsWith
演算子を使用することを推奨します。
データイベントリソースの ARN 形式の詳細については、AWS Identity and Access Management ユーザーガイドの「アクション、リソース、条件キー」を参照してください。
-
-
各フィールドについて、[+ Conditions] を選択して、必要な数の条件を追加します。すべての条件に対して最大 500 個の指定値を指定できます。例えば、証跡に記録されているデータイベントから 2 つの S3 バケットのデータイベントを除外するには、フィールドを resources.ARN に、オペレータを NotStartsWith に設定し、S3 バケット ARN に貼り付けるか、イベントをログに記録しない S3 バケットを参照します。
2 番目の S3 バケットを追加するには、[+ Conditions] を選択し、上記の手順を繰り返し、ARN に貼り付けるか、別のバケットをブラウズします。
注記
証跡上のすべてのセレクタに対して、最大 500 の値を設定できます。これには、
eventName
などのセレクタの複数の値の配列が含まれます。すべてのセレクタに単一の値がある場合、セレクタに最大 500 個の条件を追加できます。15,000 を超える Lambda 関数がアカウントに存在する場合は、証跡作成時に CloudTrail コンソールですべての関数を表示または選択することはできません。表示されていない場合でも、事前定義済みのセレクタテンプレートを使用してすべての関数をログ記録できます。特定の関数のデータイベントをログ記録する場合、ARN が分かれば、関数を手動で追加することができます。コンソールで証跡を作成したら、AWS CLI や put-event-selectors コマンドを使用して、特定の Lambda 関数のデータイベントのログ記録を設定することもできます。詳しくは、AWS CLI を使用して証跡を管理する を参照してください。
-
[+ Field] を選択し、必要に応じてフィールドを追加します。エラーを回避するには、フィールドに競合する値や重複する値を設定しないでください。例えば、あるセレクタで ARN を値と等しく指定せず、次に、別のセレクタで同じ値に等しくない ARN を指定します。
-
カスタムセレクタテンプレートへの変更を保存するには、[Next] をクリックします。別のログセレクタテンプレートを選択しないでください。また、このページを離れると、カスタムセレクタが失われます。
-
-
データイベントをログに記録する別のデータタイプを追加するには、[Add data event type] を選択します。ステップ 12 からこのステップを繰り返し、データイベントタイプのアドバンストイベントセレクタを設定します。
-
証跡に CloudTrail Insights イベントをログに記録させたい場合は、[Insights イベント] を選択します。
[Event type] で、[Insights events] を選択します。[API コール率] の Insights イベントをログに記録するには、[Write] 管理イベントをログ記録している必要があります。[API エラー率] の Insights イベントをログに記録するには、[Read] または [Write] 管理イベントをログ記録している必要があります。
CloudTrail Insights が異常なアクティビティの管理イベントを分析し、異常が検出されたときにイベントをログに記録します。デフォルトでは、証跡は Insights イベントを記録しません。Insights トイベントの詳細については、「証跡の Insights イベントの記録」を参照してください。Insights イベントの記録には追加料金が適用されます。CloudTrail の料金については、「AWS CloudTrail 料金
」を参照してください。 Insights イベントは、証跡詳細ページの [ストレージの場所] 領域で指定されている同じ S3 バケットの、
/CloudTrail-Insight
という名前の異なるフォルダへ配信されます。CloudTrail によって新しいプレフィックスが作成されます。たとえば、現在の送信先 S3 バケットの名前がS3bucketName/AWSLogs/CloudTrail/
の場合、新しいプレフィックスが付いた S3 バケットの名前はS3bucketName/AWSLogs/CloudTrail-Insight/
になります。 -
ログに記録するイベントタイプの選択が終了したら、[Next] を選択します。
-
[Review and create] ページで選択内容を確認します。[Edit] を選択して、そのセクションに表示される証跡設定を変更します。証跡を作成する準備ができたら、[Create trail] を選択します。
-
新しい証跡が [Trails] (証跡) ページに表示されます。[Trails (証跡)] ページでは、すべてのリージョンを対象に、アカウント内の証跡が表示されます。約 5 分で CloudTrail によってログファイルが発行され、アカウント内で実行された AWS API コールが表示されます。ユーザーは、指定した S3 バケット内のログファイルを確認することができます。Insights イベントログを有効にしていて、異常なアクティビティが検出された場合、CloudTrail が最初の Insights イベントを配信するまでに最大 36 時間かかることがあります。
注記
CloudTrail は、通常、API コールから平均 5 分以内にログを配信します。この時間は保証されません。詳細については、「AWS CloudTrail サービスレベルアグリーメント
」をご覧ください。
次のステップ
証跡を作成したら、証跡に戻って次の変更を加えることができます。
-
まだ作成していない場合は、CloudTrail を設定して CloudWatch Logs にログファイルを送信できます。詳細については、「CloudWatch Logs へのイベントの送信 」を参照してください。
-
テーブルを作成し、Amazon Athena でのクエリの実行に使用して、AWS サービスアクティビティを分析します。詳細については、Amazon Athena User Guide (Amazon Athena ユーザーガイド)の「Creating a Table for CloudTrail Logs in the CloudTrail Console (CloudTrail コンソールで CloudTrail ログのテーブルの作成)」を参照してください。
-
証跡にカスタムタグ (キーと値のペア) を追加する。
-
別の証跡を作成するには、[Trails (証跡)] ページを開き、[Add new trail (新しい証跡を追加する)] を選択します。