我已经创建了 ACL。并且它也已启用。我想与云端分发版关联。
有两个问题 1. 无论是在创建新的 cloudfront 还是之前的 cloudfront 时,我都没有在分发设置下拉列表中看到我的 ACL。它仍然None
在下拉列表中。
- 在 WAF > Web ACL > [我创建的确认] > 规则 > AWS 资源中使用此 Web ACL 单击添加关联时,它不会显示我已经可用的云端。相反,它禁用了资源下拉列表。并显示
No resources found
(资源类型是固定的,不可编辑Application load balancer
)
怎么了?
我的目标是,只有当请求未被 WAF 的 ACL 捕获时,请求才会通过云端。我可以看到一个简单的教程吗?
答案1
在 WAF 中创建 Web ACL 需要您在流程开始时选择 ACL 的类型(CloudFront 或应用程序负载均衡器),但此选择隐藏在标有Region
,默认为美国东部(弗吉尼亚北部)(又名 us-east-1)此选项隐式选择 ALB WAF。
这是不幸的 UI 设计,因为默认提供的选项似乎也是正确的选择。
为什么 us-east-1 是直观的选择?因为 CloudFront 是一项全球性(而非区域性)服务,其主区域是 us-east-1。(这就是为什么us-east-1 是 Amazon 证书管理器中选择的正确区域当您想要将 ACM 证书与 CloudFront 一起使用时。
但 WAF 的做法略有不同。他们(我怀疑)试图让事情变得更容易,但实际上却让事情变得不那么简单了。您需要返回并创建一个新的 Web ACL,选择Global (CloudFront)
区域。