AWS CloudTrail
用户指南 (版本 1.0)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

创建角色

当您将日志文件从多个账户聚合到单个 Amazon S3 存储桶中时,仅对存储桶有完全控制权的账户(我们的示例中为账户 A)对存储桶中的所有日志文件有完全读访问权。我们示例中的账户 B、账户 C 和账户 Z 在被授予权限前没有任何权限。因此,要将您的 AWS CloudTrail 日志文件从一个账户共享到另一个账户(也就是说,要完成本部分前面描述的方案 1 或方案 2),您必须启用跨账户访问。您可以通过创建 IAM 角色及其关联的访问策略来做到这一点。

角色

为要向其授予访问权的每个账户创建一个 IAM 角色。在我们的示例中,您将具有三个角色,账户 B、账户 C 和账户 Z 分别对应一个角色。每个 IAM 角色定义使该账户能够访问账户 A 拥有的资源(日志文件)的访问或权限策略。这些权限仅在代入角色时附加到每个角色并与每个账户(B、C 或 Z)关联。有关 IAM 角色的权限管理的详细信息,请参阅 IAM 用户指南 中的 IAM 角色。有关如何代入角色的更多信息,请参阅代入一个角色

策略

您创建的每个 IAM 角色具有两个策略。信任策略指定可信实体委托人。在我们的示例中,账户 B、账户 C 和账户 Z 为可信实体,并且这些账户中的具有适当权限的 IAM 用户可代入角色。

使用控制台创建角色时将自动创建信任策略。如果您使用 SDK 创建角色,则必须将信任策略作为参数提供给 CreateRole API。如果您使用 CLI 创建角色,则必须在 create-role CLI 命令中指定信任策略。

您必须作为账户 A 的所有者创建的角色访问(或权限)策略将定义委托人或可信实体能够访问的操作和资源(此示例中为 CloudTrail 日志文件)。在方案 1 中,将向生成了日志文件的账户授予对日志文件的访问权,如创建用于向您自己的账户授予访问权的访问策略中所讨论。在方案 2 中,将向第三方授予对所有日志文件的读访问权,如创建用于向第三方授予访问权的访问策略 中所讨论。

有关创建和使用 IAM 策略的更多详细信息,请参阅 IAM 用户指南 中的访问管理

创建角色

使用控制台创建角色

  1. 以账户 A 的管理员身份登录 AWS 管理控制台。

  2. 导航到 IAM 控制台。

  3. 在导航窗格中,选择 Roles

  4. 选择 Create New Role

  5. 键入新角色的名称,然后选择 Next Step

  6. 选择 Role for Cross-Account Access

  7. 在方案 1 中,执行以下操作以在您拥有的账户之间提供访问权:

    1. 选择 Provide access between AWS accounts you own

    2. 输入要授予访问权的账户(B、C 或 Z)的 12 位数账户 ID。

    3. 如果您希望用户在代入角色之前提供多重验证,请选中 Require MFA 框。

    在方案 2 中,执行以下操作以向第三方账户提供访问权。在我们的示例中,您将对账户 Z(第三方日志分析器)执行这些步骤:

    1. 选择 Allows IAM users from a 3rd party AWS account to access this account

    2. 输入要授予访问权的账户(账户 Z)的 12 位数账户 ID。

    3. 输入外部 ID 以便额外控制可代入角色的用户。有关更多信息,请参阅 IAM 用户指南 中的如何在向第三方授予对 AWS 资源的访问权时使用外部 ID

  8. 选择 Next Step 以附加为此角色设置权限的策略。

  9. Attach Policy 下,选择 AmazonS3ReadOnlyAccess 策略。

    注意

    默认情况下,AmazonS3ReadOnlyAccess 策略向您的账户中的所有 Amazon S3 存储桶授予检索和列出权限。

  10. 选择 Next Step

  11. 审核角色信息。

    注意

    如果需要,您可在此时编辑角色名称,但如果您执行此操作,则将转至 Step 2: Select Role Type 页面,您必须在此页面上重新输入角色的信息。

  12. 选择 Create Role。角色创建过程完成后,您创建的角色将显示在角色列表中。

本页内容: