使用 AWS CloudTrail 記錄 AWS IoT 1-Click API 呼叫 - AWS IoT 1-Click

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 AWS CloudTrail 記錄 AWS IoT 1-Click API 呼叫

AWS IoT 1-Click 是與 AWS CloudTrail 整合的一項服務,可提供由使用者、角色或 AWS 服務在 AWS IoT 1-Click 中所採取動作的記錄。CloudTrail 將 AWS IoT 1-Click 的 API 呼叫擷取為事件。該呼叫的擷取包括從 AWS IoT 1-Click 主控台的呼叫,以及對 AWS IoT 1-Click 操作的程式碼呼叫。如果您建立線索,就可以將 CloudTrail 事件持續交付到 Amazon S3 儲存貯體,包括 AWS IoT 1-Click 的事件。如果您不設定追蹤記錄,仍然可以透過 CloudTrail 主控台中的 Event history (事件歷史記錄) 檢視最新的事件。您可以利用 CloudTrail 所收集的資訊來判斷向 AWS IoT 1-Click 發出的請求,以及發出請求的來源 IP 地址、人員、時間和其他詳細資訊。

若要進一步了解 CloudTrail,包括如何配置及啟用,請參閱 AWS CloudTrail 使用者指南

AWS IoT 1-Click 的資訊

CloudTrailAWS當您建立帳戶時,系統會在您的帳戶中啟用 。此外,AWS IoT 1-Click 發生支援的事件活動時,系統便會將該活動記錄至 CloudTrail 事件,並將其他 AWS 服務事件記錄到事件歷史記錄。您可以檢視、搜尋和下載 AWS 帳戶的最新事件。如需詳細資訊,請參閱使用 CloudTrail 事件歷程記錄檢視事件

若要持續記錄 AWS 帳戶中的事件 (包括 AWS IoT 1-Click 事件),請建立線索。線索可讓 CloudTrail 將日誌檔案交付到 Amazon S3 儲存貯體。根據預設,當您在主控台建立追蹤記錄時,追蹤記錄會套用到所有 AWS 區域。該追蹤會記錄來自 AWS 分割區中所有區域的事件,並將日誌檔案交付到您指定的 Amazon S3 儲存貯體。此外,您可以設定其他 AWS 服務,以進一步分析和處理 CloudTrail 日誌中所收集的事件資料。如需詳細資訊,請參閱下列內容:

AWS IoT 1-Click裝置 API支援將下列動作記錄為 CloudTrail 日誌檔的事件:

AWS IoT 1-Click專案 API支援將下列動作記錄為 CloudTrail 日誌檔的事件:

每一筆事件或記錄項目都會包含產生請求者的資訊。身分資訊可協助您判斷下列事項:

  • 該請求是否使用根或 AWS Identity and Access Management (IAM) 使用者登入資料提出。

  • 提出該請求時,是否使用了特定角色或聯合身分使用者的暫時安全登入資料。

  • 該請求是否由另一項 AWS 服務提出。

如需詳細資訊,請參閱 CloudTrail 使用者身分元素

範例:AWS IoT 1-Click 日誌檔項目

線索是一種組態,能讓事件以日誌檔案的形式交付到您指定的 Amazon S3 儲存貯體。CloudTrail 日誌檔案包含一個或多個日誌項目。一個事件為任何來源提出的單一請求,並包含請求動作、請求的日期和時間、請求參數等資訊。CloudTrail 日誌檔案並非依公有 API 呼叫的堆疊追蹤排序,因此不會以任何特定順序出現。

以下範例顯示的是展示 DescribeDevice 動作的 CloudTrail 日誌項目。

{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::012345678910:user/Alice", "accountId": "012345678910", "accessKeyId": "EXAMPLE_KEY_ID", "userName": "Alice" }, "eventTime": "2018-04-12T18:57:27Z", "eventSource": "iot1click.amazonaws.com", "eventName": "DescribeDevice", "awsRegion": "us-west-2", "sourceIPAddress": "127.0.0.1", "userAgent": "console.aws.amazon.com", "requestParameters": { "deviceId": "G030PM12345678" }, "responseElements": null, "requestID": "573c5654-3e83-11e8-9eac-c999bd01134e", "eventID": "be323b62-082a-4352-929d-085d2a3249b0", "readOnly": true, "eventType": "AwsApiCall", "recipientAccountId": "012345678910" }

以下範例顯示的是展示 CreateProject 動作的 CloudTrail 日誌項目。

{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn:aws:iam::012345678910:user/Alice", "accountId": "012345678910", "accessKeyId": "EXAMPLE_KEY_ID", "userName": "Alice" }, "eventTime": "2018-04-12T20:31:02Z", "eventSource": "iot1click.amazonaws.com", "eventName": "CreateProject", "awsRegion": "us-west-2", "sourceIPAddress": "127.0.0.1", "userAgent": "console.aws.amazon.com", "requestParameters": { "description": "", "placementTemplate": { "defaultAttributes": "***", "deviceTemplates": { "happyId": { "deviceType": "button", "callbackOverrides": { "onClickCallback": "arn:aws:lambda:us-west-2:012345678910:function:rating_buttons_happy" } }, "sadId": { "deviceType": "button", "callbackOverrides": { "onClickCallback": "arn:aws:lambda:us-west-2:012345678910:function:rating_buttons_sad" } } } } } }