CloudFront – 限制访问 ALB

对于 Web 应用程序或由 Elastic Load Balancing 中的 ApplicationLoad Balancer 提供的其他内容,CloudFront 可以缓存对象并将它们直接提供给用户(查看者),从而减少 Application Load Balancer的负载。但是,如果用户可以绕过 CloudFront 并直接访问 Application Load Balancer,则无法获得这些益处。

但是,您可以配置 AmazonCloudFront 和 Application Load Balancer,以防止用户直接访问 Application Load Balancer。这使得用户只能通过 CloudFront 访问 Application Load Balancer,从而确保您获得使用 CloudFront 的益处。

1. 自定义 HTTP 标头

CloudFront – 限制访问 Application Load Balancer

要防止用户直接访问 Application Load Balancer 并仅允许通过 CloudFront 进行访问,请完成以下步骤:

  1. 配置CloudFront的自定义 HTTP 标头。

  2. 配置ApplicationLoad Balancer为仅转发包含此自定义 HTTP 标头的请求。

完成这些步骤后,用户只能通过 CloudFront 访问您的 ApplicationLoad Balancer。

2. 使用 CloudFront 托管前缀列表

AWS 托管前缀列表

可用的 AWS 托管前缀列表

以下服务提供 AWS 托管前缀列表。

AWS 服务 前缀列表名称 Weight
Amazon CloudFront com.amazonaws.global.cloudfront.origin-facing 55
Amazon DynamoDB com.amazonaws.region.dynamodb 1
AWS Ground Station com.amazonaws.global.groundstation 5
Amazon S3 com.amazonaws.region.s3 1

使用 AWS CLI 查看 AWS 托管前缀列表

使用 describe-managed-prefix-lists 命令,如下所示。

aws ec2 describe-managed-prefix-lists --filters Name=owner-id,Values=AWS
Last modified: April 22, 2025

Author

Comments

Write a Reply or Comment

Your email address will not be published.