配置共享 VPKeyspaces 跨账户访问权限 - Amazon Keyspaces (for Apache Cassandra)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

配置共享 VPKeyspaces 跨账户访问权限

您可以创建不同的资源Amazon Web Services 账户来将资源与应用程序分开。例如,您可以为 Amazon Keyspaces 表创建一个账户,为开发环境中的应用程序创建另一个账户,为生产环境中的应用程序创建另一个账户。本主题引导您完成在共享 VPC 中使用接口 VPC 终端节点为 Amazon Keyspaces 设置跨账户访问所需的配置步骤。

有关如何为 Amazon Keyspaces 配置 VPC 终端节点的详细步骤,请参阅步骤 3:为亚马逊密钥空间 VPC 终端节点

在此示例中,我们在共享 VPC 中使用以下三个账户:

  • Account A— 此账户包含基础设施,包括 VPC 终端节点、VPC 子网和 Amazon Keyspaces 表。

  • Account B— 此账户包含开发环境中的应用程序,该应用程序需要连接到中的 Amazon Keyspaces 表Account A

  • Account C— 此账户包含生产环境中的应用程序,该应用程序需要连接到中的 Amazon Keyspaces 表Account A


                该图显示了同一组织中使用共享 VPC 的三个不同账户。Amazon Web Services 区域

Account A是包含Account C需要访问的资源Account B的账户,信任账户Account A也是如此。 Account B并且Account C是需要访问其中的资源的委托人的账户Account A,也是 anAccount B dAccount C 是可信账户。信任账户通过共享 IAM 角色向可信账户授予权限。中所需的配置步骤概括介绍如下Account A

的配置Account A
  1. 用于为子网创建资源共享并与Account B和共享私有子网Account C。Amazon Resource Access Manager

    Account B并且现在Account C可以在与他们共享、共享、共享、共享。

  2. 创建由Amazon PrivateLink提供支持的 Amazon Keyspaces 私有 VPC 终端节 这会在共享子网中创建多个终端节点,并为 Amazon Keyspaces 服务终端节点创建多个终端节点。

  3. 创建亚马逊Keyspaces 密钥空间和表。

  4. 创建一个 IAM 角色,该角色具有对 Amazon Keyspaces 表的完全访问权限,对 Amazon Keyspaces 系统表具有读取权限,并且能够描述 Amazon EC2 VPC 资源,如以下策略示例所示。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "CrossAccountAccess", "Effect": "Allow", "Action": [ "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcEndpoints", "cassandra:*" ], "Resource": "*" } ] }
  5. 配置Account BAccount C可以假设为可信账户的 IAM 角色信任策略,如以下示例所示。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111111111111:root" }, "Action": "sts:AssumeRole", "Condition": {} } ] }

    有关跨账户 IAM 策略的更多信息,请参阅《IAM 用户指南》中的跨账户策略

Account B和中的配置Account C
  1. Account B和中Account C,创建新角色并附加以下策略,允许委托人代入在中创建的共享角色Account A

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    允许委托人担任共享角色是使用Amazon Security Token Service (Amazon STS) 的AssumeRole API 实现的。有关更多信息,请参阅《IAM 用户指南》中的为您拥有Amazon Web Services 账户的另一个IAM 用户提供访问权限

  2. Account B和中Account C,您可以创建使用 SIGV4 身份验证插件的应用程序,该插件允许应用程序代入共享角色,Account A通过共享 VPC 中的 VPC 终端节点连接到位于的 Amazon Keyspaces 表。有关 SIGV4 身份验证插件的更多信息,请参阅创建以编程方式访问亚马逊Keyspaces 的证书