与 Amazon Organizations 共享安全组 - Amazon Virtual Private Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

与 Amazon Organizations 共享安全组

共享安全组功能使您能够与同一 Amazon 区域中的其他 Amazon Organizations 账户共享安全组,并使安全组可供这些账户使用。

下图演示如何使用共享安全组功能来简化 Amazon Organizations 中的跨账户安全组管理:

与共享 VPC 子网中的其他账户共享安全组的示意图。

此示意图显示属于同一组织的三个账户。账户 A 与账户 B 和账户 C 共享一个 VPC 子网。账户 A 使用共享安全组功能与账户 B 和账户 C 共享该安全组。然后,账户 B 和账户 C 在共享子网中启动实例时使用该安全组。这使账户 A 也能够管理该安全组;对安全组进行的任何更新都会应用于账户 B 和账户 C 在共享 VPC 子网中运行的资源。

共享安全组功能的要求
  • 此功能仅适用于 Amazon Organizations 中同一组织的账户。必须在 Amazon Organizations 中启用资源共享

  • 共享安全组的账户必须同时拥有 VPC 和安全组。

  • 您不能共享默认安全组。

  • 您无法共享位于默认 VPC 中的安全组。

  • 参与者账户可以在共享 VPC 中创建安全组,但无法共享这些安全组。

  • IAM 主体需要一组最低权限才能与 Amazon RAM 共享一个安全组。使用 AmazonEC2FullAccessAWSResourceAccessManagerFullAccess 托管 IAM 策略,确保 IAM 主体拥有共享和使用所共享安全组所需的权限。如果使用自定义 IAM 策略,则需要进行 c2:PutResourcePolicyec2:DeleteResourcePolicy 操作。这些是仅限权限的 IAM 操作。如果 IAM 主体未获得这些权限,则在尝试使用 Amazon RAM 共享安全组时将出错。

支持此功能的服务

  • Amazon API Gateway

  • Amazon EC2

  • Amazon ECS

  • Amazon EFS

  • Amazon EKS

  • Amazon EMR

  • Amazon FSx

  • Amazon ElastiCache

  • Amazon Elastic Beanstalk

  • Amazon Glue

  • Amazon MQ

  • Amazon SageMaker AI

  • Elastic Load Balancing

    • 应用程序负载均衡器

    • 网络负载均衡器

此功能如何影响现有的配额

安全组配额适用。但是,对于“每个网络接口的安全组数”配额,如果参与者在弹性网络接口(ENI)上同时使用自有和共享的组,则所有者和参与者的最低配额适用。

演示此功能如何影响配额的示例:

  • 所有者账户配额:每个接口 4 个安全组

  • 参与者账户配额:每个接口 5 个安全组。

  • 所有者与参与者共享的组 SG-O1、SG-O2、SG-O3、SG-O4、SG-O5。参与者在 VPC 中已经有自己的组:SG-P1、SG-P2、SG-P3、SG-P4、SG-P5。

  • 如果参与者创建 ENI 并且仅使用自己的组,则他们可以关联所有 5 个安全组(SG-P1、SG-P2、SG-P3、SG-P4、SG-P5),因为这是他们的配额。

  • 如果参与者创建 ENI 并在其上使用任何共享的组,则他们最多只能关联 4 个组。在这种情况下,此类 ENI 的配额是所有者和参与者的最低配额。可能的有效配置将如下所示:

    • SG-O1、SG-P1、SG-P2、SG-P3

    • SG-O1、SG-O2、SG-O3、SG-O4

共享安全组

本节介绍如何使用 Amazon Web Services Management Console和 Amazon CLI 与组织中的其他账户共享安全组。

Amazon Management Console
要共享安全组
  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在左侧导航窗格中,选择安全组

  3. 选择安全组以查看详细信息。

  4. 选择 Sharing (共享) 选项卡。

  5. 选择共享安全组

  6. 选择创建资源共享。这样,Amazon RAM 控制台就会打开,您将在其中为安全组创建资源共享。

  7. 输入资源共享的名称

  8. 资源 – 可选下,选择安全组

  9. 选择安全组。该安全组不能是默认安全组,也不能与默认 VPC 关联。

  10. 选择下一步

  11. 查看允许主体执行的操作,然后选择下一步

  12. 主体 – 可选下,选择仅允许在企业内共享

  13. 主体下,选择以下主体类型之一,然后输入相应的数字:

    • Amazon 账户:您的组织中账户的账号。

    • 组织:Amazon Organizations ID。

    • 组织单位(OU):组织中 OU 的 ID。

    • IAM 角色:IAM 角色的 ARN。创建该角色的账户必须与创建此资源共享的账户属于同一组织。

    • IAM 用户:IAM 用户的 ARN。创建该用户的账户必须与创建此资源共享的账户属于同一组织。

    • 服务主体:您不能与服务主体共享安全组。

  14. 选择 添加

  15. 选择下一步

  16. 选择创建资源共享

  17. 共享资源下,等待看到状态Associated。如果安全组关联失败,则可能是由于上面列出的限制之一所致。查看安全组的详细信息以及详细信息页面上的共享选项卡,以查看与安全组不可共享的原因相关的所有消息。

  18. 返回 VPC 控制台安全组列表。

  19. 选择您共享的安全组。

  20. 选择 Sharing (共享) 选项卡。您的 Amazon RAM 资源应该在其中显示。如果未显示,则资源共享创建可能失败,您可能需要重新创建。

Command line
要共享安全组
  1. 您必须先为想要与 Amazon RAM 共享的安全组创建资源共享。有关如何使用 Amazon CLI 创建与 Amazon RAM 的资源共享的步骤,请参阅《Amazon RAM User Guide》中的 Creating a resource share in Amazon RAM

  2. 要查看创建的资源共享关联,请使用 get-resource-share-associations

安全组现已共享。您可以在同一 VPC 内的共享子网中启动 EC2 实例时选择安全组。

停止共享安全组

本节介绍如何使用 Amazon Web Services Management Console和 Amazon CLI 停止与组织中的其他账户共享安全组。

Amazon Management Console
要停止共享安全组
  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在左侧导航窗格中,选择安全组

  3. 选择安全组以查看详细信息。

  4. 选择 Sharing (共享) 选项卡。

  5. 选择安全组资源共享,然后选择停止共享

  6. 选择是的,停止共享

Command line

要停止共享安全组

使用 delete-resource-share 删除资源共享。

该安全组不再共享。在所有者停止共享安全组后,以下规则适用:

  • 现有的参与者弹性网络接口(ENI)将继续获取对已取消共享的安全组进行的任何安全组规则更新。取消共享只会阻止参与者与已取消共享组创建新关联。

  • 参与者无法再将已取消共享的安全组与其拥有的任何 ENI 关联。

  • 参与者可以描述和删除仍与已取消共享安全组关联的 ENI。

  • 如果参与者仍具有与已取消共享的安全组关联的 ENI,则所有者无法删除已取消共享的安全组。仅当参与者从其所有 ENI 取消关联(删除)安全组后,所有者才能删除该安全组。

  • 参与者不能使用与非共享安全组关联的 ENI 启动新的 EC2 实例。