使用AWS WAF正则表达式规则筛选API请求,以忽略Captcha挑战。
在AWS WAF中设置一个正则表达式规则,该规则筛选出所有符合条件的请求并将其标记为“Allow”。对于这些请求,API Gateway将忽略Captcha挑战,并继续将请求转发到后端服务。以下是AWS WAF中正则表达式规则的代码示例:
{
"Type": "AWS::WAFv2::RegexPatternSet",
"Properties": {
"Name": "BypassCaptcha",
"Scope": "REGIONAL",
"RegularExpressions": [
{
"RegexString": ".+",
}
],
"Description": "Regex set for bypassing captcha"
}
}
{
"Type": "AWS::WAFv2::WebACL",
"Properties": {
"Name": "BypassCaptcha",
"Scope": "REGIONAL",
"DefaultAction": {
"Block": {}
},
"Description": "WebACL for bypassing captcha",
"Rules": [
{
"Name": "Allow",
"Priority": 0,
"Action": {
"Allow": {}
},
"Statement": {
"RegexPatternSetReferenceStatement": {
"ARN": "arn:aws:wafv2:us-west-2:123456789012:regional/regexpatternset/BypassCaptcha/abcdef12-34ab-5678-90de-1234567890ab"
}
}
}
]
}
}
在上面的示例中,我们创建一个WAF Regex Pattern集和一个WebACL,以忽略Captcha验证,并自动将所有请求标记为“Allow”。要使用此解决方案,您需要将WebACL附加到API Gateway的部署阶段。