本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS CLI 包括其他几个可帮助您管理路径的命令。这些命令将标签添加到跟踪记录、获取跟踪记录状态、对跟踪记录启动和停止日志记录以及删除跟踪记录。您必须从创建跟踪的同一 AWS 区域(其主区域)运行这些命令。使用时 AWS CLI,请记住您的命令在为您的个人资料配置的 AWS 区域中运行。如果您想要在不同的区域中运行命令,可以为配置文件更改默认区域,或者与命令一起使用 --region 参数。
主题
将一个或多个标签添加到跟踪
要将一个或多个标签添加到现有跟踪,请运行 add-tags 命令。
以下示例向美国东部(俄亥俄州)地区的 ARN Mary
为的arn:aws:cloudtrail:
跟踪添加一个名称us-east-2
:123456789012
:trail/my-trail
Owner
和值为的标签。
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 命令。
以下示例Name
从美国东部(俄亥俄州)地区的 ARN 为的跟踪arn:aws:cloudtrail:
中删除名称为us-east-2
:123456789012
:trail/Trail1
Location
和的标签。
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": ""
}
除了前面的 JSON 代码中显示的字段外,在出现 Amazon SNS 或 Simple Storage Service(Amazon S3)错误的情况下,状态还包含以下字段:
-
LatestNotificationError
. 在主题订阅失败的情况下,包含 Amazon SNS 发出的错误。 -
LatestDeliveryError
。 包含 Amazon S3 在 CloudTrail 无法将日志文件传送到存储桶时发出的错误。
配置 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为名为的跟踪创建 Insights 事件选择器TrailName3
。这将启用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为的跟踪的 Insights 事件选择器TrailName3
。清除 Insights 选择器的 JSON 字符串会禁用跟踪的 Insights 事件收集。TrailName3
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::Lambda::Function
和 AWS::S3::Object
资源类型的管理事件和数据事件。您可以使用基本事件选择器或高级事件选择器,但不能同时使用两者。如果将高级事件选择器应用于使用基本事件选择器的跟踪,则基本事件选择器将被覆盖。
要将跟踪转换为高级事件选择器,请运行 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
以及除名为的存储桶、名amzn-s3-demo-bucket
为的 AWS Lambda 函数DeleteObject
的数据事件以及通过 VPC 终端节点 AWS KMS 访问被拒绝事件的网络活动事件以外的所有 Amazon S3 存储桶/前缀组合的数据事件。MyLambdaFunction
由于这些都是自定义高级事件选择器,因此每组选择器都有一个描述性名称。请注意,尾随斜杠是 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 数据事件的示例跟踪
以下示例说明如何配置您的跟踪,使其包含前哨基地中 AWS Outposts 对象上的所有 Amazon S3 的所有数据事件。在此版本中,S3 在该resources.type
字段 AWS Outposts 的事件上支持的值为AWS::S3Outposts::Object
。
aws cloudtrail put-event-selectors --trail-name TrailName
--region region
\
--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 数据 API 管理事件的示例跟踪
以下示例为名为的跟踪创建高级事件选择器,TrailName
以包含只读和只写管理事件(省略readOnly
选择器),但排除 Amazon RDS 数据 API 管理事件。要排除 Amazon RDS 数据 API 管理事件,请在 eventSource
字段的字符串值中指定 Amazon RDS 数据 API 事件源:rdsdata.amazonaws.com
。
如果选择不记录管理事件,则不会记录 Amazon RDS 数据 API 管理事件,并且您无法更改 Amazon RDS 数据 API 事件日志记录设置。
要再次开始将 Amazon RDS 数据 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::Lambda::Function
和 AWS::S3::Object
资源类型的管理事件和数据事件。您可以使用高级事件选择器记录管理事件、所有数据资源类型和网络活动事件。
您可以使用基本事件选择器或高级事件选择器,但不能同时使用两者。如果您将基本事件选择器应用于使用高级事件选择器的跟踪,则高级事件选择器将被覆盖。
要查看跟踪的事件选择器设置,请运行 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 解。
当事件在您的账户中发生时, CloudTrail 将评估您的跟踪配置。如果事件匹配跟踪的任何事件选择器,则跟踪将处理并记录事件。您可以为一个跟踪配置最多 5 个事件选择器和最多 250 个数据资源。有关更多信息,请参阅 记录数据事件。
主题
带有特定事件选择器的示例跟踪
以下示例为名为的跟踪创建事件选择器,TrailName
以包括只读和只写管理事件、两个 Amazon S3 存储桶/前缀组合的数据事件以及名为的单个函数的数据事件。 AWS Lambda hello-world-python-function
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的 Amazon Managed Blockchain JSON-RPC 调用或其他高级事件选择器资源类型配置日志记录。您也无法使用基本事件选择器记录网络活动事件。您必须使用高级事件选择器来记录所有其他资源类型的网络活动事件和数据事件。有关更多信息,请参阅 配置高级事件选择器。
注意
如果跟踪仅应用于一个区域,则只记录该区域的事件,即使事件选择器参数指定所有 Simple Storage Service(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 账单产生重大影响。此示例中的用户已选择包含 W AWS KMS rit e 事件,该事件将包括Disable
ScheduleKey
、Delete
和,但不再包括大容量操作,例如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 数据 API 事件的示例跟踪
以下示例为名为的跟踪创建事件选择器,TrailName
以包括只读和只写管理事件,但不包括 Amazon RDS Data API 事件。由于 Amazon RDS Data API 事件被视为管理事件,而且其数量可能很大,因此,如果您有多个跟踪记录管理事件,它们可能会对您的 CloudTrail 账单产生重大影响。在此示例中,用户已选择排除每个跟踪中的 Amazon RDS 数据 API 事件,但一个跟踪除外。要排除事件源,请将 ExcludeManagementEventSources
添加到事件选择器,然后在字符串值中指定 Amazon RDS 数据 API 事件源:rdsdata.amazonaws.com
。
如果选择不记录管理事件,则不会记录 Amazon RDS 数据 API 事件,并且您无法更改事件日志记录设置。
要再次开始将 Amazon RDS 数据 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 数据 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
在删除跟踪时,请不要删除 Simple Storage Service(Amazon S3)存储桶或与该存储桶关联的 Amazon SNS 主题。使用 AWS Management Console AWS CLI、或服务 API 分别删除这些资源。