CloudTrail レコードの内容 - AWS CloudTrail

CloudTrail レコードの内容

レコードの本文には、リクエストされたアクションと、リクエストがいつどこで行われたかを判断するのに役立つフィールドが含まれています。オプションの値が True の場合、そのフィールドは、サービス、API、またはイベントタイプに適用される場合にのみ表示されます。Falseオプションの値は、そのフィールドが常に存在するか、その存在がサービス、API、またはイベントタイプに依存しないことを意味します。例は responseElements です。これは、変更を行うアクション (アクションの作成、更新、削除) のイベントに存在します。

eventTime

リクエストが作成された日付と時刻、協定世界時 (UTC)。イベントのタイムスタンプは、API コールが行われたサービス API エンドポイントを提供するローカルホストから取得されます。例えば、米国西部 (オレゴン) リージョンで実行される CreateBucket API イベントでは、Amazon S3 エンドポイント、s3.us-west-2.amazonaws.com を実行している AWS ホストの時間からそのタイムスタンプを取得します。一般に、AWS サービスは Network Time Protocol (NTP) を使用してシステムのクロックを同期します。

使用可能: 1.0 以降

オプション: False

eventVersion

ログイベント形式のバージョン。現在のバージョンは 1.08 です。

eventVersion の値は、major_version.minor_version の形式でメジャーおよびマイナーのバージョンです。例えば、eventVersion の値が 1.07 の場合には、1 がメジャーバージョンを示し、07 がマイナーバージョンを示します。

イベント構造に後方互換性のない変更が加えられた場合、CloudTrail により、メジャーバージョンが増分されます。これには、既に存在する JSON フィールドの削除や、フィールドのコンテンツの表現方法 (日付形式など) の変更が含まれます。イベント構造に新しいフィールドを追加する変更をした場合、CloudTrail がマイナーバージョンを増分します。これが発生する可能性があるのは、一部またはすべての既存のイベントに対して新しい情報が利用可能か、新しいイベントタイプでのみ新しい情報が利用可能な場合です。イベント構造の新しいマイナーバージョンとの将来の互換性を保つには、アプリケーションは新しいフィールドを無視する場合があります。

CloudTrail により新しいイベントタイプが導入されたが、イベントの構造が変更されていない場合、イベントのバージョンは変更されません。

アプリケーションがイベント構造を正しく解析できるようにするため、メジャーバージョン番号が同等かどうかの比較を行うことをお勧めします。アプリケーションで予期されるフィールドが存在することを確認するため、マイナーバージョンがそれ以上であるかどうかの比較を行うことをお勧めします。マイナーバージョンには先頭のゼロはありません。major_version および minor_version を数値として解釈し、比較操作を実行できます。

使用可能: 1.0 以降

オプション: False

userIdentity

リクエストを作成したユーザーに関する情報。詳しくは、CloudTrail userIdentity エレメント を参照してください。

使用可能: 1.0 以降

オプション: False

eventSource

リクエストが行われたサービス。この名前は通常、スペースなしのサービス名の短縮形に .amazonaws.com を付けたものです。以下はその例です。

  • AWS CloudFormation は cloudformation.amazonaws.com

  • Amazon EC2 は ec2.amazonaws.com です。

  • Amazon Simple Workflow Service は swf.amazonaws.com です。

この規則にはいくつかの例外があります。例えば、Amazon CloudWatch の eventSource 値は monitoring.amazonaws.com です。

使用可能: 1.0 以降

オプション: False

eventName

リクエストされたアクション。そのサービスの API アクションの 1 つです。

使用可能: 1.0 以降

オプション: False

awsRegion

リクエストが行われた AWS リージョン。たとえば、us-east-2 など。「CloudTrail がサポートされているリージョン」を参照してください。

使用可能: 1.0 以降

オプション: False

sourceIPAddress

リクエストが行われた IP アドレス。サービスコンソールから行われたアクションの場合、報告されるアドレスは、コンソールウェブサーバーではなく、基礎となるカスタマーリソースのものです。AWS のサービスでは、DNS 名のみが表示されます。CloudTrail は、sourceIPAddress の値を編集し、リクエストがプロキシクライアント (AWS Management Console など) で行われた場合は AWS Internal に置き換え、true の値は sessionCredentialFromConsole になります。

使用可能: 1.0 以降

オプション: False

userAgent

AWS Management Console、AWS のサービス、AWS SDK または AWS CLI など、リクエストが行われたエージェント。このフィールドの最大サイズは 1 KB です。この制限を超えるコンテンツは切り捨てられます。以下は値の例です。

  • signin.amazonaws.com – リクエストは、AWS Management Console で IAM ユーザーによって行われました。

  • console.amazonaws.com – リクエストは、AWS Management Console でルートユーザーにより行われました。

  • lambda.amazonaws.com – リクエストは AWS Lambda で行われました。

  • aws-sdk-java – リクエストは AWS SDK for Java で行われました。

  • aws-sdk-ruby – リクエストは AWS SDK for Ruby で行われました。

  • aws-cli/1.3.23 Python/2.7.6 Linux/2.6.18-164.el5 – リクエストは Linux にインストールされた AWS CLI で行われました。

  • AWS Internal–CloudTrail は、userAgent の値を編集し、リクエストがプロキシクライアント (AWS Management Console など) で行われた場合は AWS Internal に置き換え、true の値は sessionCredentialFromConsole になります。

注記

AWS からのイベントの場合、このフィールドは通常 AWS Internal/# で、# は内部で使用される数字です。

使用可能: 1.0 以降

オプション: True

errorCode

リクエストがエラーを返す場合、AWS のサービスエラー。このフィールドを示す例については、「エラーコードとメッセージログの例」を参照してください。このフィールドの最大サイズは 1 KB です。この制限を超えるコンテンツは切り捨てられます。

使用可能: 1.0 以降

オプション: True

errorMessage

リクエストがエラーを返す場合、エラーの説明。このメッセージには、認証エラーのメッセージが含まれています。CloudTrail は、例外処理でサービスにより記録されたメッセージを取得します。例については、「エラーコードとメッセージログの例」をご参照ください。このフィールドの最大サイズは 1 KB です。この制限を超えるコンテンツは切り捨てられます。

注記

一部の AWS のサービスは、errorCode および errorMessage をイベントの最上位のフィールドとして提供します。他の AWS のサービスでは、responseElements の一部としてエラー情報を提供します。

使用可能: 1.0 以降

オプション: True

requestParameters

リクエストとともに送信されたパラメータ (ある場合)。これらのパラメータは、該当する AWS のサービスの API リファレンスドキュメントに記載されています。このフィールドの最大サイズは 100 KB です。この制限を超えるコンテンツは切り捨てられます。

使用可能: 1.0 以降

オプション: False

responseElements

変更を行うアクションのレスポンスの要素 (アクションの作成、更新、削除)。アクションの状態が変わらない場合 (例: オブジェクトの取得やリストのリクエスト)、この要素は省略されます。これらのアクションは、該当する AWS のサービスの API リファレンスドキュメントに記載されています。このフィールドの最大サイズは 100 KB です。この制限を超えるコンテンツは切り捨てられます。

responseElements 値は、AWS Support でリクエストをトレースするのに便利です。x-amz-request-id および x-amz-id-2 の両方には、AWS Support でリクエストのトレースに役立つ情報が含まれています。これらの値は、イベントを開始するリクエストへの応答としてサービスが返す値と同じであるため、イベントをリクエストに一致させるために使用できます。

使用可能: 1.0 以降

オプション: False

additionalEventData

リクエストまたはレスポンスの一部ではないイベントに関する追加のデータ。このフィールドの最大サイズは 28 KB です。この制限を超えるコンテンツは切り捨てられます。

このフィールドのサポートは、eventVersion 1.00 から開始されます。

使用可能: 1.0 以降

オプション: True

requestID

リクエストを識別する値。呼び出されているサービスがこの値を生成します。このフィールドの最大サイズは 1 KB です。この制限を超えるコンテンツは切り捨てられます。

このフィールドのサポートは、eventVersion 1.01 から開始されます。

使用可能: 1.01 以降

オプション: False

eventID

各イベントを一意に識別するために CloudTrail によって生成された GUID。この値を使用して、単一のイベントを識別できます。たとえば、プライマリキーとして ID を使用し、検索可能なデータベースからログデータを取得できます。

使用可能: 1.01 以降

オプション: False

eventType

イベントレコードを生成したイベントのタイプを識別します。これは、次のいずれかの値になります。

  • AwsApiCall – API が呼び出されました。

  • AwsServiceEvent – サービスはトレイルに関連するイベントを生成しました。たとえば、これは、自分が所有するリソースで別のアカウントが呼び出しをした場合に発生することがあります。

  • AwsConsoleAction - コンソールで API コールではないアクションが実行されました。

  • AwsConsoleSignIn – AWS Management Console にサインインしているアカウント (root、IAM、フェデレーション、SAML、または SwitchRole) のユーザー。

  • AwsCloudTrailInsight - Insights イベントが証跡に対して有効になっている場合、リソースプロビジョニングのスパイクや AWS Identity and Access Management (IAM) アクションのバーストなどの異常なオペレーションアクティビティを CloudTrail が検出した場合に CloudTrail が Insights イベントを生成します。

    AwsCloudTrailInsight イベントは次のフィールドを使用しません:

    • eventName

    • eventSource

    • sourceIPAddress

    • userAgent

    • userIdentity

使用可能: 1.02 以降

オプション: False

apiVersion

AwsApiCalleventType 値に関連付けられた API バージョンを識別します。

使用可能: 1.01 以降

オプション: True

managementEvent

イベントが管理イベントかどうかを識別するブール値。eventVersion が 1.06 以上で、イベントタイプが次のいずれかである場合、managementEvent がイベントレコードに表示されます。

  • AwsApiCall

  • AwsConsoleAction

  • AwsConsoleSignIn

  • AwsServiceEvent

使用可能: 1.06 以降

オプション: True

readOnly

この操作が、読み取り専用オペレーションであるかどうかを識別します。これは、以下の値のいずれかになります。

  • true – オペレーションは読み取り専用です (例:DescribeTrails)。

  • false – オペレーションは書き込み専用です (例:DeleteTrail)。

使用可能: 1.01 以降

オプション: True

resources

イベントでアクセスされたリソースのリスト。このフィールドには以下の情報が含まれます。

  • リソース ARN

  • リソース所有者のアカウント ID

  • 以下の形式でのリソースタイプ識別子 : AWS::aws-service-name::data-type-name

たとえば、AssumeRole イベントが記録されると、resources フィールドは次のようになります。

  • ARN: arn:aws:iam::123456789012:role/myRole

  • アカウント ID: 123456789012

  • リソースタイプ識別子 : AWS::IAM::Role

resources フィールドのあるログの例については、IAM ユーザーガイドの「CloudTrail ログファイルの AWS STS API イベント」または AWS Key Management Service デベロッパーガイドの「AWS KMS API コールのログ記録」を参照してください。

使用可能: 1.01 以降

オプション: True

recipientAccountId

このイベントを受信したアカウント ID を表します。recipientAccountIDCloudTrail userIdentity エレメント accountId とは異なる場合があります。これは、クロスアカウントのリソースへのアクセスで発生することがあります。例えば、AWS KMS key とも呼ばれる KMS キーが別のアカウントで使用されて、暗号化 APIが呼び出された場合、accountId の値と recipientAccountID の値は、呼び出しを行ったアカウントに配信されるイベントでは同じになりますが、KMS キーを所有するアカウントに配信されるイベントでの値は異なります。

使用可能: 1.02 以降

オプション: True

serviceEventDetails

イベントをトリガーしたものとその結果を含むサービスイベントを識別します。詳しくは、AWS サービスイベント を参照してください。このフィールドの最大サイズは 100 KB です。この制限を超えるコンテンツは切り捨てられます。

使用可能: 1.05 以降

オプション: True

sharedEventID

異なる AWS アカウントに送信される同じ AWS アクションから CloudTrail イベントを一意に識別するために CloudTrail によって生成された GUID。

例えば、アカウントが別のアカウントに属する AWS KMS key を使用する場合、KMS キーを使用したアカウントと KMS キーを所有するアカウントは、同じアクションに対して別々の CloudTrail イベントを受け取ります。この AWS アクションに対して配信される各 CloudTrail イベントは、同じ sharedEventID を共有しますが、一意の eventID および recipientAccountID もあります。

詳しくは、sharedEventID の例 を参照してください。

注記

sharedEventID フィールドは、CloudTrail イベントが複数のアカウントに配信された場合にのみ表示されます。発信者と所有者が同じ AWS アカウントの場合、CloudTrail は 1 つのイベントのみを送信し、sharedEventID フィールドはありません。

使用可能: 1.03 以降

オプション: True

vpcEndpointId

VPC から Amazon S3 などの別の AWS のサービスへのリクエストが行われた VPC エンドポイントを識別します。

使用可能: 1.04 以降

オプション: True

eventCategory

LookupEvents コールで使用されるイベントカテゴリが表示されます。

  • 管理イベントの場合、値は Management です。

  • データイベントの場合、値は Data です。

  • Insights イベントの場合、値は Insight です。

使用可能: 1.07 以降

オプション: False

addendum

イベントの配信が遅れた場合、またはイベントの記録後に既存のイベントに関する追加情報が使用可能になった場合、補遺フィールドにはイベントが遅れた理由に関する情報が表示されます。既存のイベントから情報が欠落している場合、補遺フィールドには、不足している情報と、不足している理由が表示されます。内容は以下が含まれます。

  • reason - イベントまたはその内容の一部が欠落していた理由。値は以下のいずれかです。

    • DELIVERY_DELAY - イベントの配信に遅延がありました。これは、高いネットワークトラフィック、接続性の問題、または CloudTrail サービスの問題が原因である可能性があります。

    • UPDATED_DATA - イベントレコードのフィールドが見つからないか、正しくない値がありました。

    • SERVICE_OUTAGE - CloudTrail にイベントを記録するサービスが停止し、CloudTrail にイベントを記録できませんでした。これは非常にまれです。

  • updatedFields - 補遺によって更新されるイベントレコードフィールド。これは、理由が UPDATED_DATA の場合にのみ提供されます。

  • originalRequestID - リクエストの元の一意の ID。これは、理由が UPDATED_DATA の場合にのみ提供されます。

  • originalEventID - 元のイベントの ID。これは、理由が UPDATED_DATA の場合にのみ提供されます。

使用可能: 1.08 以降

オプション: True

sessionCredentialFromConsole

イベントが AWS Management Console セッションから生じたかどうかを表示します。 このフィールドは、値が true でなければ表示されません。つまり、API コールを行うために使用されたクライアントは、プロキシまたは外部クライアントのいずれかでなければ表示されません。プロキシクライアントが使用された場合、tlsDetails イベントフィールドは表示されません。

使用可能: 1.08 以降

オプション: True

edgeDeviceDetails

リクエストのターゲットであるエッジデバイスに関する情報を表示します。現在、S3 Outposts デバイスイベントには、このフィールドが含まれます。このフィールドの最大サイズは 28 KB です。この制限を超えるコンテンツは切り捨てられます。

使用可能: 1.08 以降

オプション: True

tlsDetails

Transport Layer Security (TLS) バージョン、暗号スイート、およびサービス API コールのクライアント提供ホスト名の FQDN に関する情報を表示します。内容は以下が含まれます。CloudTrail は、予想される情報が見つからないか空の場合、TLS の詳細の一部を記録します。例えば、TLS のバージョンと暗号スイートが存在するが、HOST ヘッダーが空の場合、利用可能な TLS の詳細が CloudTrail イベントに記録されます。

sessionCredentialFromConsoletrue の値を持つ場合、tlsDetails は、API コールを行うために外部クライアントが使用された場合にのみイベントレコードに存在します。

  • tlsVersion - リクエストの TLS バージョン。

  • cipherSuite - リクエストの暗号スイート (使用されるセキュリティアルゴリズムの組み合わせ)。

  • clientProvidedHostHeader - リクエストを行ったクライアントの FQDN。

使用可能: 1.08 以降

オプション: True

Insights イベントのレコードフィールド

インサイトイベントの JSON 構造に表示される属性を以下に示します。管理イベントやデータイベントとは異なります。

sharedEventId

CloudTrail イベントの管理タイプおよびデータタイプの sharedEventID とは異なるCloudTrail Insights イベントの sharedEventID。Insights イベントでは、sharedEventID は Insights イベントを一意に識別するために CloudTrail Insights によって生成される GUID です。sharedEventID は、開始イベントと終了イベントの間で共通しており、両方のイベントを接続して異常なアクティビティを一意に識別するのに役立ちます。sharedEventID は、全体的なインサイトイベント ID と考えることができます。

使用可能: 1.07 以降

オプション: False

insightDetails

インサイトイベントのみ。イベントソース、ユーザーエージェント、統計情報、API 名、イベントがインサイトイベントの開始か終了かなど、インサイトイベントの基礎となるトリガーに関する情報を示します。insightDetails ブロックの内容の詳細については、「CloudTrail Insights insightDetails 要素」を参照してください。

使用可能: 1.07 以降

オプション: False