Amazon Simple Queue Service
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用 AWS CloudTrail 记录 Amazon SQS API 调用

Amazon SQS 与 AWS CloudTrail 集成,后者是一项提供用户、角色或 AWS 服务所进行的 Amazon SQS 调用的记录的服务。CloudTrail 将与 Amazon SQS 队列相关的 API 调用作为事件捕获,包括来自 Amazon SQS 控制台的调用和来自 Amazon SQS API 的代码调用。有关 CloudTrail 的更多信息,请参阅 AWS CloudTrail User Guide

注意

标准队列和 FIFO 队列支持 CloudTrail 日志记录。

使用 CloudTrail 所收集的信息,可以确定向 Amazon SQS API 发出的特定请求、请求者的 IP 地址、请求者的身份、请求的日期和时间等。如果配置跟踪,则可以使 CloudTrail 事件持续传送到 Amazon S3 存储桶。如果没有配置跟踪,则可以在 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 格式的事件组成。一个日志条目表示来自任何源的一个请求,包括有关所请求的操作、所有参数以及操作的日期和时间等信息。日志条目不一定具有任何特定顺序。即,它们不是公共 API 调用的有序堆栈跟踪。

AddPermission

以下示例说明 AddPermission API 调用的 CloudTrail 日志条目。

{ "Records": [ { "eventVersion": "1.06", "userIdentity": { "type": "IAMUser", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws-cn: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-cn: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-cn: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-cn: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-cn: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" } ] }