本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 管理追蹤 AWS CLI
AWS CLI 包含數個其他命令,可協助您管理追蹤。這些命令可用來將標籤新增至追蹤、取得追蹤狀態、啟動和停止追蹤的記錄功能,以及刪除追蹤。您必須從建立追蹤的相同 AWS 區域 (其主區域) 執行這些命令。使用 時 AWS CLI,請記住您的命令會在為您的設定檔設定的 AWS 區域中執行。如果您想在不同區域中執行命令,則可變更設定檔的預設區域,或搭配 --region 參數使用命令。
主題
新增一或多個標籤至追蹤
若要將一或多個標籤新增至現有的追蹤,請執行 add-tags 命令。
下列範例會將名稱為 Owner
(擁有者) 和值為 Mary
的標籤新增至美國東部 (俄亥俄) 區域 ARN 為 arn:aws:cloudtrail:
的追蹤。us-east-2
:123456789012
:trail/my-trail
aws cloudtrail add-tags --resource-id arn:aws:cloudtrail:
us-east-2
:123456789012
:trail/my-trail
--tags-list Key=Owner
,Value=Mary
--region us-east-2
若成功,此命令不會傳回任何內容。
列出一或多個追蹤的標籤
若要檢視與一或多個現有追蹤相關聯的標籤,請使用 list-tags 命令。
下列範例會列出 Trail1
和 Trail2
的標籤。
aws cloudtrail list-tags --resource-id-list arn:aws:cloudtrail:
us-east-2
:123456789012
:trail/Trail1
arn:aws:cloudtrail:us-east-2
:123456789012
:trail/Trail2
如果成功,此命令傳回的輸出會類似如下。
{ "ResourceTagList": [ { "ResourceId": "arn:aws:cloudtrail:
us-east-2
:123456789012
:trail/Trail1
", "TagsList": [ { "Value": "Alice
", "Key": "Name
" }, { "Value": "Ohio
", "Key": "Location
" } ] }, { "ResourceId": "arn:aws:cloudtrail:us-east-2
:123456789012
:trail/Trail2
", "TagsList": [ { "Value": "Bob
", "Key": "Name
" } ] } ] }
從追蹤移除一或多個標籤
若要從現有的追蹤移除一或多個標籤,請執行 remove-tags 命令。
下列範例為從美國東部 (俄亥俄) 區域中 ARN 為 arn:aws:cloudtrail:
的追蹤中移除名稱為 us-east-2
:123456789012
:trail/Trail1
Location
(位置) 和 Name
(名稱) 的標籤。
aws cloudtrail remove-tags --resource-id arn:aws:cloudtrail:
us-east-2
:123456789012
:trail/Trail1
--tags-list Key=Name Key=Location --region us-east-2
若成功,此命令不會傳回任何內容。
擷取追蹤設定和追蹤狀態
執行 describe-trails
命令以擷取 AWS 區域中線索的相關資訊。下列範例會傳回美國東部 (俄亥俄) 區域中所設定追蹤的相關資訊。
aws cloudtrail describe-trails --region us-east-2
如果成功,您會看到類似如下的輸出。
{ "trailList": [ { "Name": "
my-trail
", "S3BucketName": "amzn-s3-demo-bucket1
", "S3KeyPrefix": "my-prefix
", "IncludeGlobalServiceEvents": true, "IsMultiRegionTrail": true, "HomeRegion": "us-east-2
" "TrailARN": "arn:aws:cloudtrail:us-east-2
:123456789012
:trail/my-trail
", "LogFileValidationEnabled": false, "HasCustomEventSelectors": false, "SnsTopicName": "my-topic
", "IsOrganizationTrail": false, }, { "Name": "my-special-trail
", "S3BucketName": "amzn-s3-demo-bucket2
", "S3KeyPrefix": "example-prefix
", "IncludeGlobalServiceEvents": false, "IsMultiRegionTrail": false, "HomeRegion": "us-east-2
", "TrailARN": "arn:aws:cloudtrail:us-east-2
:123456789012
:trail/my-special-trail
", "LogFileValidationEnabled": false, "HasCustomEventSelectors": true, "IsOrganizationTrail": false }, { "Name": "my-org-trail
", "S3BucketName": "amzn-s3-demo-bucket3
", "S3KeyPrefix": "my-prefix
", "IncludeGlobalServiceEvents": true, "IsMultiRegionTrail": true, "HomeRegion": "us-east-1
" "TrailARN": "arn:aws:cloudtrail:us-east-2
:123456789012
:trail/my-org-trail
", "LogFileValidationEnabled": false, "HasCustomEventSelectors": false, "SnsTopicName": "my-topic
", "IsOrganizationTrail": true } ] }
執行 get-trail
命令來擷取有關特定追蹤的設定資訊。下列範例會傳回名為 my-trail
的設定資訊。
aws cloudtrail get-trail - -name
my-trail
如果成功,此命令傳回的輸出會類似如下。
{ "Trail": { "Name": "
my-trail
", "S3BucketName": "amzn-s3-demo-bucket
", "S3KeyPrefix": "my-prefix
", "IncludeGlobalServiceEvents": true, "IsMultiRegionTrail": true, "HomeRegion": "us-east-2
" "TrailARN": "arn:aws:cloudtrail:us-east-2
:123456789012
:trail/my-trail
", "LogFileValidationEnabled": false, "HasCustomEventSelectors": false, "SnsTopicName": "my-topic
", "IsOrganizationTrail": false, } }
若要擷取追蹤的狀態,請執行 get-trail-status
命令。您必須從建立該命令的區域 (主區域) 執行此命令 AWS ,或者您必須新增 --region 參數來指定該區域。
注意
如果線索是組織線索,而您是組織中的成員帳戶 AWS Organizations,您必須提供該線索的完整 ARN,而不只是名稱。
aws cloudtrail get-trail-status --name
my-trail
如果成功,您會看到類似如下的輸出。
{ "LatestDeliveryTime": 1441139757.497, "LatestDeliveryAttemptTime": "2015-09-01T20:35:57Z", "LatestNotificationAttemptSucceeded": "2015-09-01T20:35:57Z", "LatestDeliveryAttemptSucceeded": "2015-09-01T20:35:57Z", "IsLogging": true, "TimeLoggingStarted": "2015-09-01T00:54:02Z", "StartLoggingTime": 1441068842.76, "LatestDigestDeliveryTime": 1441140723.629, "LatestNotificationAttemptTime": "2015-09-01T20:35:57Z", "TimeLoggingStopped": "" }
如果發生 Amazon SNS 或 Amazon S3 錯誤,則除了上述 JSON 程式碼中所示的欄位外,狀態還會包含下列欄位:
-
LatestNotificationError
包含主題訂閱失敗時由 Amazon SNS 發出的錯誤。 -
LatestDeliveryError
. 包含 CloudTrail 無法將日誌檔案交付到儲存貯體時由 Amazon S3 發出的錯誤。
設定 CloudTrail Insights 事件選取器
執行 put-insight-selectors,並指定 ApiCallRateInsight
、ApiErrorRateInsight
(或兩者) 為 InsightType
屬性值,以啟用追蹤上的 Insights 事件。若要檢視追蹤的 Insights 選取器設定,請執行 get-insight-selectors
命令。您必須從建立追蹤的 AWS 區域 (主區域) 執行此命令,或者您必須將 --region 參數新增至命令來指定該區域。
注意
若要記錄 ApiCallRateInsight
的 Insights 事件,追蹤必須記錄 write
管理事件。若要記錄 ApiErrorRateInsight
的 Insights 事件,追蹤必須記錄 read
或 write
管理事件。
記錄 Insights 事件的範例追蹤
下列範例使用 put-insight-selectors,為名為 TrailName3
的追蹤建立 Insights 事件選取器。這會啟用 TrailName3
追蹤的 Insights 事件收集。Insights 事件選取器會記錄 ApiErrorRateInsight
和 ApiCallRateInsight
Insights 事件類型。
aws cloudtrail put-insight-selectors --trail-name
TrailName3
--insight-selectors '[{"InsightType": "ApiCallRateInsight"},{"InsightType": "ApiErrorRateInsight"}]'
此範例會傳回為追蹤設定的 Insights 事件選取器。
{ "InsightSelectors": [ { "InsightType": "ApiErrorRateInsight" }, { "InsightType": "ApiCallRateInsight" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName3
" }
範例:關閉收集 Insights 事件
下列範例使用 put-insight-selectors,為名為 TrailName3
的追蹤移除 Insights 事件選取器。清除 Insights 選取器的 JSON 字串會停用 TrailName3
追蹤的 Insights 事件收集。
aws cloudtrail put-insight-selectors --trail-name
TrailName3
--insight-selectors '[]'
此範例會傳回為追蹤設定的目前空白 Insights 事件選取器。
{ "InsightSelectors": [ ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName3
" }
設定進階事件選取器
您可以使用進階事件選取器來記錄管理事件、所有資源類型的資料事件,以及網路活動事件。相反地,您可以使用基本事件選擇器來記錄 AWS::DynamoDB::Table
、 和資源AWS::S3::Object
類型的管理事件AWS::Lambda::Function
和資料事件。您可以使用基本事件選擇器或進階事件選擇器,但不能同時使用兩者。如果您將進階事件選取器套用至使用基本事件選取器的線索,則會覆寫基本事件選取器。
若要將追蹤轉換為進階事件選取器,請執行 get-event-selectors命令以確認目前的事件選取器,然後設定進階事件選取器以符合先前事件選取器的範圍,然後新增任何其他選取器。
您必須從建立追蹤 AWS 區域 的 (主區域) 執行 get-event-selectors
命令,或者您必須新增 --region 參數來指定該區域。
aws cloudtrail get-event-selectors --trail-name
TrailName
注意
如果線索是組織線索,而且您在組織中使用成員帳戶登入 AWS Organizations,您必須提供線索的完整 ARN,而不只是名稱。
下列範例顯示使用進階事件選取器記錄管理事件之追蹤的設定。根據預設,線索會設定為記錄所有管理事件,且沒有資料事件或網路活動事件。
{ "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/management-events-trail", "AdvancedEventSelectors": [ { "Name": "Management events selector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] } ] } ] }
若要建立進階事件選取器,請執行 put-event-selectors
命令。當您的帳戶發生事件時,CloudTrail 會評估您的追蹤組態。如果事件符合追蹤的任何進階事件選取器,則追蹤會處理並記錄該事件。您可以在追蹤上設定多達 500 個條件,包括為追蹤上所有進階事件選取器指定的所有值。如需詳細資訊,請參閱 記錄資料事件 和 記錄網路活動事件。
主題
使用特定進階事件選取器的範例追蹤
下列範例會為名為 TrailName
的線索建立自訂進階事件選取器,以包含讀取和寫入管理事件 (省略readOnly
選取器),PutObject
以及所有 Amazon S3 儲存貯體/字首組合DeleteObject
的資料事件,但名為 的儲存貯體amzn-s3-demo-bucket
、名為 的 AWS Lambda 函數的資料事件MyLambdaFunction
,以及透過 VPC 端點 AWS KMS 存取遭拒事件的網路活動事件除外。因為這些都是自訂進階事件選取器,所以每組選取器都有一個描述性的名稱。請注意,尾步斜線是 S3 儲存貯體 ARN 值的一部分。
aws cloudtrail put-event-selectors --trail-name
TrailName
--advanced-event-selectors '[ { "Name": "Log readOnly and writeOnly management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] } ] }, { "Name": "Log PutObject and DeleteObject events for all but one bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "eventName", "Equals": ["PutObject","DeleteObject"] }, { "Field": "resources.ARN", "NotStartsWith": ["arn:aws:s3:::amzn-s3-demo-bucket
/"] } ] }, { "Name": "Log data plane actions on MyLambdaFunction", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::Lambda::Function"] }, { "Field": "resources.ARN", "Equals": ["arn:aws:lambda:us-east-2:
111122223333
:function/MyLambdaFunction
"] } ] }, { "Name": "Audit AccessDenied AWS KMS events over a VPC endpoint", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["NetworkActivity"]}, { "Field": "eventSource", "Equals": ["kms.amazonaws.com"]}, { "Field": "errorCode", "Equals": ["VpceAccessDenied"]} ] } ]'
範例傳回針對追蹤設定的進階事件選取器。
{ "AdvancedEventSelectors": [ { "Name": "Log readOnly and writeOnly management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] } ] }, { "Name": "Log PutObject and DeleteObject events for all but one bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "NotStartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket/" ] }, ] }, { "Name": "Log data plane actions on MyLambdaFunction", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::Lambda::Function" ] }, { "Field": "eventName", "Equals": [ "Invoke" ] }, { "Field": "resources.ARN", "Equals": [ "arn:aws:lambda:us-east-2:123456789012:function/MyLambdaFunction" ] } ] }, { "Name": "Audit AccessDenied AWS KMS events over a VPC endpoint", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["NetworkActivity"] }, { "Field": "eventSource", "Equals": ["kms.amazonaws.com"] }, { "Field": "errorCode", "Equals": ["VpceAccessDenied"] } ] } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
使用自訂進階事件選取器記錄 Amazon S3 AWS Outposts 資料事件的範例追蹤
下列範例示範如何設定您的追蹤,以包含所有 Amazon S3 在前哨站中 AWS Outposts 物件上的所有資料事件。在此版本中, AWS Outposts resources.type
欄位事件上 S3 的支援值為 AWS::S3Outposts::Object
。
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ '[ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3Outposts::Object"] } ] } ]'
命令會傳回下列範例輸出。
{ "AdvancedEventSelectors": [ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3Outposts::Object" ] } ] } ], "TrailARN": "arn:aws:cloudtrail:
region
:123456789012:trail/TrailName
" }
使用進階事件選取器排除 AWS Key Management Service 事件的範例追蹤
下列範例會為名為 TrailName
的線索建立進階事件選取器,以包含唯讀和唯讀管理事件 (省略readOnly
選取器),但會排除 AWS Key Management Service (AWS KMS) 事件。由於 AWS KMS 事件會被視為管理事件,並且可能會有大量事件,因此如果您有多個擷取管理事件的線索,它們可能會對 CloudTrail 帳單產生重大影響。
如果您選擇不記錄管理事件,則不會記錄 AWS KMS 事件,而且您無法變更 AWS KMS 事件記錄設定。
若要再次開始將 AWS KMS 事件記錄到線索,請移除eventSource
選擇器,然後再次執行命令。
aws cloudtrail put-event-selectors --trail-name
TrailName
\ --advanced-event-selectors ' [ { "Name": "Log all management events except KMS events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] }, { "Field": "eventSource", "NotEquals": ["kms.amazonaws.com"] } ] } ]'
範例傳回針對追蹤設定的進階事件選取器。
{ "AdvancedEventSelectors": [ { "Name": "Log all management events except KMS events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] }, { "Field": "eventSource", "NotEquals": [ "kms.amazonaws.com" ] } ] } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
若要再次開始記錄排除的事件至追蹤,請從移除 eventSource
選取器,如下列命令所示。
aws cloudtrail put-event-selectors --trail-name
TrailName
\ --advanced-event-selectors ' [ { "Name": "Log all management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] } ] } ]'
使用進階事件選取器排除 Amazon RDS Data API 管理事件的範例追蹤
下列範例會為名為 TrailName
的線索建立進階事件選取器,以包含唯讀和唯讀管理事件 (省略readOnly
選取器),但會排除 Amazon RDS Data API 管理事件。若要排除 Amazon RDS Data API 管理事件,請在 eventSource
欄位的字串值中指定 Amazon RDS Data API 事件來源:rdsdata.amazonaws.com
。
如果您選擇不記錄管理事件,則不會記錄 Amazon RDS Data API 管理事件,而且您無法變更 Amazon RDS Data API 事件記錄設定。
若要再次開始將 Amazon RDS Data API 管理事件記錄到線索,請移除eventSource
選擇器,然後再次執行命令。
aws cloudtrail put-event-selectors --trail-name
TrailName
\ --advanced-event-selectors ' [ { "Name": "Log all management events except Amazon RDS Data API management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] }, { "Field": "eventSource", "NotEquals": ["rdsdata.amazonaws.com"] } ] } ]'
範例傳回針對追蹤設定的進階事件選取器。
{ "AdvancedEventSelectors": [ { "Name": "Log all management events except Amazon RDS Data API management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] }, { "Field": "eventSource", "NotEquals": [ "rdsdata.amazonaws.com" ] } ] } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
若要再次開始記錄排除的事件至追蹤,請從移除 eventSource
選取器,如下列命令所示。
aws cloudtrail put-event-selectors --trail-name
TrailName
\ --advanced-event-selectors ' [ { "Name": "Log all management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] } ] } ]'
設定基本事件選取器
您只能使用基本事件選取器來記錄 AWS::DynamoDB::Table
、 和資源AWS::S3::Object
類型的管理事件AWS::Lambda::Function
和資料事件。您可以使用進階事件選取器來記錄管理事件、所有資料資源類型和網路活動事件。
您可以使用基本事件選擇器或進階事件選擇器,但不能同時使用兩者。如果您將基本事件選取器套用至使用進階事件選取器的追蹤,則會覆寫進階事件選取器。
若要檢視追蹤的事件選取器設定,請執行 get-event-selectors
命令。您必須從建立命令 AWS 區域 的 (主區域) 執行此命令,或使用 --region 參數指定該區域。
aws cloudtrail get-event-selectors --trail-name
TrailName
注意
如果線索是組織線索,而您是組織中的成員帳戶 AWS Organizations,您必須提供該線索的完整 ARN,而不只是名稱。
下列範例顯示使用基本事件選取器記錄管理事件之追蹤的設定。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [], "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName" }
若要建立事件選取器,請執行 put-event-selectors
命令。如果您希望在追蹤上記錄 Insights 事件,請確保事件選取器啟用記錄您想要設定追蹤的 Insights 類型。如需有關記錄 Insights 事件的詳細資訊,請參閱 使用 CloudTrail Insights。
當您的帳戶發生事件時,CloudTrail 會評估您的追蹤組態。如果事件符合追蹤的任何事件選取器,則追蹤會處理並記錄該事件。一個追蹤最多可以設定 5 個事件選取器和 250 個資料資源。如需詳細資訊,請參閱記錄資料事件。
主題
使用特定事件選取器的範例追蹤
下列範例會為名為 TrailName
的線索建立事件選擇器,以包含唯讀和唯讀管理事件、兩個 Amazon S3 儲存貯體/字首組合的資料事件,以及名為 hello-world-python-function
的單一 AWS Lambda 函數的資料事件。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "All","IncludeManagementEvents": true,"DataResources": [{"Type":"AWS::S3::Object", "Values": ["arn:aws:s3:::amzn-s3-demo-bucket/prefix","arn:aws:s3:::amzn-s3-demo-bucket2/prefix2"]},{"Type": "AWS::Lambda::Function","Values": ["arn:aws:lambda:us-west-2:999999999999:function:hello-world-python-function
"]}]}]'
此範例會傳回為追蹤設定的事件選取器。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [], "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::amzn-s3-demo-bucket/prefix", "arn:aws:s3:::amzn-s3-demo-bucket2/prefix2" ], "Type": "AWS::S3::Object" }, { "Values": [ "arn:aws:lambda:us-west-2:123456789012:function:hello-world-python-function" ], "Type": "AWS::Lambda::Function" }, ], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
記錄所有管理和資料事件的範例追蹤
下列範例會為名為 TrailName2
的線索建立事件選擇器,其中包含所有管理事件,包括唯讀和唯讀管理事件,以及 中所有 Amazon S3 儲存貯體、 AWS Lambda 函數和 Amazon DynamoDB 資料表的資料事件 AWS 帳戶。由於此範例使用基本事件選取器,因此無法設定 S3 事件的日誌記錄 AWS Outposts、Ethereum 節點上的 Amazon Managed Blockchain JSON-RPC 呼叫,或其他進階事件選取器資源類型。您也無法使用基本事件選取器來記錄網路活動事件。您必須使用進階事件選取器來記錄所有其他資源類型的網路活動事件和資料事件。如需詳細資訊,請參閱設定進階事件選取器。
注意
如果追蹤僅套用至一個區域,就只會記錄該區域的事件,即使事件選取器參數指定所有 Amazon S3 儲存貯體和 Lambda 函數也一樣。事件選取器只會套用至建立追蹤的區域。
aws cloudtrail put-event-selectors --trail-name
TrailName2
--event-selectors '[{"ReadWriteType": "All","IncludeManagementEvents": true,"DataResources": [{"Type":"AWS::S3::Object", "Values": ["arn:aws:s3:::"]},{"Type": "AWS::Lambda::Function","Values": ["arn:aws:lambda"]},{"Type": "AWS::DynamoDB::Table","Values": ["arn:aws:dynamodb"]}]}]'
此範例會傳回為追蹤設定的事件選取器。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [], "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::" ], "Type": "AWS::S3::Object" }, { "Values": [ "arn:aws:lambda" ], "Type": "AWS::Lambda::Function" }, { "Values": [ "arn:aws:dynamodb" ], "Type": "AWS::DynamoDB::Table" } ], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName2
" }
不記錄 AWS Key Management Service 事件的範例追蹤
下列範例會為名為 TrailName
的線索建立事件選擇器,以包含唯讀和唯讀管理事件,但會排除 AWS Key Management Service (AWS KMS) 事件。由於 AWS KMS 事件會被視為管理事件,並且可能有大量事件,因此如果您有多個擷取管理事件的線索,它們可能會對 CloudTrail 帳單產生重大影響。此範例中的使用者已選擇從每個追蹤中排除 AWS KMS 事件,只有一個例外。若要排除事件來源,請將 ExcludeManagementEventSources
加入事件選取器,並在字串值中指定事件來源。
如果您選擇不記錄管理事件,則不會記錄 AWS KMS 事件,而且您無法變更 AWS KMS 事件記錄設定。
若要再次開始將 AWS KMS 事件記錄到線索,請將空陣列傳遞為 的值ExcludeManagementEventSources
。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": ["kms.amazonaws.com"],"IncludeManagementEvents": true]}]'
此範例會傳回為追蹤設定的事件選取器。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [ "kms.amazonaws.com" ], "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
若要再次開始將 AWS KMS 事件記錄到線索,請將空陣列傳遞為 的值ExcludeManagementEventSources
,如下列命令所示。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": [],"IncludeManagementEvents": true]}]'
記錄相關低容量 AWS Key Management Service 事件的範例追蹤
下列範例會為名為 TrailName
的線索建立事件選擇器,以包含唯讀管理事件和 AWS KMS 事件。由於 AWS KMS 事件會被視為管理事件,而且可能大量發生,因此如果您有多個擷取管理事件的線索,它們可能會對 CloudTrail 帳單產生重大影響。此範例中的使用者已選擇包含 AWS KMS 寫入事件,其中將包含 Disable
、 Delete
和 ScheduleKey
,但不再包含大量動作,例如 Encrypt
、 Decrypt
和 GenerateDataKey
(這些現在視為讀取事件)。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "WriteOnly","ExcludeManagementEventSources": [],"IncludeManagementEvents": true]}]'
此範例會傳回為追蹤設定的事件選取器。這會記錄僅寫入的管理事件,包括 AWS KMS 事件。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [], "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "WriteOnly" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
不會記錄 Amazon RDS Data API 事件的範例追蹤
下列範例會為名為 TrailName
的追蹤建立事件選取器,以包含唯讀和唯寫管理事件,但排除 Amazon RDS Data API 事件。由於 Amazon RDS Data API 事件被視為管理事件,而且可能會有大量的事件,因此如果您有多個追蹤用來擷取管理事件,這些事件可能會對您的 CloudTrail 帳單產生重大影響。此範例中的使用者已選擇從每個追蹤中排除 Amazon RDS Data API 事件,只有一個例外。若要排除事件來源,請將 ExcludeManagementEventSources
加入事件選取器,並在字串值 rdsdata.amazonaws.com
中指定事件 Amazon RDS Data API 來源。
如果您選擇不記錄管理事件,Amazon RDS Data API 事件不會記錄,而且您無法變更事件記錄設定。
若要再次開始記錄 Amazon RDS Data API 管理事件到追蹤,請將空陣列傳遞為 的值ExcludeManagementEventSources
。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": ["rdsdata.amazonaws.com"],"IncludeManagementEvents": true]}]'
此範例會傳回為追蹤設定的事件選取器。
{ "EventSelectors": [ { "ExcludeManagementEventSources": [ "rdsdata.amazonaws.com" ], "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
若要再次開始將 Amazon RDS Data API 管理事件記錄到追蹤,請將空陣列傳遞為 的值ExcludeManagementEventSources
,如下列命令所示。
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{"ReadWriteType": "All","ExcludeManagementEventSources": [],"IncludeManagementEvents": true]}]'
停止及啟動追蹤的記錄功能
下列命令可用來啟動及停止 CloudTrail 記錄功能。
aws cloudtrail start-logging --name
awscloudtrail-example
aws cloudtrail stop-logging --name
awscloudtrail-example
注意
您需要執行 stop-logging
命令,停止將事件交付至儲存貯體,才能刪除該儲存貯體。如果您未停止記錄日誌,CloudTrail 會嘗試在有限期間內將日誌檔案交付到具有相同名稱的儲存貯體。
如果您停止記錄或刪除追蹤,該追蹤會停用 CloudTrail Insights。
刪除追蹤
如果您已在 Amazon Security Lake 中啟用 CloudTrail 管理事件,則需要維護至少一個多區域,會同時記錄 read
和 write
管理事件的組織追蹤。如果它是您擁有的唯一符合此要求的追蹤,除非在 Security Lake 中關閉 CloudTrail 管理事件,否則您無法刪除該追蹤。
您可以使用下列命令來刪除追蹤。您只能刪除追蹤建立所在區域 (主區域) 中的追蹤。
aws cloudtrail delete-trail --name
awscloudtrail-example
當您刪除追蹤時,並不會刪除相關聯的 Amazon S3 儲存貯體或 Amazon SNS 主題。使用 AWS CLI AWS Management Console、 或服務 API 來分別刪除這些資源。