使用 記錄 AWS Systems Manager API通話 AWS CloudTrail - AWS Systems Manager

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

使用 記錄 AWS Systems Manager API通話 AWS CloudTrail

AWS Systems Manager 已與 整合AWS CloudTrail,此服務提供使用者、角色或 AWS 服務. CloudTrail captures 的所有 API 呼叫所採取動作的記錄 Systems Manager 作為事件。擷取的呼叫包含來自 的呼叫 Systems Manager 主控台和對 的程式碼呼叫 Systems Manager API 操作。使用 收集的資訊 CloudTrail,您可以判斷向 提出的請求 Systems Manager、提出請求的 IP 地址、提出時間,以及其他詳細資訊。

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

  • 該請求是使用根使用者還是使用者憑證提出。

  • 是否代表 IAM Identity Center 使用者提出請求。

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

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

CloudTrail 當您建立 帳戶 AWS 帳戶 時, 會在 中處於作用中狀態,而且您會自動存取 CloudTrail 事件歷史記錄 。 CloudTrail 事件歷史記錄提供過去 90 天記錄的管理事件的可檢視、可搜尋、可下載和不可變記錄 AWS 區域。如需詳細資訊,請參閱 AWS CloudTrail 使用者指南 中的使用 CloudTrail 事件歷史記錄。檢視事件歷史記錄 不 CloudTrail收取任何費用。

如需 AWS 帳戶 過去 90 天內持續記錄的事件,請建立追蹤或 CloudTrail Lake 事件資料存放區。

CloudTrail 追蹤

追蹤可讓 CloudTrail 將日誌檔案交付至 Amazon S3 儲存貯體。使用 建立的所有追蹤 AWS Management Console 都是多區域。您可以使用 建立單一區域或多區域追蹤 AWS CLI。建議您建立多區域追蹤,因為您擷取帳戶中所有 AWS 區域 中的活動。如果您建立單一區域追蹤,您只能檢視記錄於追蹤 的事件 AWS 區域。如需追蹤的詳細資訊,請參閱 AWS CloudTrail 使用者指南 中的為您的 建立追蹤 AWS 帳戶為組織建立追蹤

您可以透過建立追蹤 CloudTrail ,免費將一份正在進行的管理事件副本交付至 Amazon S3 儲存貯體,但需要支付 Amazon S3 儲存費用。如需 CloudTrail 定價的詳細資訊,請參閱AWS CloudTrail 定價。如需 Amazon S3 定價的相關資訊,請參閱 Amazon S3 定價

CloudTrail Lake 事件資料存放區

CloudTrail Lake 可讓您在事件上執行SQL以 為基礎的查詢。 CloudTrail Lake 會以資料列為基礎的JSON格式將現有事件轉換為 Apache ORC 格式。ORC 是一種欄式儲存格式,已針對快速擷取資料進行最佳化。系統會將事件彙總到事件資料存放區中,事件資料存放區是事件的不可變集合,其依據為您透過套用進階事件選取器選取的條件。套用於事件資料存放區的選取器控制哪些事件持續存在並可供您查詢。如需 CloudTrail Lake 的詳細資訊,請參閱 AWS CloudTrail 使用者指南 中的使用 AWS CloudTrail Lake

CloudTrail Lake 事件資料存放區和查詢會產生成本。建立事件資料存放區時,您可以選擇要用於事件資料存放區的定價選項。此定價選項將決定擷取和儲存事件的成本,以及事件資料存放區的預設和最長保留期。如需 CloudTrail 定價的詳細資訊,請參閱AWS CloudTrail 定價。

Systems Manager 中的資料事件 CloudTrail

資料事件提供有關在 資源上執行或在資源中執行的資源操作的資訊 (例如,建立或開啟控制頻道)。這些也稱為資料平面操作。資料事件通常是大量資料的活動。根據預設, CloudTrail 不會記錄資料事件。 CloudTrail 事件歷史記錄不會記錄資料事件。

資料事件需支付額外的費用。如需 CloudTrail 定價的詳細資訊,請參閱AWS CloudTrail 定價。

您可以使用 CloudTrail 主控台 AWS CLI或 CloudTrail API操作來記錄 Systems Manager 資源類型的資料事件。如需如何記錄資料事件的詳細資訊,請參閱 AWS CloudTrail 使用者指南 中的使用 記錄資料 AWS Management Console事件,以及使用 記錄資料事件 AWS Command Line Interface

下表列出您可以記錄資料事件的 Systems Manager 資源類型。資料事件類型 (主控台) 欄顯示從 CloudTrail 主控台上的資料事件類型清單中選擇的值。resources.type 值欄會顯示值,您會在使用 AWS CLI 或 設定進階事件選取器時指定該resources.type值 CloudTrail APIs。APIs 記錄到的資料 CloudTrail欄顯示記錄到 CloudTrail 資源類型的API呼叫。

資料事件類型 (主控台) resources.type 值 APIs 記錄到 的資料 CloudTrail
Systems Manager AWS::SSMMessages::ControlChannel
  • CreateControlChannel

  • OpenControlChannel

如需這些操作的詳細資訊,請參閱服務授權參考 中的 Amazon Message Gateway Service 定義的動作

Systems Manager 受管節點 AWS::SSM::ManagedNode
  • RequestManagedInstanceRoleToken – 當 AWS Systems Manager 客服人員 (SSM Agent) 在 Systems Manager 管理的節點上執行,向 Systems Manager 憑證服務請求憑證。

如需 RequestManagedInstanceRoleToken 操作的詳細資訊,請參閱 使用硬體指紋驗證啟用混合模式機器

您可以設定進階事件選取器,以在 eventName、 和 resources.ARN 欄位上篩選readOnly,以僅記錄對您重要的事件。如需這些欄位的詳細資訊,請參閱 AdvancedFieldSelectorAWS CloudTrail API參考 中。

中的 Systems Manager 管理事件 CloudTrail

管理事件提供有關在 中資源上執行的管理操作的資訊 AWS 帳戶。這些也稱為控制平面操作。根據預設, 會 CloudTrail 記錄管理事件。

Systems Manager 會將所有控制平面操作記錄 CloudTrail 為管理事件。Systems Manager API操作記錄在AWS Systems Manager API參考 中。例如,呼叫 CreateMaintenanceWindowsPutInventorySendCommandStartSession動作會在 CloudTrail 日誌檔案中產生項目。如需設定 CloudTrail 以監控 Systems Manager API呼叫的範例,請參閱 使用 Amazon EventBridge (主控台) 監控工作階段活動

Systems Manager 事件範例

事件代表來自任何來源的單一請求,並包含請求API操作、操作日期和時間、請求參數等相關資訊。 CloudTrail log 檔案不是公開API呼叫的有序堆疊追蹤,因此事件不會以任何特定順序顯示。

管理事件範例

範例 1︰DeleteDocument

下列範例顯示 事件,該 CloudTrail 事件示範在美國東部 (俄亥俄) 區域 (us-east-2) example-Document中名為 的文件DeleteDocument的操作。

{ "eventVersion": "1.04", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE:203.0.113.11", "arn": "arn:aws:sts::123456789012:assumed-role/example-role/203.0.113.11", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2018-03-06T20:19:16Z" }, "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:role/example-role", "accountId": "123456789012", "userName": "example-role" } } }, "eventTime": "2018-03-06T20:30:12Z", "eventSource": "ssm.amazonaws.com", "eventName": "DeleteDocument", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.11", "userAgent": "example-user-agent-string", "requestParameters": { "name": "example-Document" }, "responseElements": null, "requestID": "86168559-75e9-11e4-8cf8-75d18EXAMPLE", "eventID": "832b82d5-d474-44e8-a51d-093ccEXAMPLE", "resources": [ { "ARN": "arn:aws:ssm:us-east-2:123456789012:document/example-Document", "accountId": "123456789012" } ], "eventType": "AwsApiCall", "recipientAccountId": "123456789012", "eventCategory": "Management" }
範例 2︰StartConnection

下列範例顯示使用 啟動RDP連線的使用者 CloudTrail 的事件 Fleet Manager 美國東部 (俄亥俄) 區域 (us-east-2)。基礎API動作為 StartConnection

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/exampleRole", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/exampleRole", "accountId": "123456789012", "userName": "exampleRole" }, "webIdFederationData": {}, "attributes": { "creationDate": "2021-12-13T14:57:05Z", "mfaAuthenticated": "false" } } }, "eventTime": "2021-12-13T16:50:41Z", "eventSource": "ssm-guiconnect.amazonaws.com", "eventName": "StartConnection", "awsRegion": "us-east-2", "sourceIPAddress": "34.230.45.60", "userAgent": "example-user-agent-string", "requestParameters": { "AuthType": "Credentials", "Protocol": "RDP", "ConnectionType": "SessionManager", "InstanceId": "i-02573cafcfEXAMPLE" }, "responseElements": { "ConnectionArn": "arn:aws:ssm-guiconnect:us-east-2:123456789012:connection/fcb810cd-241f-4aae-9ee4-02d59EXAMPLE", "ConnectionKey": "71f9629f-0f9a-4b35-92f2-2d253EXAMPLE", "ClientToken": "49af0f92-d637-4d47-9c54-ea51aEXAMPLE", "requestId": "d466710f-2adf-4e87-9464-055b2EXAMPLE" }, "requestID": "d466710f-2adf-4e87-9464-055b2EXAMPLE", "eventID": "fc514f57-ba19-4e8b-9079-c2913EXAMPLE", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

資料事件範例

範例 1︰CreateControlChannel

下列範例顯示示範 CreateControlChannel操作 CloudTrail 的事件。

{ "eventVersion":"1.08", "userIdentity":{ "type":"AssumedRole", "principalId":"AKIAI44QH8DHBEXAMPLE", "arn":"arn:aws:sts::123456789012:assumed-role/exampleRole", "accountId":"123456789012", "accessKeyId":"AKIAI44QH8DHBEXAMPLE", "sessionContext":{ "sessionIssuer":{ "type":"Role", "principalId":"AKIAI44QH8DHBEXAMPLE", "arn":"arn:aws:iam::123456789012:role/exampleRole", "accountId":"123456789012", "userName":"exampleRole" }, "attributes":{ "creationDate":"2023-05-04T23:14:50Z", "mfaAuthenticated":"false" } } }, "eventTime":"2023-05-04T23:53:55Z", "eventSource":"ssm.amazonaws.com", "eventName":"CreateControlChannel", "awsRegion":"us-east-1", "sourceIPAddress":"192.0.2.0", "userAgent":"example-agent", "requestParameters":{ "channelId":"44295c1f-49d2-48b6-b218-96823EXAMPLE", "messageSchemaVersion":"1.0", "requestId":"54993150-0e8f-4142-aa54-3438EXAMPLE", "userAgent":"example-agent" }, "responseElements":{ "messageSchemaVersion":"1.0", "tokenValue":"Value hidden due to security reasons.", "url":"example-url" }, "requestID":"54993150-0e8f-4142-aa54-3438EXAMPLE", "eventID":"a48a28de-7996-4ca1-a3a0-a51fEXAMPLE", "readOnly":false, "resources":[ { "accountId":"123456789012", "type":"AWS::SSMMessages::ControlChannel", "ARN":"arn:aws:ssmmessages:us-east-1:123456789012:control-channel/44295c1f-49d2-48b6-b218-96823EXAMPLE" } ], "eventType":"AwsApiCall", "managementEvent":false, "recipientAccountId":"123456789012", "eventCategory":"Data" }
範例 2︰RequestManagedInstanceRoleToken

下列範例顯示示範 RequestManagedInstanceRoleToken操作 CloudTrail 的事件。

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "123456789012:aws:ec2-instance:i-02854e4bEXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/aws:ec2-instance/i-02854e4bEXAMPLE", "accountId": "123456789012", "accessKeyId": "AKIAI44QH8DHBEXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "123456789012:aws:ec2-instance", "arn": "arn:aws:iam::123456789012:role/aws:ec2-instance", "accountId": "123456789012", "userName": "aws:ec2-instance" }, "attributes": { "creationDate": "2023-08-27T03:34:46Z", "mfaAuthenticated": "false" }, "ec2RoleDelivery": "2.0" } }, "eventTime": "2023-08-27T03:37:15Z", "eventSource": "ssm.amazonaws.com", "eventName": "RequestManagedInstanceRoleToken", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "Apache-HttpClient/UNAVAILABLE (Java/1.8.0_362)", "requestParameters": { "fingerprint": "i-02854e4bf85EXAMPLE" }, "responseElements": null, "requestID": "2582cced-455b-4189-9b82-7b48EXAMPLE", "eventID": "7f200508-e547-4c27-982d-4da0EXAMLE", "readOnly": true, "resources": [ { "accountId": "123456789012", "type": "AWS::SSM::ManagedNode", "ARN": "arn:aws:ec2:us-east-1:123456789012:instance/i-02854e4bEXAMPLE" } ], "eventType": "AwsApiCall", "managementEvent": false, "recipientAccountId": "123456789012", "eventCategory": "Data" }

如需有關 CloudTrail 記錄內容的資訊,請參閱 AWS CloudTrail 使用者指南 中的CloudTrail記錄內容