本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
列出基于速率的规则实施速率限制的 IP 地址
本节介绍如何使用CLI、或任一访问当前受基于速率的规则限制的 IP 地址列表。API SDKs
如果您的基于速率的规则仅聚合 IP 地址或转发的 IP 地址,则可以检索该规则当前限制速率的 IP 地址列表。 AWS WAF 将这些 IP 地址存储在规则的托管密钥列表中。
注意
只有在仅聚合 IP 地址或仅聚合标头中的 IP 地址时,此选项才可用。如果您使用自定义键请求聚合,则即使您在自定义键中使用了其中一个 IP 地址规范,也无法检索速率受限的 IP 地址列表。
基于速率的规则将其规则操作应用于规则的托管键列表中与规则的范围缩小语句相匹配的请求。当规则没有范围缩小语句时,它会将操作应用于来自列表中 IP 地址的所有请求。规则操作是 Block 默认情况下,但它可以是任何有效的规则操作,除了 Allow。 IP 地址的最大数量 AWS WAF 使用单个基于速率的规则实例的速率限制为 10,000。如果超过 10,000 个地址超过速率限制, AWS WAF 限制那些利率最高的人。
您可以使用CLI、或任一访问基于速率的规则的托管密钥列表。API SDKs本主题介绍使用CLI和进行访问APIs。控制台目前不提供对列表的访问权限。
对于 AWS WAF API,命令是GetRateBasedStatementManagedKeys。
对于 AWS WAF CLI,命令是 get-rate-based-statement-managed-key s。
下面显示了检索 Ama CloudFront zon 分配网络ACL中使用的基于费率的规则的限速 IP 地址列表的语法。
aws wafv2 get-rate-based-statement-managed-keys --scope=CLOUDFRONT --region=us-east-1 --web-acl-name=
WebACLName
--web-acl-id=WebACLId
--rule-name=RuleName
下面显示了区域应用程序、Amazon API Gateway、Applicat REST API ion Load Balancer 和 AWS AppSync GraphQLAPI,一个亚马逊 Cognito 用户池, AWS App Runner 服务,或者 AWS 已验证访问实例。
aws wafv2 get-rate-based-statement-managed-keys --scope=REGIONAL --region=
region
--web-acl-name=WebACLName
--web-acl-id=WebACLId
--rule-name=RuleName
AWS WAF 监控 Web 请求并独立管理 Web ACL、可选规则组和基于速率的规则的每个唯一组合的密钥。例如,如果您在规则组中定义了基于速率的规则,然后在 Web ACL 中使用该规则组, AWS WAF 监控 Web 请求并管理该 Web 的密钥ACL、规则组参考语句和基于速率的规则实例。如果您在另一个 Web 中使用相同的规则组ACL, AWS WAF 监控 Web 请求并管理第二次使用的密钥,完全独立于您的第一次使用。
对于您在规则组中定义的基于速率的规则,除了网名和规则组内基于速率的规则的ACL名称外,还需要在请求中提供规则组参考语句的名称。下面显示了区域应用程序的语法,其中基于费率的规则是在规则组中定义的,而规则组则在 Web ACL 中使用。
aws wafv2 get-rate-based-statement-managed-keys --scope=REGIONAL --region=
region
--web-acl-name=WebACLName
--web-acl-id=WebACLId
--rule-group-rule-name=RuleGroupRuleName
--rule-name=RuleName