本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
记录数据事件
本节介绍如何使用CloudTrail 控制台和记录数据事件AWS CLI。
默认情况下,跟踪和事件数据存储不记录数据事件。记录数据事件将收取额外费用。有关更多信息,请参阅AWS CloudTrail 定价
数据事件提供有关对在资源上或资源内执行的资源操作的信息。这些也称为数据层面操作。数据事件通常是高容量活动。
示例数据事件包括:
-
S3 存储桶中对象上的 Amazon S3 对象级 API 活动(例如
GetObject、DeleteObject和PutObjectAPI 操作)。 -
AWS Lambda 函数执行活动(
InvokeAPI)。 -
CloudTrail
PutAuditEvents用于记录外部事件的 CloudTrail Lake 频道上的活动 AWS。 -
针对主题的 Amazon SNS
Publish和PublishBatchAPI 操作。
您可以使用高级事件选择器来创建细粒度选择器,通过仅为您的使用场景记录感兴趣的特定事件来帮助控制成本。例如,您可以通过在 eventName 字段上添加筛选条件,使用高级事件选择器来记录特定 API 调用。有关更多信息,请参阅 使用高级事件选择器筛选数据事件。
注意
目录
数据事件
下表显示可用于跟踪和事件数据存储的资源类型。资源类型(控制台)列显示控制台中的相应选择。resources.type resources.type 值列显示了您为使用或 API 在跟踪或事件数据存储中包含该 AWS CLI 类型的数据事件而指定的值。 CloudTrail
对于跟踪,您可以使用基本或高级事件选择器来记录通用存储桶、Lambda 函数和 DynamoDB 表中的 Amazon S3 对象的数据事件(显示在表的前三行中)。您只能使用高级事件选择器来记录其余行中显示的资源类型。
对于事件数据存储,只能使用高级事件选择器来包含数据事件。
支持的数据事件 AWS CloudTrail
| AWS 服务 | 说明 | 资源类型(控制台) | resources.type 值 |
|---|---|---|---|
| Amazon RDS | 数据库集群上的 Amazon RDS API 活动。 |
RDS 数据 API:数据库集群 | AWS::RDS::DBCluster |
| Amazon S3 | 通用存储桶中对象上的 Amazon S3 对象级 API 活动(例如 |
S3 | AWS::S3::Object |
| Amazon S3 | 接入点上的 Amazon S3 API 活动。 |
S3 接入点 | AWS::S3::AccessPoint |
| Amazon S3 | 目录存储桶中对象上的 Amazon S3 对象级 API 活动(例如 |
S3 Express | AWS::S3Express::Object |
| Amazon S3 | Amazon S3 对象 Lambda 接入点 API 活动,例如调用 |
S3 对象 Lambda | AWS::S3ObjectLambda::AccessPoint |
| Amazon S3 | 针对卷的 Amazon FSx API 活动。 |
fsX 音量 | AWS::FSx::Volume |
| Amazon S3 表 | 针对表的 Amazon S3 API 活动。 |
S3 表 | AWS::S3Tables::Table |
| Amazon S3 表 | 针对表存储桶的 Amazon S3 API 活动。 |
S3 表存储桶 | AWS::S3Tables::TableBucket |
| Amazon S3 Vectors | 针对向量存储桶的 Amazon S3 API 活动。 |
S3 向量存储桶 | AWS::S3Vectors::VectorBucket |
| Amazon S3 Vectors | 针对向量索引的 Amazon S3 API 活动。 |
S3 向量索引 | AWS::S3Vectors::Index |
| Amazon S3 on Outposts | Amazon S3 on Outposts 对象级别 API 活动。 |
S3 Outposts | AWS::S3Outposts::Object |
| Amazon SNS | 针对平台端点的 Amazon SNS |
SNS 平台端点 | AWS::SNS::PlatformEndpoint |
| Amazon SNS | 针对主题的 Amazon SNS |
SNS 主题 | AWS::SNS::Topic |
| Amazon SQS | 消息上的 Amazon SQS API 活动。 |
SQS | AWS::SQS::Queue |
| 供应链 | 供应链 实例上的 API 活动。 |
供应链 | AWS::SCN::Instance |
| Amazon SWF | SWF 域 | AWS::SWF::Domain |
|
| AWS AppConfig | AWS AppConfig用于配置操作(例如调用 |
AWS AppConfig | AWS::AppConfig::Configuration |
| AWS AppSync | AWS AppSync AppSync GraphQL API 上的 API 活动。 |
AppSync GraphQL | AWS::AppSync::GraphQLApi |
| Amazon Aurora DSQL | 针对集群资源的 Amazon Aurora DSQL API 活动。 |
Amazon Aurora DSQL | AWS::DSQL::Cluster |
| AWS B2B 数据交换 | 用于转换器操作的 B2B 数据交换 API 活动,例如对 |
B2B 数据交换 | AWS::B2BI::Transformer |
| AWS Backup | AWS Backup 搜索数据 API 在搜索职位上的活动。 |
AWS Backup 搜索数据 API | AWS::Backup::SearchJob |
| Amazon Bedrock | 代理别名上的 Amazon Bedrock API 活动。 | Bedrock 代理别名 | AWS::Bedrock::AgentAlias |
| Amazon Bedrock | 针对异步调用的 Amazon Bedrock API 活动。 | Bedrock 异步调用 | AWS::Bedrock::AsyncInvoke |
| Amazon Bedrock | 流别名上的 Amazon Bedrock API 活动。 | Bedrock 流别名 | AWS::Bedrock::FlowAlias |
| Amazon Bedrock | 护栏上的 Amazon Bedrock API 活动。 | Bedrock 护栏 | AWS::Bedrock::Guardrail |
| Amazon Bedrock | 针对内联代理的 Amazon Bedrock API 活动。 | 基岩召唤 Inline-Agent | AWS::Bedrock::InlineAgent |
| Amazon Bedrock | 知识库上的 Amazon Bedrock API 活动。 | Bedrock 知识库 | AWS::Bedrock::KnowledgeBase |
| Amazon Bedrock | 模型上的 Amazon Bedrock API 活动。 | Bedrock 模型 | AWS::Bedrock::Model |
| Amazon Bedrock | 针对提示的 Amazon Bedrock API 活动。 | Bedrock 提示 | AWS::Bedrock::PromptVersion |
| Amazon Bedrock | 针对会话的 Amazon Bedrock API 活动。 | Bedrock 会议 | AWS::Bedrock::Session |
| Amazon Bedrock | 针对流执行的 Amazon Bedrock API 活动。 |
Bedrock 流执行 | AWS::Bedrock::FlowExecution |
| Amazon Bedrock | 针对自动推理策略的 Amazon Bedrock API 活动。 |
Bedrock 自动推理策略 | AWS::Bedrock::AutomatedReasoningPolicy |
| Amazon Bedrock | 针对自动推理策略版本的 Amazon Bedrock API 活动。 |
Bedrock 自动推理策略版本 | AWS::Bedrock::AutomatedReasoningPolicyVersion |
Amazon Bedrock |
Amazon Bedrock 数据自动化项目 API 活动。 |
Bedrock 数据自动化项目 |
|
Amazon Bedrock |
Bedrock 数据自动化调用 API 活动。 |
Bedrock 数据自动化调用 |
|
Amazon Bedrock |
Amazon Bedrock 数据自动化配置文件 API 活动。 |
Bedrock 数据自动化配置文件 |
|
Amazon Bedrock |
Amazon Bedrock 蓝图 API 活动。 |
Bedrock 蓝图 |
|
Amazon Bedrock |
亚马逊 Bedrock Code-Interpreter API 活动。 |
Bedrock-AgentCore Code-Interpreter |
|
Amazon Bedrock |
Amazon Bedrock 浏览器 API 活动。 |
Bedrock-AgentCore 浏览器 |
|
Amazon Bedrock |
Amazon Bedrock 工作负载身份 API 活动。 |
Bedrock-AgentCore 工作负载身份 |
|
Amazon Bedrock |
Amazon Bedrock 工作负载身份目录 API 活动。 |
Bedrock-AgentCore 工作负载身份目录 |
|
Amazon Bedrock |
Amazon Bedrock 令牌文件库 API 活动。 |
Bedrock-AgentCore 代币库 |
|
Amazon Bedrock |
亚马逊 Bedrock APIKey CredentialProvider API 活动。 |
Bedrock-AgentCore apiKey CredentialProvider |
|
Amazon Bedrock |
Amazon Bedrock 运行时 API 活动。 |
Bedrock-AgentCore 运行时 |
|
Amazon Bedrock |
亚马逊 Bedrock Runtime-Endpoint API 活动。 |
Bedrock-AgentCore Runtime-Endpoint |
|
Amazon Bedrock |
Amazon Bedrock 网关 API 活动。 |
Bedrock-AgentCore 网关 |
|
Amazon Bedrock |
Amazon Bedrock 内存 API 活动。 |
Bedrock-AgentCore 内存 |
|
Amazon Bedrock |
亚马逊 Bedrock Oauth2 API 活动 CredentialProvider 。 |
Bedrock-AgentCore Oauth2 CredentialProvider |
|
Amazon Bedrock |
亚马逊 Bedrock Browser-Custom API 活动。 |
Bedrock-AgentCore Browser-Custom |
|
Amazon Bedrock |
亚马逊 Bedrock Code-Interpreter-Custom API 活动。 |
Bedrock-AgentCore Code-Interpreter-Custom |
|
| Amazon Bedrock | Amazon Bedrock 工具 API 活动。 |
Bedrock 工具 | AWS::Bedrock::Tool |
| AWS Cloud Map | AWS Cloud Map命名空间上的 API 活动。 | AWS Cloud Map 命名空间 | |
| AWS Cloud Map | AWS Cloud Map服务上的 API 活动。 | AWS Cloud Map service | |
| 亚马逊 CloudFront | CloudFront 在 a 上的 API 活动KeyValueStore。 |
CloudFront KeyValueStore | AWS::CloudFront::KeyValueStore |
| AWS CloudTrail | CloudTrail |
CloudTrail 频道 | AWS::CloudTrail::Channel |
| 亚马逊 CloudWatch | 亚马逊 CloudWatch API 指标活动。 |
CloudWatch 指标 | AWS::CloudWatch::Metric |
| 亚马逊 CloudWatch 网络流量监视器 | 显示器上的亚马逊 CloudWatch 网络流量监控 API 活动。 |
网络流量监测仪监视器 | AWS::NetworkFlowMonitor::Monitor |
| 亚马逊 CloudWatch 网络流量监视器 | 亚马逊 CloudWatch 网络流量监控 API 在范围上的活动。 |
网络流量监测仪作用域 | AWS::NetworkFlowMonitor::Scope |
| 亚马逊 CloudWatch RUM | 应用程序监视器上的亚马逊 CloudWatch RUM API 活动。 |
RUM 应用程序监视器 | AWS::RUM::AppMonitor |
| 亚马逊 CodeGuru Profiler | CodeGuru Profiler API 在分析群组上的活动。 | CodeGuru 分析器分析组 | AWS::CodeGuruProfiler::ProfilingGroup |
| 亚马逊 CodeWhisperer | 亚马逊 CodeWhisperer API 在定制方面的活动。 | CodeWhisperer 定制 | AWS::CodeWhisperer::Customization |
| 亚马逊 CodeWhisperer | 个人资料上的亚马逊 CodeWhisperer API 活动。 | CodeWhisperer | AWS::CodeWhisperer::Profile |
| Amazon Cognito | 针对 Amazon Cognito 身份池的 Amazon Cognito API 活动。 |
Cognito 身份池 | AWS::Cognito::IdentityPool |
| AWS Data Exchange | AWS Data Exchange 资产上的 API 活动。 |
Data Exchange 资产 |
|
Amazon Data Firehose |
Amazon Data Firehose 传输流 API 活动。 |
Amazon Data Firehose |
|
| AWS Deadline Cloud | 实例集上的 Deadline Cloud API 活动。 |
Deadline Cloud 舰队 |
|
| AWS Deadline Cloud | 作业上的 Deadline Cloud API 活动。 |
Deadline Cloud 工作 |
|
| AWS Deadline Cloud | 队列上的 Deadline Cloud API 活动。 |
Deadline Cloud queue |
|
| AWS Deadline Cloud | 工作程序上的 Deadline Cloud API 活动。 |
Deadline Cloud 工人 |
|
| Amazon DynamoDB | 表上的 Amazon DynamoDB 项目级 API 活动(例如, 注意对于启用了流的表,数据事件中的 |
DynamoDB |
|
| Amazon DynamoDB | 针对流的 Amazon DynamoDB API 活动 |
DynamoDB Streams | AWS::DynamoDB::Stream |
| Amazon Elastic Block Store | Amazon Elastic Block Store(EBS)直接 API,例如 Amazon EBS 快照上的 |
Amazon EBS 直接 API | AWS::EC2::Snapshot |
Amazon Elastic Compute Cloud |
Amazon EC2 Instance Connect 端点 API 活动。 |
EC2 实例连接终端节点 |
|
| Amazon Elastic Container Service | 对容器实例的 Amazon Elastic Container Service API 活动。 |
ECS 容器实例 | AWS::ECS::ContainerInstance |
| Amazon Elastic Kubernetes Service | 对控制面板的 Amazon Elastic Kubernetes Service API 活动。 |
Amazon Elastic Kubernetes Service 控制面板 | AWS::EKS::Dashboard |
| Amazon EMR | 预写日志工作区上的 Amazon EMR API 活动。 | EMR 预写日志工作空间 | AWS::EMRWAL::Workspace |
| AWS 最终用户消息 SMS | AWS 有关发起身份的最终用户消息 SMS API 活动。 | SMS 语音发起身份 | AWS::SMSVoice::OriginationIdentity |
| AWS 最终用户消息 SMS | AWS 有关消息的最终用户消息 SMS API 活动。 | 短信语音消息 | AWS::SMSVoice::Message |
| AWS 最终用户社交消息 | AWS 有关电话号码 ID 的最终用户消息社交 API 活动。 | Social-Messaging 电话号码 ID | AWS::SocialMessaging::PhoneNumberId |
| AWS 最终用户社交消息 | AWS Waba ID 上的最终用户消息社交 API 活动。 | Social-Messaging Waba ID | AWS::SocialMessaging::WabaId |
| Amazon FinSpace | 针对环境的 Amazon FinSpace API 活动 |
FinSpace | AWS::FinSpace::Environment |
| 亚马逊 GameLift 直播 | Amazon 在应用程序上 GameLift 流式传输 API 活动。 |
GameLift Streams 应用程序 | AWS::GameLiftStreams::Application |
| 亚马逊 GameLift 直播 | Amazon GameLift Streams 直播群组上的直播 API 活动。 |
GameLift 直播群组 | AWS::GameLiftStreams::StreamGroup |
| AWS Glue | AWS Glue 在 Lake Formation 创建的表格上的 API 活动。 |
Lake Formation | AWS::Glue::Table |
| 亚马逊 GuardDuty | GuardDuty 探测器 | AWS::GuardDuty::Detector |
|
| AWS HealthImaging | AWS HealthImaging 数据存储上的 API 活动。 |
MedicalImaging 数据存储 | AWS::MedicalImaging::Datastore |
AWS HealthImaging |
AWS HealthImaging 图像集 API 活动。 |
MedicalImaging 图像集 |
|
| AWS IoT | IoT 证书 | AWS::IoT::Certificate |
|
| AWS IoT | IoT 事物 | AWS::IoT::Thing |
|
| AWS IoT Greengrass Version 2 | 组件版本上来自 Greengrass 核心设备的 Greengrass API 活动。 注意Greengrass 不会记录访问被拒绝事件。 |
IoT Greengrass 组件版本 | AWS::GreengrassV2::ComponentVersion |
| AWS IoT Greengrass Version 2 | 部署上来自 Greengrass 核心设备的 Greengrass API 活动。 注意Greengrass 不会记录访问被拒绝事件。 |
IoT Greengrass 部署 | AWS::GreengrassV2::Deployment |
| AWS IoT SiteWise | https://docs.aws.amazon.com/iot-sitewise/latest/userguide/logging-using-cloudtrail.html#service-name-data-events-cloudtrail有关资产 SiteWise 的 IoT API 活动。 |
物联网 SiteWise 资产 | AWS::IoTSiteWise::Asset |
| AWS IoT SiteWise | 时间序列上 SiteWise 的 IoT API 活动。 |
物联网 SiteWise 时间序列 | AWS::IoTSiteWise::TimeSeries |
| AWS IoT SiteWise 助理 | 对对话的 Sitewise Assistant API 活动 |
Sitewise Assistant 对话 | AWS::SitewiseAssistant::Conversation |
| AWS IoT TwinMaker | 物联网 TwinMaker 实体 | AWS::IoTTwinMaker::Entity |
|
| AWS IoT TwinMaker | 物联网 TwinMaker 工作空间 | AWS::IoTTwinMaker::Workspace |
|
| Amazon Kendra Intelligent Ranking | 针对重新评分执行计划的 Amazon Kendra Intelligent Ranking API 活动。 |
Kendra 排名 | AWS::KendraRanking::ExecutionPlan |
| Amazon Keyspaces(Apache Cassandra 兼容) | 表上的 Amazon Keyspaces API 活动。 | Cassandra 表 | AWS::Cassandra::Table |
| Amazon Keyspaces(Apache Cassandra 兼容) | 对 Cassandra CDC 流的 Amazon Keyspaces(Apache Cassandra 兼容)API 活动。 |
Cassandra CDC 流 | AWS::Cassandra::Stream |
| Amazon Kinesis Data Streams | 流上的 Kinesis Data Streams API 活动。 | Kinesis 流 | AWS::Kinesis::Stream |
| Amazon Kinesis Data Streams | 流使用者的上的 Kinesis Data Streams API 活动。 | Kinesis 流使用者 | AWS::Kinesis::StreamConsumer |
| Amazon Kinesis Video Streams | 视频流上的 Kinesis Video Streams API 活动,例如调用 GetMedia 和 PutMedia。 |
Kinesis 视频流 | AWS::KinesisVideo::Stream |
Amazon Kinesis Video Streams |
Kinesis Video Streams 视频信令通道 API 活动。 |
Kinesis 视频信令通道 |
|
| AWS Lambda | AWS Lambda 函数执行活动( |
Lambda | AWS::Lambda::Function |
| Amazon Location 映射 | Amazon Location 地图 API 活动。 | 地理地图 | AWS::GeoMaps::Provider |
| Amazon Location 位数 | Amazon Location 地点 API 活动。 | 地理地点 | AWS::GeoPlaces::Provider |
| Amazon Location 路线 | Amazon Location 路线 API 活动。 | 地理路线 | AWS::GeoRoutes::Provider |
| Amazon Machine Learning | 机器学习模型上的机器学习 API 活动。 | 配对学习 MlModel | AWS::MachineLearning::MlModel |
| Amazon Managed Blockchain | 针对网络的 Amazon Managed Blockchain API 活动。 |
托管区块链网络 | AWS::ManagedBlockchain::Network |
| Amazon Managed Blockchain | 亚马逊托管区块链 JSON-RPC 调用以太坊节点,例如 |
托管区块链 | AWS::ManagedBlockchain::Node |
| Amazon Managed Blockchain 查询 | Amazon Managed Blockchain 查询 API 活动。 |
Managed Blockchain 查询 | AWS::ManagedBlockchainQuery::QueryAPI |
| Amazon Managed Workflows for Apache Airflow | 对环境的 Amazon MWAA API 活动。 |
托管 Apache Airflow | AWS::MWAA::Environment |
| Amazon Neptune 图形 | Neptune Graph 上的数据 API 活动,例如查询、算法或向量搜索。 |
Neptune 图形 | AWS::NeptuneGraph::Graph |
| Amazon One Enterprise | UKey 上的 Amazon One Enterprise API 活动。 |
Amazon One UKey | AWS::One::UKey |
| Amazon One Enterprise | 用户上的 Amazon One Enterprise API 活动。 |
Amazon One 用户 | AWS::One::User |
| AWS Payment Cryptography | AWS Payment Cryptography 别名上的 API 活动。 | Payment Cryptography 别名 | AWS::PaymentCryptography::Alias |
| AWS Payment Cryptography | AWS Payment Cryptography 密钥上的 API 活动。 | Payment Cryptography 密钥 | AWS::PaymentCryptography::Key |
| Amazon Pinpoint | 对移动定位应用程序的 Amazon Pinpoint API 活动。 |
移动定位应用程序 | AWS::Pinpoint::App |
| AWS 私有 CA | AWS 私有 CA 活动目录 API 活动的连接器。 |
AWS 私有 CA 活动目录连接器 | AWS::PCAConnectorAD::Connector |
| AWS 私有 CA | AWS 私有 CA 用于 SCEP API 活动的连接器。 |
AWS 私有 CA 用于 SCEP 的连接器 | AWS::PCAConnectorSCEP::Connector |
| Amazon Q 应用程序构建器 | Amazon Q 应用程序构建器上的数据 API 活动。 |
Amazon Q 应用程序构建器 | AWS::QApps::QApp |
| Amazon Q 应用程序构建器 | 对 Amazon Q 应用程序构建器会话的数据 API 活动。 |
Amazon Q 应用程序构建器会话 | AWS::QApps::QAppSession |
| Amazon Q Business | 应用程序上的 Amazon Q Business API 活动。 |
Amazon Q Business 应用程序 | AWS::QBusiness::Application |
| Amazon Q Business | 数据来源上的 Amazon Q Business API 活动。 |
Amazon Q Business 数据来源 | AWS::QBusiness::DataSource |
| Amazon Q Business | 索引上的 Amazon Q Business API 活动。 |
Amazon Q Business 索引 | AWS::QBusiness::Index |
| Amazon Q Business | Web 体验上的 Amazon Q Business API 活动。 |
Amazon Q Business Web 体验 | AWS::QBusiness::WebExperience |
Amazon Q Business |
Amazon Q Business 集成 API 活动。 |
Amazon Q Business 集成 |
|
| Amazon Q 开发者版 | 对集成的 Amazon Q 开发者版 API 活动。 |
Q 开发者版集成 | AWS::QDeveloper::Integration |
| Amazon Q 开发者版 | 对操作调查的 Amazon Q 开发者版 API 活动。 |
AIOps 调查组 | AWS::AIOps::InvestigationGroup |
| Amazon Quick | 操作连接器上的亚马逊 Quick API 活动。 |
AWS QuickSuite 操作 | AWS::Quicksight::ActionConnector |
Amazon Quick |
亚马逊 Quick Flow API 活动。 |
QuickSight 流动 |
|
Amazon Quick |
亚马逊 Quick FlowSession API 活动。 |
QuickSight 流量会话 |
|
| 亚马逊 SageMaker AI | 终端节点上的亚马逊 SageMaker AI InvokeEndpointWithResponseStream 活动。 |
SageMaker AI 终端 | AWS::SageMaker::Endpoint |
| 亚马逊 SageMaker AI | 功能商店中的亚马逊 SageMaker AI API 活动。 |
SageMaker AI 功能商店 | AWS::SageMaker::FeatureGroup |
| 亚马逊 SageMaker AI | SageMaker AI 指标实验试用组件 | AWS::SageMaker::ExperimentTrialComponent |
|
亚马逊 SageMaker AI |
亚马逊 SageMaker AI mlFlow API 活动。 |
SageMaker MLFLOW |
|
| AWS Signer | 对签名作业的签署人 API 活动。 |
签署人签名作业 | AWS::Signer::SigningJob |
| AWS Signer | 对签名配置文件的签署人 API 活动。 |
签署人签名配置文件 | AWS::Signer::SigningProfile |
| Amazon Simple Email Service | 对配置集的 Amazon Simple Email Service(Amazon SES)API 活动。 |
SES 配置集 | AWS::SES::ConfigurationSet |
| Amazon Simple Email Service | 对电子邮件身份的 Amazon Simple Email Service(Amazon SES)API 活动。 |
SES 身份 | AWS::SES::EmailIdentity |
| Amazon Simple Email Service | 对模板的 Amazon Simple Email Service(Amazon SES)API 活动。 |
SES 模板 | AWS::SES::Template |
| Amazon SimpleDB | 对域的 Amazon SimpleDB API 活动。 |
SimpleDB 域 | AWS::SDB::Domain |
| AWS Step Functions | 对活动的 Step Functions API 活动。 |
步进函数 | AWS::StepFunctions::Activity |
| AWS Step Functions | 对状态机的 Step Functions API 活动。 |
Step Functions 状态机 | AWS::StepFunctions::StateMachine |
| AWS Systems Manager | 控制通道上的 Systems Manager API 活动。 | Systems Manager (系统管理员) | AWS::SSMMessages::ControlChannel |
| AWS Systems Manager | 对影响评测的 Systems Manager API 活动。 | SSM 影响评测 | AWS::SSM::ExecutionPreview |
| AWS Systems Manager | 托管节点上的 Systems Manager API 活动。 | Systems Manager 托管式节点 | AWS::SSM::ManagedNode |
| Amazon Timestream | 针对数据库的 Amazon Timestream Query API 活动。 |
Timestream 数据库 | AWS::Timestream::Database |
| Amazon Timestream | 对区域性端点的 Amazon Timestream API 活动。 | Timestream 区域性端点 | AWS::Timestream::RegionalEndpoint |
| Amazon Timestream | 针对表的 Amazon Timestream Query API 活动。 |
Timestream 表 | AWS::Timestream::Table |
| Amazon Verified Permissions | 针对策略存储的 Amazon Verified Permissions API 活动。 |
Amazon Verified Permissions | AWS::VerifiedPermissions::PolicyStore |
| 亚马逊 WorkSpaces 瘦客户端 | WorkSpaces 设备上的瘦客户端 API 活动。 | 瘦客户端设备 | AWS::ThinClient::Device |
| 亚马逊 WorkSpaces 瘦客户端 | WorkSpaces 环境中的瘦客户端 API 活动。 | 瘦客户端环境 | AWS::ThinClient::Environment |
| AWS X-Ray | X-Ray 有关跟踪的 API 活动。 |
X-Ray 跟踪 | AWS::XRay::Trace |
| 亚马逊 AIDevOps | AIDevOps 代理空间上的 API 活动。 | 代理空间 | AWS::AIDevOps::AgentSpace |
| 亚马逊 AIDevOps | AIDevOps 关于协会的 API 活动。 | AIDevOps 协会 | AWS::AIDevOps::Association |
| 亚马逊 AIDevOps | AIDevOps 运营商应用程序团队的 API 活动。 | AIDevOps 运营商应用程序团队 | AWS::AIDevOps::OperatorAppTeam |
| 亚马逊 AIDevOps | AIDevOps 有关管道元数据的 API 活动。 | AIDevOps 管道元数据 | AWS::AIDevOps::PipelineMetadata |
| 亚马逊 AIDevOps | AIDevOps 服务上的 API 活动。 | AIDevOps service | AWS::AIDevOps::Service |
| Amazon Bedrock | 高级优化提示任务的基石 API 活动。 | AdvancedOptimizePromptJob | AWS::Bedrock::AdvancedOptimizePromptJob |
| 亚马逊基岩 AgentCore | 评估者身上的基石 AgentCore API 活动。 | Bedrock-AgentCore 评估员 | AWS::BedrockAgentCore::Evaluator |
| 亚马逊成本优化 | CloudOptimization 配置文件上的 API 活动。 | CloudOptimization 配置文件 | AWS::CloudOptimization::Profile |
| 亚马逊成本优化 | CloudOptimization 关于推荐的 API 活动。 | CloudOptimization 建议 | AWS::CloudOptimization::Recommendation |
| 亚马逊 GuardDuty | GuardDuty 恶意软件扫描的 API 活动。 | GuardDuty 恶意软件扫描 | AWS::GuardDuty::MalwareScan |
| 亚马逊 NovaAct | 亚马逊 NovaAct API 有关工作流程定义的活动。 | 工作流程定义 | AWS::NovaAct::WorkflowDefinition |
| 亚马逊 NovaAct | 有关工作流程运行的 Amanzon NovaAct API 活动。 | 工作流程运行 | AWS::NovaAct::WorkflowRun |
| Amazon Redshift | Redshift 集群上的 API 活动。 | 亚马逊 Redshift 集群 | AWS::Redshift::Cluster |
| Amazon Support | SupportAccess 针对租户的 API 活动。 | SupportAccess 租户 | AWS::SupportAccess::Tenant |
| Amazon Support | SupportAccess 信任账户上的 API 活动。 | SupportAccess 信任账户 | AWS::SupportAccess::TrustingAccount |
| Amazon Support | SupportAccess 关于信任角色的 API 活动。 | SupportAccess 信任的角色 | AWS::SupportAccess::TrustingRole |
| 亚马逊转型 | 转变代理实例上的 API 活动。 | 转换代理实例 | AWS::Transform::AgentInstance |
| 亚马逊自定义转型 | 转变活动中的自定义 API 活动。 | Transform-Custom 活动 | AWS::TransformCustom::Campaign |
| 亚马逊自定义转型 | 转换对话中的自定义 API 活动。 | Transform-Custom 对话 | AWS::TransformCustom::Conversation |
| 亚马逊自定义转型 | 转换知识项目上的自定义 API 活动。 | Transform-Custom 知识项目 | AWS::TransformCustom::KnowledgeItem |
| 亚马逊自定义转型 | 转换包上的自定义 API 活动。 | Transform-Custom 包裹 | AWS::TransformCustom::Package |
| 亚马逊 WorkSpaces 应用程序 | 代理访问 WorkSpaces 应用程序 MCP 工具事件 | 代理访问 MCP 工具 | AWS::AgentAccessMCP::Tools |
要记录 CloudTrail 数据事件,必须明确添加要收集活动的每种资源类型。有关更多信息,请参阅使用 CloudTrail 控制台创建跟踪和使用控制台为事件创建 CloudTrail 事件数据存储。
在单区域跟踪或事件数据存储上,您只能为可在该区域中访问的资源记录数据事件。尽管 S3 存储桶是全球性的,但 AWS Lambda 函数和 DynamoDB 表是区域性的。
记录数据事件将收取额外费用。有关 CloudTrail 定价,请参阅AWS CloudTrail 定价
示例:记录 Amazon S3 对象的数据事件
记录一个 S3 存储桶中的所有 S3 对象的数据事件
下面的示例演示在为一个名为 amzn-s3-demo-bucket 的 S3 桶中的所有数据事件配置日志记录时日志记录是如何工作的。在此示例中, CloudTrail 用户指定了一个空前缀以及记录读取和写入数据事件的选项。
-
用户将对象上传到
amzn-s3-demo-bucket。 -
PutObjectAPI 操作是 Amazon S3 对象级别的 API。它被记录为数据事件 CloudTrail。由于 CloudTrail 用户指定了带有空前缀的 S3 存储桶,因此会记录在该存储桶中任何对象上发生的事件。跟踪或事件数据存储将处理和记录事件。 -
另一个用户将对象上传到
amzn-s3-demo-bucket2。 -
PutObjectAPI 操作发生在不是为跟踪或事件数据存储指定的 S3 存储桶中的某个对象上。跟踪或事件数据存储不会记录事件。
记录特定 S3 对象的数据事件
下面的示例演示在为特定 S3 对象配置跟踪或事件数据存储以记录事件时日志记录的工作方式。在此示例中, CloudTrail 用户指定了一个名为amzn-s3-demo-bucket3、带有前缀my-images的 S3 存储桶以及仅记录写入数据事件的选项。
-
一个用户在存储桶中检测到一个以
my-images前缀开头的对象,例如arn:aws:s3:::amzn-s3-demo-bucket3/my-images/example.jpg。 -
DeleteObjectAPI 操作是 Amazon S3 对象级别的 API。它被记录为写入数据事件 CloudTrail。事件发生在与跟踪或事件数据存储中指定的 S3 存储桶和前缀匹配的对象上。跟踪或事件数据存储将处理和记录事件。 -
另一个用户删除了 S3 存储桶中一个带不同前缀的对象,例如
arn:aws:s3:::amzn-s3-demo-bucket3/my-videos/example.avi。 -
事件发生在与跟踪或事件数据存储中指定的前缀不匹配的对象上。跟踪或事件数据存储不会记录事件。
-
一个用户对对象
arn:aws:s3:::amzn-s3-demo-bucket3/my-images/example.jpg调用GetObjectAPI 操作。 -
虽然事件发生在跟踪或事件数据存储中指定的存储桶和前缀上,但
GetObject是读取类型的 Amazon S3 对象级别 API。它在中记录为读取数据事件 CloudTrail,并且跟踪或事件数据存储未配置为记录读取事件。跟踪或事件数据存储不会记录事件。
注意
对于跟踪,如果记录特定 Amazon S3 存储桶的数据事件,建议不要使用将记录其数据事件的 Amazon S3 存储桶来接收在数据事件部分为跟踪指定的日志文件。使用相同的 Amazon S3 存储桶会导致您的跟踪在日志文件每次传输到 Amazon S3 存储桶时都记录数据事件。日志文件是按时间间隔传输的聚合事件,因此,事件与日志文件的比率不是 1:1;事件将记录到下一个日志文件中。例如,当 CloudTrail 传送日志时,PutObject事件发生在 S3 存储桶上。如果还在数据事件部分中指定了 S3 存储桶,跟踪将处理 PutObject 事件并将其记录为数据事件。该操作是另一个 PutObject 事件,并且跟踪将重新处理和记录此事件。
如果您将跟踪配置为记录 AWS 账户中的所有 Amazon S3 数据事件,则要避免在接收日志文件的 Amazon S3 存储桶中记录数据事件,请考虑以下选项之一:
-
设置
RecursiveLogging为falseon the trail 以抑制 CloudTrail 交付操作生成的事件。有关更多信息,请参阅 使用递归日志记录抑制递归事件。 -
配置将日志文件传输到属于另一个 AWS 账户的 Amazon S3 存储桶。有关更多信息,请参阅 接收来自多个账户的 CloudTrail 日志文件。
在其他对象中记录 S3 对象的数据事件 AWS accounts
当您将跟踪配置为记录数据事件时,您还可以指定属于其他 AWS 账户的 S3 对象。当事件在指定对象上发生时, CloudTrail 将评估事件是否与每个账户中的任何跟踪匹配。如果事件与某个跟踪设置匹配,则跟踪将处理并记录该账户的事件。通常,API 调用者和资源所有者都可以接收事件。
如果您拥有一个 S3 对象并且在跟踪中指定此对象,则您的跟踪将记录在您的账户中的对象上发生的事件。由于您拥有该对象,因此您的跟踪还将在其他账户调用该对象时记录事件。
如果您在跟踪中指定一个 S3 对象,并且其他账户拥有此对象,则您的跟踪仅记录在您的账户中的此对象上发生的事件。您的跟踪不会记录其他账户中发生的事件。
示例:记录两个 Amazon S3 对象的数据事件 AWS accounts
以下示例显示两个 AWS 账户如何配置 CloudTrail 为记录同一 S3 对象的事件。
-
在您的账户中,您希望您的跟踪记录名为
amzn-s3-demo-bucket的 S3 存储桶中所有对象的数据事件。通过指定带空对象前缀的 S3 存储桶来配置跟踪。 -
Bob 拥有一个单独的账户,该账户已获得对 S3 存储桶的访问权限。Bob 还希望记录同一 S3 存储桶中所有对象的数据事件。对于其跟踪,他配置了跟踪并指定带空对象前缀的同一 S3 存储桶。
-
Bob 使用
PutObjectAPI 操作将对象上传到 S3 存储桶。 -
此事件在他的账户中发生,并且与他的跟踪设置匹配。Bob 的跟踪将处理和记录该事件。
-
由于您拥有 S3 存储桶并且事件与您的跟踪设置匹配,因此您的跟踪也将处理和记录同一事件。由于现在有两个事件副本(一个记录在 Bob 的跟踪中,一个记录在你的轨迹中),所以会按两个数据事件副本 CloudTrail 收费。
-
您将一个对象上传到 S3 存储桶。
-
此事件在您的账户中发生并且与您的跟踪设置匹配。您的跟踪将处理和记录此事件。
-
由于该事件不是在 Bob 的账户中发生的,而且他不拥有 S3 存储桶,因此 Bob 的跟踪不会记录该事件。 CloudTrail 仅对该数据事件的一份副本收费。
示例:记录所有存储桶的数据事件,包括两个存储桶使用的 S3 存储桶 AWS accounts
以下示例显示了在账户中为收集数据事件的跟踪启用 “选择账户中的所有 S3 存储桶” 时的日志记录行为。 AWS
-
在您的账户中,您希望您的跟踪记录所有 S3 存储桶的数据事件。在 Data events(数据事件)中的 All current and future S3 buckets(所有当前和未来 S3 存储桶)下,您可以通过选择 Read(读取)事件、Write(写入)事件或同时选择两者,来配置跟踪。
-
Bob 拥有一个单独的账户,该账户已被授予对您账户中 S3 存储桶的访问权限。他想记录他有权访问的存储桶的数据事件。他配置他的跟踪以获取所有 S3 存储桶的数据事件。
-
Bob 使用
PutObjectAPI 操作将对象上传到 S3 存储桶。 -
此事件在他的账户中发生,并且与他的跟踪设置匹配。Bob 的跟踪将处理和记录该事件。
-
由于您拥有 S3 存储桶并且事件与您跟踪的设置匹配,因此您的跟踪也将处理和记录此事件。由于现在有两个事件副本(一个记录在 Bob 的跟踪中,一个记录在你的跟踪中),所以会向每个账户收取数据事件副本的 CloudTrail 费用。
-
您将一个对象上传到 S3 存储桶。
-
此事件在您的账户中发生并且与您的跟踪设置匹配。您的跟踪将处理和记录此事件。
-
由于该事件不是在 Bob 的账户中发生的,而且他不拥有 S3 存储桶,因此 Bob 的跟踪不会记录该事件。 CloudTrail 仅对您账户中此数据事件的一份副本收费。
-
第三个用户 Mary 可以访问 S3 存储桶,并在存储桶上运行
GetObject操作。她有一个跟踪配置为记录其账户中所有 S3 存储桶上的数据事件。因为她是 API 调用者,所以会在她的跟踪中 CloudTrail 记录一个数据事件。虽然 Bob 有权访问该存储桶,但他不是资源所有者,因此这次未在他的跟踪中记录任何事件。作为资源所有者,您会在跟踪中收到一个关于 Mary 调用的GetObject操作的事件。 CloudTrail 针对数据事件的每个副本对您的账户和 Mary 的账户收取费用:一个在 Mary 的跟踪中,一个在您的跟踪中。
Read-only 和只写事件
在配置跟踪或事件数据存储以记录数据事件和管理事件时,可以指定是需要只读事件、只写事件还是两者都需要。
-
读取
Read(读取)事件包括将读取您的资源但不进行更改的 API 操作。例如,只读事件包括 Amazon EC2
DescribeSecurityGroups和DescribeSubnetsAPI 操作。这些操作仅返回有关 Amazon EC2 资源的信息,但不更改您的配置。 -
写入
Write(写入)事件包括将修改(或可能修改)您的资源的 API 操作。例如,Amazon EC2
RunInstances和TerminateInstancesAPI 操作将修改您的实例。
示例:为单独的跟踪记录记录读取事件和写入事件
以下示例说明如何将跟踪记录配置为将账户的日志活动拆分到单独的 S3 存储桶中:一个名为 amzn-s3-demo-bucket1 的存储桶接收只读事件,另一个 amzn-s3-demo-bucket2 存储桶接收只写事件。
-
您创建一个跟踪并选择一个名为
amzn-s3-demo-bucket1的 S3 存储桶来接收日志文件。然后,您更新跟踪以指定您需要 Read(读取)管理事件和数据事件。 -
您创建另一个跟踪并选择 S3 存储桶
amzn-s3-demo-bucket2来接收日志文件。然后,您更新跟踪以指定您需要 Write(写入)管理事件和数据事件。 -
Amazon EC2
DescribeInstances和TerminateInstancesAPI 操作将在您的账户中执行。 -
DescribeInstancesAPI 操作是只读事件,它匹配第一个跟踪的设置。跟踪将记录事件并将事件传送到amzn-s3-demo-bucket1。 -
TerminateInstancesAPI 操作是只写事件,它匹配第二个跟踪的设置。跟踪将记录事件并将事件传送到amzn-s3-demo-bucket2。
使用记录数据事件 AWS 管理控制台
以下程序介绍如何通过使用 AWS 管理控制台更新现有的事件数据存储或跟踪以记录数据事件。有关如何创建事件数据存储以记录数据事件的信息,请参阅使用控制台为事件创建 CloudTrail 事件数据存储。有关如何创建跟踪以记录数据事件的信息,请参阅使用控制台创建跟踪。
对于跟踪,根据您使用的是高级事件选择器还是基本事件选择器,记录数据事件的步骤会有所不同。您可以使用高级事件选择器记录所有资源类型的数据事件,但如果使用基本事件选择器,则只能记录 Amazon S3 存储桶和存储桶对象、 AWS Lambda 函数以及 Amazon DynamoDB 表的数据事件。
按照以下程序更新现有的事件数据存储以记录数据事件。有关使用高级事件选择器的更多信息,请参阅本主题中的使用高级事件选择器筛选数据事件。
-
登录 AWS 管理控制台 并打开 CloudTrail 控制台,地址为https://console.aws.amazon.com/cloudtrail/
。 -
在导航窗格中,在 Lake 下,选择事件数据存储。
-
在事件数据存储页面上,选择要更新的事件数据存储。
注意
您只能在包含事件的事件数据存储上启用数据 CloudTrail 事件。您无法在 CloudTrail 事件数据存储上为 AWS Config 配置项目、 CloudTrail Insights 事件或非AWS 事件启用数据事件。
-
在详细信息页面上的数据事件中,选择编辑。
-
如果您尚未记录数据事件,请选择 Data events(数据事件)复选框。
-
对于资源类型,选择要在其上记录数据事件的资源类型。
-
选择日志选择器模板。您可以选择预定义的模板,也可以选择自定义来定义您自己的事件收集条件。
您可以从以下预定义模板中进行选择:
-
记录所有事件:选择此模板以记录所有事件。
-
仅记录读取事件 -选择此模板仅记录读取事件。 Read-only 事件是不会更改资源状态的事件,例如
Get*或Describe*事件。 -
仅记录写入事件:选择此模板以仅记录写入事件。写入事件可添加、更改或删除资源、属性或构件,例如
Put*、Delete*或Write*事件。 -
仅记录 AWS 管理控制台 事件 -选择此模板可仅记录源自的事件 AWS 管理控制台。
-
排除 AWS 服务 已启动的事件 -选择此模板可排除具有为 AWS 服务
eventType的事件和使用 AWS 服务关联角色 (SLR) 启动的事件。AwsServiceEvent
-
-
(可选)在选择器名称中,输入用于标识选择器的名称。选择器名称是高级事件选择器的描述性名称,例如“仅记录两个 S3 桶的数据事件”。选择器名称在高级事件选择器中列为
Name,展开 JSON 视图即可查看该名称。 -
如果您选择了自定义,则在高级事件选择器中,将基于高级事件选择器字段的值生成表达式。
注意
选择器不支持使用通配符,例如
*。要将多个值与单个条件匹配,可以使用StartsWith、EndsWith、NotStartsWith或NotEndsWith明确匹配事件字段的开头或结尾。-
从下面的字段中选择。
-
readOnly-readOnly可以设置为等于true或的值false。 Read-only数据事件是不会更改资源状态的事件,例如Get*或Describe*事件。写入事件可添加、更改或删除资源、属性或构件,例如Put*、Delete*或Write*事件。要记录read和write两种事件,请不要添加readOnly选择器。 -
eventName:eventName可以使用任何运算符。您可以使用它来包含或排除记录到的任何数据事件 CloudTrail,例如PutBucketGetItem、或GetSnapshotBlock。 -
eventSource:要包括或排除的事件类型。此字段可以使用任意运算符。 -
eventType:要包括或排除的事件类型。例如,可以将此字段设置为不等于
AwsServiceEvent,以排除 AWS 服务 事件。有关事件类型的列表,请参阅 CloudTrail 记录管理、数据和网络活动事件的内容 中的 eventType。 -
会话 CredentialFromConsole -包括或排除源自 AWS 管理控制台 会话的事件。可以将此字段设置为等于或不等于值
true。 -
用户 Identity.arn — 包含或排除特定 IAM 身份所采取操作的事件。有关更多信息,请参阅 CloudTrail userIdentity 元素。
-
resources.ARN:您可以将任何运算符与resources.ARN配合使用,但如果您使用等于或不等于,则该值必须与您在模板中指定为resources.type的值的有效资源类型的 ARN 完全匹配。注意
您不能使用
resources.ARN字段筛选没有 ARN 的资源类型。有关数据事件资源的 ARN 格式的更多信息,请参阅《服务授权参考》中的 AWS 服务的操作、资源和条件键。
-
-
对于每个字段,请选择 + 条件以根据需要添加任意数量的条件,所有条件总共可有最多 500 个指定值。例如,要从记录到事件数据存储的数据事件中排除两个 S3 存储桶的数据事件,可以将字段设置为 resources.ARN,设置不始于运算符,然后粘贴您不想为其记录事件的 S3 存储桶 ARN。
要添加第二个 S3 存储桶,请选择 + 条件,然后重复上述说明,在 ARN 中粘贴或浏览到不同的存储桶。
有关如何 CloudTrail 评估多个条件的信息,请参阅如何 CloudTrail 评估一个字段的多个条件。
注意
对于事件数据存储上的所有选择器,最多可以有 500 个值。这包括选择器的多个值的数组,例如
eventName。如果所有选择器均为单个值,则最多可以向选择器添加 500 个条件。 -
根据需要,选择 + 字段以添加其他字段。为了避免错误,请不要为字段设置冲突或重复的值。例如,不要在一个选择器中将 ARN 指定为等于某个值,然后在另一个选择器中指定 ARN 不等于相同的值。
-
-
要添加需要记录数据事件的其他资源类型,请选择添加数据事件类型。重复步骤 6 至此步骤,为其他资源类型配置高级事件选择器。
-
查看并验证选择后,选择保存更改。
在中 AWS 管理控制台,如果您的跟踪使用高级事件选择器,则可以从记录所选资源上的所有数据事件的预定义模板中进行选择。选择了日志选择器模板后,您可以自定义模板,以仅包含最希望查看的数据事件。有关使用高级事件选择器的更多信息,请参阅本主题中的使用高级事件选择器筛选数据事件。
-
在控制台的 CloudTrail 控制面板或跟踪页面上,选择要更新的跟踪。
-
在详细信息页面上的数据事件中,选择编辑。
-
如果您尚未记录数据事件,请选择 Data events(数据事件)复选框。
-
对于资源类型,选择要在其上记录数据事件的资源类型。
-
选择日志选择器模板。您可以选择预定义的模板,也可以选择自定义来定义您自己的事件收集条件。
您可以从以下预定义模板中进行选择:
-
记录所有事件:选择此模板以记录所有事件。
-
仅记录读取事件 -选择此模板仅记录读取事件。 Read-only 事件是不会更改资源状态的事件,例如
Get*或Describe*事件。 -
仅记录写入事件:选择此模板以仅记录写入事件。写入事件可添加、更改或删除资源、属性或构件,例如
Put*、Delete*或Write*事件。 -
仅记录 AWS 管理控制台 事件 -选择此模板可仅记录源自的事件 AWS 管理控制台。
-
排除 AWS 服务 已启动的事件 -选择此模板可排除具有为 AWS 服务
eventType的事件和使用 AWS 服务关联角色 (SLR) 启动的事件。AwsServiceEvent
注意
为 S3 存储桶选择预定义模板可以记录当前 AWS 账户中的所有存储桶以及您在完成跟踪创建后创建的所有存储桶的数据事件。它还可以记录您 AWS 账户中任何用户或角色执行的数据事件活动,即使该活动是在属于另一个 AWS 账户的存储桶上执行的。
如果跟踪仅应用于一个区域,则选择记录所有 S3 存储桶的预定义模板可为跟踪所在的区域中的所有存储桶和您后来在该区域中创建的任何存储桶启用数据事件日志记录。它不会记录您 AWS 账户中其他区域的 Amazon S3 存储桶的数据事件。
如果您要为所有区域创建跟踪,则为 Lambda 函数选择一个预定义模板可以记录当前 AWS 账户中的所有函数以及您在完成跟踪创建后可能在任何区域创建的任何 Lambda 函数的数据事件记录。如果您要为单个区域创建跟踪(对于跟踪,只能使用来完成 AWS CLI),则此选择将启用您 AWS 账户中该区域中当前所有函数的数据事件记录,以及您在完成创建跟踪后可能在该区域创建的任何 Lambda 函数的数据事件记录。它不会为在其他区域中创建的 Lambda 函数启用数据事件日志记录。
记录所有函数的数据事件还允许记录您 AWS 账户中任何用户或角色执行的数据事件活动,即使该活动是在属于另一个 AWS 账户的功能上执行的。
-
-
(可选)在选择器名称中,输入用于标识选择器的名称。选择器名称是高级事件选择器的描述性名称,例如“仅记录两个 S3 桶的数据事件”。选择器名称在高级事件选择器中列为
Name,展开 JSON 视图即可查看该名称。 -
如果您选择了自定义,则在高级事件选择器中,将基于高级事件选择器字段的值生成表达式。
注意
选择器不支持使用通配符,例如
*。要将多个值与单个条件匹配,可以使用StartsWith、EndsWith、NotStartsWith或NotEndsWith明确匹配事件字段的开头或结尾。-
从下面的字段中选择。
-
readOnly-readOnly可以设置为等于true或的值false。 Read-only数据事件是不会更改资源状态的事件,例如Get*或Describe*事件。写入事件可添加、更改或删除资源、属性或构件,例如Put*、Delete*或Write*事件。要记录read和write两种事件,请不要添加readOnly选择器。 -
eventName:eventName可以使用任何运算符。您可以使用它来包含或排除记录到的任何数据事件 CloudTrail,例如PutBucketGetItem、或GetSnapshotBlock。 -
eventSource:要包括或排除的事件类型。此字段可以使用任意运算符。 -
eventType:要包括或排除的事件类型。例如,可以将此字段设置为不等于
AwsServiceEvent,以排除 AWS 服务 事件。有关事件类型的列表,请参阅 CloudTrail 记录管理、数据和网络活动事件的内容 中的 eventType。 -
会话 CredentialFromConsole -包括或排除源自 AWS 管理控制台 会话的事件。可以将此字段设置为等于或不等于值
true。 -
用户 Identity.arn — 包含或排除特定 IAM 身份所采取操作的事件。有关更多信息,请参阅 CloudTrail userIdentity 元素。
-
resources.ARN:您可以将任何运算符与resources.ARN配合使用,但如果您使用等于或不等于,则该值必须与您在模板中指定为resources.type的值的有效资源类型的 ARN 完全匹配。注意
您不能使用
resources.ARN字段筛选没有 ARN 的资源类型。有关数据事件资源的 ARN 格式的更多信息,请参阅《服务授权参考》中的 AWS 服务的操作、资源和条件键。
-
-
对于每个字段,请选择 + 条件以根据需要添加任意数量的条件,所有条件总共可有最多 500 个指定值。例如,要从记录到事件数据存储的数据事件中排除两个 S3 存储桶的数据事件,可以将字段设置为 resources.ARN,设置不始于运算符,然后粘贴您不想为其记录事件的 S3 存储桶 ARN。
要添加第二个 S3 存储桶,请选择 + 条件,然后重复上述说明,在 ARN 中粘贴或浏览到不同的存储桶。
有关如何 CloudTrail 评估多个条件的信息,请参阅如何 CloudTrail 评估一个字段的多个条件。
注意
对于事件数据存储上的所有选择器,最多可以有 500 个值。这包括选择器的多个值的数组,例如
eventName。如果所有选择器均为单个值,则最多可以向选择器添加 500 个条件。 -
根据需要,选择 + 字段以添加其他字段。为了避免错误,请不要为字段设置冲突或重复的值。例如,不要在一个选择器中将 ARN 指定为等于某个值,然后在另一个选择器中指定 ARN 不等于相同的值。
-
-
要添加需要记录数据事件的其他资源类型,请选择添加数据事件类型。重复步骤 4 至此步骤,为资源类型配置高级事件选择器。
-
查看并验证选择后,选择保存更改。
按照以下程序,使用基本事件选择器更新现有跟踪以记录数据事件。
-
登录 AWS 管理控制台 并打开 CloudTrail 控制台,地址为https://console.aws.amazon.com/cloudtrail/
。 -
打开 CloudTrail 控制台的跟踪页面并选择跟踪名称。
注意
虽然您可以编辑现有跟踪以记录数据事件,但作为最佳实践,请考虑专门创建单独的跟踪以记录数据事件。
-
对于 Data event(数据事件),选择 Edit(编辑)。
-
对于 Amazon S3 存储桶:
-
对于 Data event source(数据事件源),选择 S3。
-
您可以选择记录 All current and future S3 buckets(所有当前和未来 S3 存储桶),也可以指定单个存储桶或函数。默认情况下,记录所有当前和未来 S3 存储桶的数据事件。
注意
保留默认 “所有当前和未来的 S3 存储桶” 选项,可以记录当前 AWS 账户中的所有存储桶以及您在完成创建跟踪后创建的所有存储分段的数据事件。它还可以记录您 AWS 账户中任何用户或角色执行的数据事件活动,即使该活动是在属于另一个 AWS 账户的存储桶上执行的。
如果您要为单个区域创建跟踪(使用完成 AWS CLI),则选择 “选择账户中的所有 S3 存储桶” 选项可为与您的跟踪位于同一区域中的所有存储桶以及稍后在该区域创建的所有存储桶启用数据事件记录功能。它不会记录您 AWS 账户中其他区域的 Amazon S3 存储桶的数据事件。
-
如果保留默认值 All current and future S3 buckets(所有当前和未来 S3 存储桶),则选择记录 Read(读取)事件、Write(写入)事件,还是记录两者。
-
要选择单个存储桶,请清空 All current and future S3 buckets(所有当前和未来 S3 存储桶)的 Read(读取)和Write(写入)复选框。在 Individual bucket selection(单个存储桶选择)中,浏览要在其上记录数据事件的存储桶。要查找特定存储桶,键入所需存储桶的存储桶前缀。您可以在此窗口中选择多个存储桶。选择添加存储桶,记录更多存储桶的数据事件。选择记录 Read(读取)事件(如
GetObject)、Write(写入)事件(如PutObject)或同时记录两种事件。此设置优先于为各个存储桶配置的个别设置。例如,如果指定记录所有 S3 存储桶的 Read 事件,然后选择为数据事件日志记录添加一个特定存储桶,则所添加存储桶的 Read 已经是选中状态。您无法清除此选择。只能配置 Write 选项。
要从日志记录中删除存储桶,请选择 X。
-
-
要添加需要记录数据事件的其他资源类型,请选择添加数据事件类型。
-
对于 Lambda 函数:
-
对于数据事件源,选择 Lambda。
-
在 Lambda 函数中,选择所有区域记录所有 Lambda 函数,或选择将函数作为 ARN 输入以记录特定函数上的数据事件。
要记录 AWS 账户中的所有 Lambda 函数的数据事件,请选择记录所有当前和未来函数。此设置优先于为各个函数配置的个别设置。将记录所有函数,即便这些函数未显示。
注意
如果为所有区域创建了一个跟踪,则此选择将为您的 AWS 账户中当前包含的所有函数以及您在创建跟踪后可能在任何区域中创建的任何 Lambda 函数启用数据事件日志记录。如果您要为单个区域创建跟踪(使用完成 AWS CLI),则此选择将启用您 AWS 账户中该区域中当前所有函数的数据事件记录,以及您在创建完跟踪后可能在该区域创建的任何 Lambda 函数的数据事件记录。它不会为在其他区域中创建的 Lambda 函数启用数据事件日志记录。
记录所有函数的数据事件还允许记录您 AWS 账户中任何用户或角色执行的数据事件活动,即使该活动是在属于另一个 AWS 账户的功能上执行的。
-
如果选择将函数作为 ARN 输入,则输入 Lambda 函数的 ARN。
注意
如果您的账户中有超过 15,000 个 Lambda 函数,则在创建跟踪时无法在 CloudTrail控制台中查看或选择所有函数。您仍可以选择该选项来记录所有函数,即使未显示这些函数也是如此。如果您要记录特定函数的数据事件,则可手动添加一个函数(如果您知道其 ARN)。您也可以在控制台中完成跟踪的创建,然后使用和put-event-selectors命令为特定 Lambda 函数配置数据事件日志。 AWS CLI 有关更多信息,请参阅 使用管理路径 AWS CLI。
-
-
要添加需要记录数据事件的其他资源类型,请选择添加数据事件类型。
-
对于 DynamoDB 表:
-
对于 Data event source(数据事件源),选择 DynamoDB。
-
在 DynamoDB table selection(DynamoDB 表选择)中,选择 Browse(浏览)以选择一个表,或粘贴到您有权访问的 DynamoDB 表的 ARN 中。DynamoDB 表 ARN 使用以下格式:
arn:partition:dynamodb:region:account_ID:table/table_name要添加另一个表,请选择 Add row(添加行),然后浏览到某个表或粘贴到您有权访问的表的 ARN 中。
-
-
选择保存更改。
使用记录数据事件 AWS Command Line Interface
您可以使用 AWS CLI配置跟踪或事件数据存储以记录数据事件。
使用记录轨迹的数据事件 AWS CLI
您可以使用 AWS CLI配置您的跟踪记录以记录管理事件和数据事件。
注意
-
请注意,如果您的账户正在记录管理事件的多个副本,将会产生费用。记录数据事件始终需要收取费用。有关更多信息,请参阅AWS CloudTrail 定价
。 -
您可以使用高级事件选择器或基本事件选择器,但不能同时使用两者。如果将高级事件选择器应用于跟踪,则所有现有的基本事件选择器都将被覆盖。
-
如果您的跟踪使用基本的事件选择器,则您只能记录以下资源类型:
-
AWS::DynamoDB::Table -
AWS::Lambda::Function -
AWS::S3::Object
要记录其他资源类型,您需要使用高级事件选择器。要将跟踪转换为高级事件选择器,请运行 get-event-selectors 命令以确认当前事件选择器,然后将高级事件选择器配置为与以前的事件选择器的覆盖范围相匹配,然后为要记录数据事件的任何资源类型添加选择器。
-
-
您可以使用高级事件选择器根据支持的高级事件选择器字段支持的高级事件选择器字段的值来进行筛选,从而使您能够仅记录感兴趣的数据事件。有关配置这些字段的更多信息,请参阅《AWS CloudTrail API 参考》中的 AdvancedFieldSelector 和本指南中的 使用高级事件选择器筛选数据事件。
要查看您的跟踪是否正在记录管理事件和数据事件,请运行 get-event-selectors
aws cloudtrail get-event-selectors --trail-nameTrailName
该命令将返回跟踪的事件选择器。
主题
使用高级事件选择器记录跟踪的数据事件
注意
如果将高级事件选择器应用于跟踪,则所有现有的基本事件选择器都将被覆盖。在配置高级事件选择器之前,请运行 get-event-selectors 命令以确认当前事件选择器,然后将高级事件选择器配置为与以前的事件选择器的覆盖范围相匹配,然后为要记录的任何其他数据事件添加选择器。
以下示例为名为的跟踪创建自定义高级事件选择器,TrailName以包括读取和写入管理事件(省略readOnly选择器),PutObject以及除名为的存储桶amzn-s3-demo-bucket和名为的 AWS Lambda 函数DeleteObject的数据事件之外的所有 Amazon S3 bucket/prefix 组合的数据事件。MyLambdaFunction由于这些都是自定义高级事件选择器,因此每组选择器都有一个描述性名称。请注意,尾随斜杠是 S3 存储桶的 ARN 值的一部分。
aws cloudtrail put-event-selectors --trail-nameTrailName--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"] } ] } ]'
以下示例返回为跟踪配置的高级事件选择器。
{ "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:111122223333:function/MyLambdaFunction" ] } ] } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName" }
使用高级事件选择器记录 Amazon S3 存储桶的所有 Amazon S3 事件
注意
如果将高级事件选择器应用于跟踪,则所有现有的基本事件选择器都将被覆盖。
以下示例说明如何配置您的跟踪以包含特定 S3 存储桶中的所有 Amazon S3 对象的所有数据事件。S3 事件在 resources.type 字段中的值为 AWS::S3::Object。由于 S3 对象和 S3 存储桶的 ARN 值略有不同,因此必须为 resources.ARN 添加 StartsWith 运算符以捕获所有事件。
aws cloudtrail put-event-selectors --trail-nameTrailName--regionregion\ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:partition:s3:::amzn-s3-demo-bucket/"] } ] } ]'
该命令将返回以下示例输出。
{ "TrailARN": "arn:aws:cloudtrail:region:account_ID:trail/TrailName", "AdvancedEventSelectors": [ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "StartsWith": [ "arn:partition:s3:::amzn-s3-demo-bucket/" ] } ] } ] }
登录 Amazon S3 AWS Outposts 使用高级事件选择器进行事件
注意
如果将高级事件选择器应用于跟踪,则所有现有的基本事件选择器都将被覆盖。
以下示例说明如何配置您的跟踪以包含您的 Outpost 中所有 Amazon S3 on Outposts 对象的所有数据事件。
aws cloudtrail put-event-selectors --trail-nameTrailName--regionregion\ --advanced-event-selectors \ '[ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3Outposts::Object"] } ] } ]'
该命令将返回以下示例输出。
{ "TrailARN": "arn:aws:cloudtrail:region:account_ID:trail/TrailName", "AdvancedEventSelectors": [ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3Outposts::Object" ] } ] } ] }
使用基本事件选择器记录事件
下面是显示基本事件选择器的 get-event-selectors 命令结果示例。默认情况下,当您使用创建跟踪时 AWS CLI,跟踪会记录所有管理事件。默认情况下,跟踪记录不记录数据事件。
{ "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName", "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ] }
要将跟踪配置为记录管理事件和数据事件,请运行 put-event-selectors
以下示例说明如何使用基本事件选择器配置跟踪,以包含两个 S3 存储桶前缀中 S3 对象的所有管理事件和数据事件。您可以为一个跟踪指定 1 至 5 个事件选择器。您可以为一个跟踪指定 1 至 250 个数据资源。
注意
如果您选择使用基本事件选择器限制数据事件,则最多只能有 250 个 S3 数据资源。
aws cloudtrail put-event-selectors --trail-nameTrailName--event-selectors '[{ "ReadWriteType": "All", "IncludeManagementEvents":true, "DataResources": [{ "Type": "AWS::S3::Object", "Values": ["arn:aws:s3:::amzn-s3-demo-bucket1/prefix", "arn:aws:s3:::amzn-s3-demo-bucket2;/prefix2"] }] }]'
该命令将返回为跟踪配置的事件选择器。
{ "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName", "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::amzn-s3-demo-bucket1/prefix", "arn:aws:s3:::amzn-s3-demo-bucket2/prefix2", ], "Type": "AWS::S3::Object" } ], "ReadWriteType": "All" } ] }
使用记录事件数据存储的数据事件 AWS CLI
您可以使用 AWS CLI配置事件数据存储以包含数据事件。使用 create-event-data-storeupdate-event-data-store
您可以配置高级事件选择器来记录事件数据存储上的数据事件。有关支持的字段的列表,请参阅使用高级事件选择器筛选数据事件。
要查看事件数据存储是否包含数据事件,请运行 get-event-data-store
aws cloudtrail get-event-data-store --event-data-storeEventDataStoreARN
该命令会返回事件数据存储的设置。
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLE492-301f-4053-ac5e-EXAMPLE6441aa", "Name": "ebs-data-events", "Status": "ENABLED", "AdvancedEventSelectors": [ { "Name": "Log all EBS direct APIs on EBS snapshots", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::EC2::Snapshot" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-04T15:57:33.701000+00:00", "UpdatedTimestamp": "2023-11-20T20:37:34.228000+00:00" }
包含特定存储桶的所有 Amazon S3 事件
以下示例说明如何创建事件数据存储以将所有 Amazon S3 对象的所有数据事件包含在特定的通用 S3 存储桶中,并排除由生成的事件和 AWS 服务 事件bucket-scanner-roleuserIdentity。S3 事件在 resources.type 字段中的值为 AWS::S3::Object。由于 S3 对象和 S3 存储桶的 ARN 值略有不同,因此必须为 resources.ARN 添加 StartsWith 运算符以捕获所有事件。
aws cloudtrail create-event-data-store --name "EventDataStoreName" --multi-region-enabled \ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:partition:s3:::amzn-s3-demo-bucket/"] }, { "Field": "userIdentity.arn", "NotStartsWith": ["arn:aws:sts::123456789012:assumed-role/bucket-scanner-role"]}, { "Field": "eventType","NotEquals": ["AwsServiceEvent"]} ] } ]'
该命令将返回以下示例输出。
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLE492-301f-4053-ac5e-EXAMPLE441aa", "Name": "EventDataStoreName", "Status": "ENABLED", "AdvancedEventSelectors": [ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.ARN", "StartsWith": [ "arn:partition:s3:::amzn-s3-demo-bucket/" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "userIdentity.arn", "NotStartsWith": [ "arn:aws:sts::123456789012:assumed-role/bucket-scanner-role" ] }, { "Field": "eventType", "NotEquals": [ "AwsServiceEvent" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2024-11-04T15:57:33.701000+00:00", "UpdatedTimestamp": "2024-11-20T20:49:21.766000+00:00" }
开启亚马逊 S3 AWS Outposts events
以下示例说明如何配置事件数据存储,以包含 Outpost 中所有 Amazon S3 on Outposts 对象的全部数据事件。
aws cloudtrail create-event-data-store --nameEventDataStoreName\ --advanced-event-selectors \ '[ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3Outposts::Object"] } ] } ]'
该命令将返回以下示例输出。
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLEb4a8-99b1-4ec2-9258-EXAMPLEc890", "Name": "EventDataStoreName", "Status": "CREATED", "AdvancedEventSelectors": [ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3Outposts::Object" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-02-20T21:00:17.673000+00:00", "UpdatedTimestamp": "2023-02-20T21:00:17.820000+00:00" }
记录的数据事件 AWS Config 合规
如果您使用 AWS Config 一致性包来帮助企业保持对正式标准的合规性,例如联邦风险与授权管理计划 (FedRAMP) 或美国国家标准与技术研究院 (NIST) 要求的标准,则合规框架的一致性包通常要求您至少记录 Amazon S3 存储桶的数据事件。合规性框架的一致性包中包括名为 cloudtrail-s3-dataevents-enabled 的托管规则,它检查您账户中的 S3 数据事件日志记录。许多未与合规性框架关联的一致性包也需要 S3 数据事件日志记录。下面是包含此规则的一致性包示例。
有关中提供的示例一致性包的完整列表 AWS Config,请参阅AWS Config 开发人员指南中的一致性包示例模板。
使用记录数据事件 AWS 软件开发工具包
运行该GetEventSelectors操作以查看您的跟踪是否正在记录数据事件。您可以通过运行PutEventSelectors操作将跟踪配置为记录数据事件。有关更多信息,请参阅 AWS CloudTrail API 参考。
运行该GetEventDataStore操作以查看您的事件数据存储是否在记录数据事件。您可以通过运行CreateEventDataStore或UpdateEventDataStore操作并指定高级事件选择器来配置事件数据存储以包含数据事件。有关更多信息,请参阅 使用创建、更新和管理事件数据存储 AWS CLI 和《AWS CloudTrail API Referencehttps://docs.aws.amazon.com/awscloudtrail/latest/APIReference/》。