准备为您的组织创建跟踪 - AWS CloudTrail

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

准备为您的组织创建跟踪

在为贵组织创建跟踪之前,请确保正确设置贵组织的管理账户或委托管理员账户,以便创建跟踪。

  • 您的组织必须先启用所有功能,然后才能为其创建跟踪。有关更多信息,请参阅启用组织中的所有功能

  • 管理账户必须有 AWSServiceRoleForOrganizations 角色。此角色由 Organizations 在您创建组织时自动创建,并且是记录组织事件所必需的。 CloudTrail 有关更多信息,请参阅 Organizations 和服务相关角色

  • 在管理账户或委托管理员账户中创建组织跟踪的用户或角色必须拥有足够的权限才能创建组织跟踪。你必须至少应用以下任一项 AWSCloudTrail_FullAccess针对该角色或用户的策略或等效策略。您还必须在IAM和 Organizations 中拥有足够的权限才能创建服务相关角色并启用可信访问权限。如果您选择使用 CloudTrail 控制台为组织跟踪创建新的 S3 存储桶, 您的保单还需要包括 s3:PutEncryptionConfiguration 操作,因为默认情况下,存储桶已启用服务器端加密。以下示例策略显示了所需的最低权限。

    注意

    你不应该分享 AWSCloudTrail_FullAccess政策广泛适用于您的各方 AWS 账户。相反,您应将其限制在 AWS 账户 管理员范围内,因为所收集的信息具有高度敏感性 CloudTrail。拥有此角色的用户能够关闭或重新配置他们的 AWS 账户中最敏感且最重要的审计功能。因此,您必须密切控制和监控对此策略的访问。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetRole", "organizations:EnableAWSServiceAccess", "organizations:ListAccounts", "iam:CreateServiceLinkedRole", "organizations:DisableAWSServiceAccess", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization", "s3:PutEncryptionConfiguration" ], "Resource": "*" } ] }
  • 要使用 AWS CLI 或创建组织跟踪,您必须在 Organizations CloudTrail 中为启用可信访问,并且必须使用允许记录组织跟踪的策略手动创建 Amazon S3 存储桶。 CloudTrail APIs有关更多信息,请参阅 使用以下方法为组织创建跟踪 AWS CLI

  • 要使用现有IAM角色向 Amazon L CloudWatch ogs 添加对组织跟踪的监控,您必须手动修改该IAM角色以允许将成员账户的 CloudWatch 日志传送到管理账户的日志组,如以下示例所示。 CloudWatch

    注意

    您必须使用自己账户中存在的IAM角色和 CloudWatch 日志日志组。您不能使用其他账户拥有的IAM角色或 CloudWatch 日志组。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailCreateLogStream20141101", "Effect": "Allow", "Action": [ "logs:CreateLogStream" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] }, { "Sid": "AWSCloudTrailPutLogEvents20141101", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] } ] }

    您可以在 Amazon CloudWatch 登录 CloudTrail 中了解更多相关信息使用 Amazon CloudTrail 日志监控 CloudWatch 日志文件。此外,在决定为组织跟踪启用体验之前,请考虑 CloudWatch 日志的限制和服务的定价注意事项。有关更多信息,请参阅CloudWatch 日志限制Amazon CloudWatch 定价

  • 要在组织跟踪中记录成员账户中特定资源的数据事件,请准备好每种资源的 Amazon 资源名称列表 (ARNs)。创建跟踪时,成员账户资源不会显示在 CloudTrail 控制台中;您可以浏览管理账户中支持数据事件收集的资源,例如 S3 存储桶。同样,如果要在命令行创建或更新组织跟踪时添加特定的成员资源,则这些资源需要使用。ARNs

    注意

    记录数据事件将收取额外费用。有关 CloudTrail 定价,请参阅AWS CloudTrail 定价

在创建组织跟踪之前,您还应该考虑查看管理账户和成员账户中已经存在多少条跟踪。 CloudTrail 限制每个区域中可以创建的跟踪数量。您在管理账户中创建组织跟踪的区域中不能超出此限制。但是,即使成员账户已达到区域中的跟踪限制,也会在成员账户中创建跟踪。虽然任何区域中的管理事件的第一个跟踪都是免费的,但其他跟踪需要付费。要降低组织跟踪记录的潜在成本,请考虑删除管理账户和成员账户中任何不需要的跟踪记录。有关 CloudTrail 定价的更多信息,请参阅AWS CloudTrail 定价

企业跟踪记录安全最佳实践

作为安全最佳实践,我们建议您在组织跟踪中使用的资源策略(例如 S3 存储桶、KMS密钥或SNS主题的策略)中添加aws:SourceArn条件密钥。的值aws:SourceArn是组织跟踪ARN(或者ARNs,如果您为多个跟踪使用相同的资源,例如使用相同的 S3 存储桶来存储多个跟踪的日志)。这可确保资源(例如 S3 存储桶)只接受与特定跟踪记录关联的数据。跟踪ARN必须使用管理账户的账户 ID。以下策略代码段显示有多个跟踪记录正在使用该资源的示例。

"Condition": { "StringEquals": { "aws:SourceArn": ["Trail_ARN_1",..., "Trail_ARN_n"] } }

有关如何向资源策略添加条件密钥的信息,请参阅以下内容: