Amazon Simple Queue Service
開発者ガイド

AWS CloudTrail を使用した Amazon SQS API コールのログ記録

Amazon SQS は AWS CloudTrail と統合されています。このサービスは、ユーザー、ロール、または AWS のサービスが実行する、Amazon SQS の呼び出しの記録を提供します。CloudTrail は、Amazon SQS コンソールからのコールや、Amazon SQS API からのコード呼び出しを含む、Amazon SQS キューに関連する API コールをイベントとしてキャプチャします。CloudTrail の詳細については、AWS CloudTrail User Guideを参照してください。

注記

CloudTrail ログ記録は スタンダード キューと FIFO キューの両方でサポートされています。

CloudTrail によって収集される情報を使用して、Amazon SQS API への特定のリクエスト、リクエスタの IP アドレス、リクエスタの ID、リクエスト日時などを識別することができます。証跡を設定すると、Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合は、CloudTrail コンソールのイベント履歴で最新のイベントを表示できます。詳細については、AWS CloudTrail User Guideの「証跡を作成するための概要」を参照してください。

CloudTrail 内の Amazon SQS 情報

AWS アカウント作成時、CloudTrail は有効になっています。サポートされる Amazon SQS イベントアクティビティが発生すると、そのアクティビティは CloudTrail イベントとして AWS のサービスの他のイベントとともにイベント履歴に記録されます。最近のイベントは、AWS アカウントで表示、検索、ダウンロードできます。詳細については、AWS CloudTrail User Guideの「CloudTrail イベント履歴でのイベントの表示」を参照してください。

証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。証跡を作成することで、AWS アカウントで、実行されているイベントを継続して記録することができます。デフォルトでは、AWS マネジメントコンソール で証跡を作成すると、その証跡はすべての AWS リージョンに適用されます。この証跡では、すべての AWS リージョンのイベントがログに記録され、ログファイルは指定した Amazon S3 バケットに配信されます。また、その他の AWS のサービスを設定して、CloudTrail ログで収集されたデータに基づき、詳細な分析やアクティビティを行うこともできます。詳細については、「AWS CloudTrail User Guide」の次のトピックを参照してください。

Amazon SQS は、次のアクションのログ記録をサポートします。

各イベントまたはログエントリには、リクエスタに関する情報が含まれます。この情報は次のことを確認するのに役立ちます。

  • リクエストが、ルートと IAM ユーザー認証情報のどちらを使用して送信されたか。

  • リクエストが、ロールとフェデレーティッドユーザーのどちらの一時的なセキュリティ認証情報を使用して送信されたか。

  • リクエストが、別の AWS のサービスによって行われたか。

詳細については、AWS CloudTrail User Guideの「CloudTrail userIdentity 要素」を参照してください。

例: Amazon SQS ログファイルのエントリ

CloudTrail ログファイルには、複数の JSON 形式イベントで構成される 1 つ以上のログエントリを記録できます。ログエントリは任意の送信元からの単一のリクエストを表し、リクエストされたアクション、パラメータ、アクションの日時などに関する情報を含みます。ログエントリは、特定の順序になるように生成されるわけではありません。つまり、パブリック API コールの順序付けられたスタックトレースではありません。

AddPermission

AddPermission API コールの CloudTrail ログエントリを以下の例に示します。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2018-06-28T22:23:46Z", "eventSource": "sqs.amazonaws.com", "eventName": "AddPermission", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.0", "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0", "requestParameters": { "actions": [ "SendMessage" ], "AWSAccountIds": [ "123456789012" ], "label": "MyLabel", "queueUrl": "https://sqs.us-east-2.amazon.com/123456789012/MyQueue" }, "responseElements": null, "requestID": "123abcde-f4gh-50ij-klmn-60o789012p30", "eventID": "0987g654-32f1-09e8-d765-c4f3fb2109fa" } ] }

CreateQueue

CreateQueue API コールの CloudTrail ログエントリを以下の例に示します。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alejandro", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alejandro" }, "eventTime": "2018-06-28T22:23:46Z", "eventSource": "sqs.amazonaws.com", "eventName": "CreateQueue", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.1", "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0", "requestParameters": { "queueName": "MyQueue" }, "responseElements": { "queueUrl": "https://sqs.us-east-2.amazon.com/123456789012/MyQueue" }, "requestID": "123abcde-f4gh-50ij-klmn-60o789012p30", "eventID": "0987g654-32f1-09e8-d765-c4f3fb2109fa" } ] }

DeleteQueue

DeleteQueue API コールの CloudTrail ログエントリを以下の例に示します。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:user/Carlos", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Carlos" }, "eventTime": "2018-06-28T22:23:46Z", "eventSource": "sqs.amazonaws.com", "eventName": "DeleteQueue", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.2", "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0", "requestParameters": { "queueUrl": "https://sqs.us-east-2.amazon.com/123456789012/MyQueue" }, "responseElements": null, "requestID": "123abcde-f4gh-50ij-klmn-60o789012p30", "eventID": "0987g654-32f1-09e8-d765-c4f3fb2109fa" } ] }

RemovePermission

RemovePermission API コールの CloudTrail ログエントリを以下の例に示します。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:user/Jane", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Jane" }, "eventTime": "2018-06-28T22:23:46Z", "eventSource": "sqs.amazonaws.com", "eventName": "RemovePermission", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.3", "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0", "requestParameters": { "label": "label", "queueUrl": "https://sqs.us-east-2.amazon.com/123456789012/MyQueue" }, "responseElements": null, "requestID": "123abcde-f4gh-50ij-klmn-60o789012p30", "eventID": "0987g654-32f1-09e8-d765-c4f3fb2109fa" } ] }

SetQueueAttributes

SetQueueAttributes の CloudTrail ログエントリの例を次に示します。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:user/Maria", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Maria" }, "eventTime": "2018-06-28T22:23:46Z", "eventSource": "sqs.amazonaws.com", "eventName": "SetQueueAttributes", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.4", "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0", "requestParameters": { "attributes": { "VisibilityTimeout": "100" }, "queueUrl": "https://sqs.us-east-2.amazon.com/123456789012/MyQueue" }, "responseElements": null, "requestID": "123abcde-f4gh-50ij-klmn-60o789012p30", "eventID": "0987g654-32f1-09e8-d765-c4f3fb2109fa" } ] }