S3 作为一个 CloudFront 源,API 网关作为另一个,如何确保 API 网关只能通过服务于 S3 静态网站的 CloudFront 访问

问题描述 投票:0回答:1

考虑一种架构,其中 S3 存储桶充当 CloudFront 分配的一个源,API 网关充当同一 CloudFront 分配的另一个源。如何配置此设置以禁用对 API 网关源的直接调用?我想确保 API 网关只能通过 CloudFront 发行版访问,该发行版还在 S3 存储桶上托管静态网站。

amazon-web-services architecture cloud
1个回答
0
投票

您可以通过向 Cloudfront 上的源请求注入自定义 HTTP 标头,然后通过在 API Gateway 上配置相应的 API 密钥来检查该标头来实现此目的。 这个 AWS 博客 解释了如何操作。

注意:该博客还介绍了 WAF 与 Cloudfront 和 API Gateway 的集成。如果您使用 HTTP API 网关(而不是 REST API 网关),您将无法将 WAF 与 API 网关集成。当然,您始终可以将 WAF 与 Cloudfront 结合使用。

如果您不关心 WAF 集成,这里还有另一个很棒的博客:在 CloudFront 中使用自定义标头保护 API。

© www.soinside.com 2019 - 2024. All rights reserved.