使用 VPC 端点和 IAM 策略保护 DynamoDB 连接
Amazon DynamoDB 与本地应用程序之间,以及 DynamoDB 与同一 AWS 区域内的其他 AWS 资源之间的连接受到保护。
端点所需的策略
Amazon DynamoDB 提供了一个 DescribeEndpoints API,使您能够枚举区域端点信息。对于向公共 DynamoDB 端点发出的请求,无论配置的 DynamoDB IAM 策略如何,API 都会进行响应,即使 IAM 或 VPC 端点策略中设定了显式或隐式拒绝也是如此。这是因为 DynamoDB 有意跳过了 DescribeEndpoints
API 的授权。
对于来自 VPC 端点的请求,IAM 和虚拟私有云(VPC)端点策略都必须使用 IAM dynamodb:DescribeEndpoints
操作,向发出请求的 Identity and Access Management(IAM)主体授权以进行 DescribeEndpoints
API 调用。否则,将拒绝访问 DescribeEndpoints
API。
下面是端点策略的一个示例。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "(Include IAM Principals)", "Action": "dynamodb:DescribeEndpoints", "Resource": "*" } ] }
服务与本地客户端和应用之间的流量
私有网络和 AWS 之间有两种连接方式:
-
AWS Site-to-Site VPN 连接。有关更多信息,请参阅 AWS Site-to-Site VPN 用户指南的 什么是 AWS Site-to-Site VPN?。
-
AWS Direct Connect 连接。有关更多信息,请参阅 AWS Direct Connect 用户指南的 什么是 AWS Direct Connect?。
通过网络访问 DynamoDB 通过 AWS 发布的 API 进行。客户端必须支持传输层安全性(TLS)1.2。我们建议使用 TLS 1.3。客户端还必须支持具有完全向前保密 (PFS) 的密码套件,例如 Ephemeral Diffie-Hellman (DHE) 或 Elliptic Curve Diffie-Hellman Ephemeral (ECDHE)。大多数现代系统(如 Java 7 及更高版本)都支持这些模式。此外,必须使用与 IAM 主体关联的访问密钥 ID 和秘密访问密钥签名请求,或者可以使用 AWS Security Token Service(STS)生成临时安全证书来签名请求。
同一区域中 AWS 资源之间的流量
DynamoDB 的 Amazon Virtual Private Cloud (Amazon VPC) 端点是 VPC 内的逻辑实体,仅允许连接到 DynamoDB。Amazon VPC 将请求路由到 DynamoDB 并将响应路由回 VPC。有关更多信息,请参阅《Amazon VPC 用户指南》中的 VPC 端点。有关可以用于控制 VPC 端点访问的示例策略,请参阅使用 IAM 策略控制对 DynamoDB 的访问。
注意
不能通过 AWS Site-to-Site VPN 或 AWS Direct Connect 访问 Amazon VPC 端点。