排查组织跟踪问题
本节提供有关如何排查组织跟踪问题的信息。
CloudTrail 未传输事件
如果 CloudTrail 未将 CloudTrail 日志文件传输到 Amazon S3 存储桶
检查 S3 存储桶是否有问题。
-
在 CloudTrail 控制台中,查看跟踪的详细信息页面。如果 S3 存储桶出现问题,详细信息页面将包含一条警告,提示传输到 S3 存储桶失败。
-
从 Amazon CLI 运行 get-trail-status 命令。如果发生失败,命令输出将包含
LatestDeliveryError字段,该字段显示 CloudTrail 在尝试将日志文件传输到指定存储桶时遇到的任何 Amazon S3 错误。仅当目标 S3 存储桶出现问题时才会发生此错误,而请求超时则不会发生此错误。要解决该问题,请修复存储桶策略,以便 CloudTrail 可以写入存储桶;或者创建一个新的存储桶,然后调用update-trail以指定新的存储桶。有关组织存储桶策略的信息,请参阅 Create or update an Amazon S3 bucket to use to store the log files for an organization trail。
注意
如果您错误配置了跟踪(例如,无法访问 S3 存储桶),CloudTrail 将尝试将日志文件重新传输到您的 S3 存储桶,持续 30 天,而这些尝试传输的事件将按标准的 CloudTrail 费用收取。为避免配置错误的跟踪产生费用,您需要删除跟踪。
如果 CloudTrail 未将日志传输到 CloudWatch Logs
检查 CloudWatch Logs 角色策略的配置是否有问题。
-
在 CloudTrail 控制台中,查看跟踪的详细信息页面。如果 CloudWatch Logs 出现问题,详细信息页面将包含一条警告,表明 CloudWatch Logs 传输失败。
-
从 Amazon CLI 运行 get-trail-status 命令。如果发生失败,命令输出将包含
LatestCloudWatchLogsDeliveryError字段,该字段显示 CloudTrail 在尝试将日志传输到 CloudWatch Logs 时遇到的任何 CloudWatch Logs 错误。要解决该问题,请修复 CloudWatch Logs 角色策略。有关 CloudWatch Logs 角色策略的信息,请参阅 与 CloudTrail 使用 CloudWatch Logs 进行监控对应的角色策略文档。
如果您在组织跟踪中没有看到成员账户的活动
如果在组织跟踪中没有看到成员账户的活动,请检查以下内容:
-
检查主区域的跟踪,看看它是否是选择加入区域
尽管您的 Amazon Web Services 账户 默认启用了大多数 Amazon Web Services 区域,但您必须手动启用某些区域(也称为选择加入区域)。有关默认启用哪些区域的信息,请参阅《Amazon 账户管理 参考指南》中的 Considerations before enabling and disabling Regions。有关 CloudTrail 支持的区域列表,请参阅 CloudTrail 支持的区域。
如果组织跟踪是多区域,而主区域是选择加入区域,则成员账户将不会向组织跟踪发送活动,除非它们选择加入创建多区域跟踪的 Amazon Web Services 区域。例如,如果您创建了多区域跟踪,并选择欧洲(西班牙)区域作为跟踪的主区域,则只有为其账户启用了欧洲(西班牙)区域的成员账户才会将其账户活动发送到组织跟踪。要解决该问题,请在组织中的每个成员账户中启用选择加入区域。有关启用选择加入区域的信息,请参阅《Amazon 账户管理 参考指南》中的 Enable or disable a Region in your organization。
-
检查组织基于资源的策略是否与 CloudTrail 服务相关角色策略冲突
CloudTrail 使用名为 AWSServiceRoleForCloudTrail 的服务相关角色来支持组织跟踪。此服务相关角色允许 CloudTrail 对组织资源执行操作(例如
organizations:DescribeOrganization)。如果组织的基于资源的策略拒绝服务相关角色策略中允许的操作,则 CloudTrail 将无法执行该操作,即使服务相关角色策略中允许该操作。要解决该问题,请修复组织的基于资源的策略,以使其不会拒绝服务相关角色策略中允许的操作。
CloudTrail 未向组织中的成员账户发送 Amazon SNS 通知
当具有 Amazon Organizations 组织跟踪的成员账户未发送 Amazon SNS 通知时,SNS 主题策略的配置可能存在问题。即使资源验证失败,CloudTrail 也会在成员账户中创建组织跟踪,例如,组织跟踪的 SNS 主题不包含所有成员账户 ID。如果 SNS 主题策略不正确,则会导致授权失败。
要检查跟踪的 SNS 主题策略是否存在授权失败,请执行以下操作:
-
在 CloudTrail 控制台中,查看跟踪的详细信息页面。如果授权失败,则详细信息页面会包含一条警告
SNS authorization failed,并指示修复 SNS 主题策略。 -
从 Amazon CLI 运行 get-trail-status 命令。如果授权失败,则命令输出将包括值为
AuthorizationError的LastNotificationError字段。要解决该问题,请修复 Amazon SNS 主题策略。有关 Amazon SNS 主题策略的信息,请参阅 针对 CloudTrail 的 Amazon SNS 主题策略。
有关 SNS 主题以及如何订阅的更多信息,请参阅《Amazon Simple Notification Service 开发人员指南》中的 Getting started with Amazon SNS。