本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
記錄 AWS IoT Greengrass V2 API通話 AWS CloudTrail
AWS IoT Greengrass V2 與 (提供中的使用者 AWS CloudTrail、角色或服務所採取的動作記錄) 的 AWS 服務整合 AWS IoT Greengrass Version 2。 CloudTrail 擷取 AWS IoT Greengrass 為事件的所有API呼叫。擷取的呼叫包括來自 AWS IoT Greengrass 主控台的呼叫和對 AWS IoT Greengrass API作業的程式碼呼叫。
如果您建立追蹤,您可以啟用 CloudTrail 事件持續傳遞至 S3 儲存貯體,包括 AWS IoT Greengrass. 如果您未設定追蹤,您仍然可以在 [事件歷程記錄] 中檢視 CloudTrail 主控台中最近的事件。使用收集的資訊 CloudTrail,您可以判斷提出的要求 AWS IoT Greengrass、提出要求的 IP 位址、提出要求的人員、提出要求的時間,以及其他詳細資訊。
若要取得有關的更多資訊 CloudTrail,請參閱AWS CloudTrail 使用者指南。
主題
AWS IoT Greengrass V2 中的資訊 CloudTrail
CloudTrail 在您創建帳戶 AWS 帳戶 時啟用。當活動發生在中時 AWS IoT Greengrass,該活動會與事件歷史記錄中的其他 AWS 服務 CloudTrail 事件一起記錄在事件中。您可以檢視、搜尋和下載 AWS 帳戶的最新事件。如需詳細資訊,請參閱使用 CloudTrail 事件歷程記錄檢視事件。
對於您的事件的持續記錄 AWS 帳戶,包括事件 AWS IoT Greengrass,請創建一個跟踪。追蹤可 CloudTrail 將日誌檔傳遞至 S3 儲存貯體。根據預設,當您在主控台中建立追蹤時,追蹤會套用至所有 AWS 區域項目。追蹤記錄來自 AWS 分割區中所有區域的事件,並將日誌檔傳送到您指定的 S3 儲存貯體。此外,您還可以設定其他 AWS 服務,以進一步分析 CloudTrail 記錄中收集的事件資料並採取行動。如需詳細資訊,請參閱下列內容:
所有 AWS IoT Greengrass V2 動作均由記錄, CloudTrail 並將其記錄在「AWS IoT Greengrass V2 API參考」中。例如,呼叫CreateDeployment
和CancelDeployment
動作會CreateComponentVersion
在 CloudTrail 記錄檔中產生項目。
每一筆事件或日誌專案都會包含產生請求者的資訊。身分資訊可協助您判斷下列事項:
-
要求是使用 root 或 AWS Identity and Access Management (IAM) 使用者認證進行。
-
提出該請求時,是否使用了特定角色或聯合身分使用者的暫時安全憑證。
-
請求是否由其他 AWS 服務提出。
如需詳細資訊,請參閱CloudTrail userIdentity 元素。
AWS IoT Greengrass 資料事件 CloudTrail
資料事件提供在資源上或在資源中執行之資源作業的相關資訊 (例如,取得元件版本或部署的組態)。這些也稱為資料平面操作。資料事件通常是大量資料的活動。依預設, CloudTrail 不會記錄資料事件。 CloudTrail 事件歷史記錄不會記錄數據事件。
資料事件需支付額外的費用。如需有關 CloudTrail 定價的詳細資訊,請參閱AWS CloudTrail 定價
您可以使用 CloudTrail 主控台或 CloudTrail API作業記錄 AWS IoT Greengrass 資源類型的資料事件。 AWS CLI此段落中的表格顯示可用的資源類型 AWS IoT Greengrass。
-
若要使用 CloudTrail 主控台記錄資料事件,請建立追蹤或事件資料存放區以記錄資料事件,或更新現有追蹤或事件資料存放區以記錄資料事件。
-
選擇資料事件以記錄資料事件。
-
從 [資料事件類型] 清單中,選擇您要記錄其資料事件的資源類型。
-
選擇您要使用的記錄選取器範本。您可以記錄資源類型的所有資料事件、記錄所有
readOnly
事件、記錄所有writeOnly
事件,或建立自訂記錄選取器範本以篩選readOnly
eventName
、和resources.ARN
欄位。
-
-
若要使用記錄資料事件 AWS CLI,請配置
--advanced-event-selectors
參數以將eventCategory
欄位設定為等於,Data
且resources.type
欄位等於資源類型值 (請參閱表格)。您可以加入條件以篩選readOnly
eventName
、和resources.ARN
欄位的值。-
若要設定追蹤以記錄資料事件,請執行put-event-selectors命令。如需詳細資訊,請參閱使用 AWS CLI.
-
若要規劃事件資料倉庫以記錄資料事件,請執行create-event-data-store指令以建立新的事件資料倉庫以記錄資料事件,或執行update-event-data-store指令來更新現有的事件資料倉庫。如需詳細資訊,請參閱使用 AWS CLI.
-
下表列出了資 AWS IoT Greengrass 源類型。[資料事件類型 (主控台)] 欄顯示可從主控台的 [資料事件類型 CloudTrail ] 清單中選擇的值。resource .type 值欄會顯示resources.type
值,您可以在使用或設定進階事件選取器時指定這個值。 AWS CLI CloudTrail APIs[資料APIs記錄到 CloudTrail] 欄會顯示資源類型記錄的API呼叫。 CloudTrail
資料事件類型 (主控台) | resources.type 值 | 資料APIs記錄到 CloudTrail |
---|---|---|
IoT 證書 | AWS::IoT::Certificate |
|
IoT Greengrass 件版本 |
AWS::GreengrassV2::ComponentVersion
|
|
IoT 環境部署 |
AWS::GreengrassV2::Deployment
|
|
IoT 的事 | AWS::IoT::Thing |
|
您可以設定進階事件選取器來篩選eventName
readOnly
、和resources.ARN
欄位,以僅記錄對您很重要的事件。
新增篩選條件eventName
以包含或排除特定資料APIs。
如需有關這些欄位的詳細資訊,請參閱 AdvancedFieldSelector。
下列範例顯示如何使用設定進階選取器 AWS CLI。Replace (取代) TrailName
以及 region
使用您自己的信息。
範例 — 記錄 IoT 事件的數據事件
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ ‘[ { “Name”: “Log all thing data events”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [“Data”] }, { “Field”: “resources.type”, “Equals”: [“AWS::IoT::Thing”] } ] } ]’
範例 — 在特定的 IoT 的事情過濾 API
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ ‘[ { “Name”: “Log IoT Greengrass PutCertificateAuthorities API calls”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [“Data”] }, { “Field”: “resources.type”, “Equals”: [“AWS::IoT::Thing”] }, { “Field”: “eventName”, “Equals”: [“PutCertificateAuthorities”] } ] } ]’
範例 -記錄所有 Greengrass 數據事件
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ ‘[ { “Name”: “Log all certificate data events”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [ “Data” ] }, { “Field”: “resources.type”, “Equals”: [ “AWS::IoT::Certificate” ] } ] }, { “Name”: “Log all component version data events”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [ “Data” ] }, { “Field”: “resources.type”, “Equals”: [ “AWS::GreengrassV2::ComponentVersion” ] } ] }, { “Name”: “Log all deployment version”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [ “Data” ] }, { “Field”: “resources.type”, “Equals”: [ “AWS::GreengrassV2::Deployment” ] } ] }, { “Name”: “Log all thing data events”, “FieldSelectors”: [ { “Field”: “eventCategory”, “Equals”: [ “Data” ] }, { “Field”: “resources.type”, “Equals”: [ “AWS::IoT::Thing” ] } ] } ]’
AWS IoT Greengrass 管理事件 CloudTrail
管理事件提供有關對您 AWS 帳戶中資源執行之管理作業的相關資訊。這些也稱為控制平面操作。依預設,會 CloudTrail 記錄管理事件。
AWS IoT Greengrass 將所有 AWS IoT Greengrass 控制平面作業記錄為管理事件。如需記 AWS IoT Greengrass 錄到的 AWS IoT Greengrass 控制平面作業清單 CloudTrail,請參閱參AWS IoT Greengrass API考資料版本 2。
瞭解 AWS IoT Greengrass V2 記錄檔項目
追蹤是一種組態,可讓事件以日誌檔的形式傳遞至您指定的 S3 儲存貯體。 CloudTrail 記錄檔包含一或多個記錄項目。事件代表來自任何來源的單一請求。它包括請求的動作、動作的日期和時間、請求參數等相關資訊。 CloudTrail 日誌文件不是公共API調用的有序堆棧跟踪,因此它們不會以任何特定順序顯示。
下列範例顯示示範CreateDeployment
動作的 CloudTrail 記錄項目。
{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Administrator", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Administrator" }, "eventTime": "2021-01-06T02:38:05Z", "eventSource": "greengrass.amazonaws.com", "eventName": "CreateDeployment", "awsRegion": "us-west-2", "sourceIPAddress": "203.0.113.0", "userAgent": "aws-cli/2.1.9 Python/3.7.9 Windows/10 exe/AMD64 prompt/off command/greengrassv2.create-deployment", "requestParameters": { "deploymentPolicies": { "failureHandlingPolicy": "DO_NOTHING", "componentUpdatePolicy": { "timeoutInSeconds": 60, "action": "NOTIFY_COMPONENTS" }, "configurationValidationPolicy": { "timeoutInSeconds": 60 } }, "deploymentName": "Deployment for MyGreengrassCoreGroup", "components": { "aws.greengrass.Cli": { "componentVersion": "2.0.3" } }, "iotJobConfiguration": {}, "targetArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup" }, "responseElements": { "iotJobArn": "arn:aws:iot:us-west-2:123456789012:job/fdfeba1d-ac6d-44ef-ab28-54f684ea578d", "iotJobId": "fdfeba1d-ac6d-44ef-ab28-54f684ea578d", "deploymentId": "4196dddc-0a21-4c54-a985-66a525f6946e" }, "requestID": "311b9529-4aad-42ac-8408-c06c6fec79a9", "eventID": "c0f3aa2c-af22-48c1-8161-bad4a2ab1841", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "eventCategory": "Management", "recipientAccountId": "123456789012" }