Q60 — AWS SAP-C02 第2章

第 60/75 题 | ← 返回第2章

Q210. 一家公司正在 AWS Cloud 中运行一个应用程序。该应用程序由在多个可用区中 Application Load Balancer 后面的 Amazon EC2 实例队列上运行的微服务组成。该公司最近添加了一个在 Amazon API Gateway 中实现的新 REST API。一些在 EC2 实例上运行的旧微服务需要调用此新 API。该公司不希望 API 从公共互联网可访问,也不希望专有数据通过公共互联网传输。 解决方案架构师应怎样做来满足这些要求?

正确答案: B. 为 API Gateway 创建接口 VPC 端点,并设置端点策略仅允许访问特定 API。向 API Gateway 添加资源策略,仅允许从 VPC 端点访问。将 API Gateway 端点类型更改为私有

解析

选项 A 建议在 VPC 和 API Gateway 之间创建 AWS Site-to-Site VPN 连接并为每个微服务生成唯一的 API 密钥,但这种方法复杂且增加了不必要的开销。 选项 C 建议修改 API Gateway 使用 IAM 身份验证并将 API Gateway 移到新 VPC,但这需要额外管理 IAM 角色和策略,且不解决不使 API 通过公共互联网可访问的要求。 选项 D 建议创建 AWS Global Accelerator 加速器并为每个服务添加 API 密钥,但不提供确保 API 不从公共互联网可访问的解决方案。 因此,选项 B 提供了最合适的解决方案,通过为 API Gateway 创建接口 VPC 端点,允许 EC2 实例无需通过公共互联网或使用 NAT 网关即可访问 REST API。端点策略可以设置为仅允许访问特定 API,并可以向 API Gateway 添加资源策略仅允许从 VPC 端点访问。将 API Gateway 端点类型更改为私有确保不从公共互联网可访问。