使用 VPC 终端节点控制对服务的访问权限 - Amazon Virtual Private Cloud

使用 VPC 终端节点控制对服务的访问权限

在创建接口或网关终端节点时,您可为其附加终端节点策略来控制对连接到的服务的访问。终端节点策略必须采用 JSON 格式编写。并非所有服务都支持终端节点策略。

如果您使用针对 Amazon S3 的终端节点,则还可以使用 Amazon S3 存储桶策略来控制从特定终端节点或特定 VPC 对存储桶进行的访问。有关更多信息,请参阅 Amazon S3 存储桶策略

使用 VPC 终端节点策略

VPC 终端节点策略是一种 IAM 资源策略,您在创建或修改终端节点时可将它附加到终端节点。如果您在创建终端节点时不连接策略,我们将为您连接一个默认策略来允许对服务进行完全访问。如果服务不支持终端节点策略,则终端节点允许对服务进行完全访问。终端节点策略不会覆盖或取代 IAM 用户策略或服务特定策略(如 S3 存储桶策略)。它是一个单独策略,用于控制从终端节点对指定服务进行的访问。

您不能将多个策略附加到一个终端节点。但是,您可以随时修改策略。如果您修改策略,则所做的更改可能需要几分钟才能生效。有关编写策略的更多信息,请参阅 IAM 用户指南 中的 IAM 策略概述

您的终端节点策略可与任何 IAM 策略类似;但请注意以下几点:

有关支持终端节点策略的服务的信息,请参阅 与 AWS PrivateLink 集成的 AWS 服务

网关终端节点的终端节点策略

对于应用于网关终端节点的终端节点策略,如果您以格式 Principal"AWS":"account-ID" 指定 "AWS":"arn:aws:iam::account-ID:root",则只会向账户根用户授予访问权限,而不是该账户的所有 IAM 用户和角色。

如果您为 Principal 元素指定 Amazon Resource Name (ARN),则保存策略时 ARN 将转换为唯一的委托人 ID。

有关 Amazon S3 和 DynamoDB 的终端节点策略示例,请参阅以下主题:

安全组

创建接口终端节点时,您可以将安全组与在您的 VPC 中创建的终端节点网络接口关联。如果您未指定安全组,则您的 VPC 的默认安全组将自动与终端节点网络接口关联。您必须确保安全组的规则允许终端节点网络接口与您的 VPC 中与服务通信的资源进行通信。

对于网关终端节点,如果您的安全组的出站规则受到限制,则必须添加一条规则来允许从 VPC 到终端节点中指定的服务的出站流量。为此,您可以在出站规则中使用该服务的 AWS 前缀列表 ID 作为目的地。有关更多信息,请参阅 修改安全组

安全组不适用于网关负载均衡器终端节点。