

**引入全新的主机体验 AWS WAF**

现在，您可以使用更新的体验访问控制台中任意位置的 AWS WAF 功能。有关更多详细信息，请参阅[使用控制台](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# ATP 示例：针对缺失和被盗凭证的自定义处理
<a name="waf-atp-control-example-user-agent-exception"></a>

默认情况下，规则组 `AWSManagedRulesATPRuleSet` 执行的凭证检查按如下方式处理 Web 请求：
+ **缺少凭证** – 标记和阻止请求。
+ **凭证泄露** – 为请求添加标签，但不要将其阻止或计数。

有关规则组和规则行为的详细信息，请参阅 [AWS WAF 防欺诈控制账户盗用 (ATP) 规则组](aws-managed-rule-groups-atp.md)。

您可以通过执行以下操作为凭证缺失或泄露的 Web 请求添加自定义处理：
+ **将 `MissingCredential` 规则覆盖为 Count** – 此规则操作覆盖会使规则仅对匹配的请求进行计数和标记。
+ **添加带有自定义处理的标签匹配规则** – 配置此规则以匹配两个 ATP 标签并执行您的自定义处理。例如，您可以将客户重定向到您的注册页面。

以下规则显示了前一个示例中的 ATP 托管规则组，其中的 `MissingCredential` 规则操作被覆盖为计数。这会导致规则将其标签应用于匹配的请求，然后只计算请求数，而不是阻止请求。

```
"Rules": [
    {
        "Priority": 1,
        "OverrideAction": {
            "None": {}
        },
        "VisibilityConfig": {
            "SampledRequestsEnabled": true,
            "CloudWatchMetricsEnabled": true,
            "MetricName": "AccountTakeOverValidationRule"
        },
        "Name": "DetectCompromisedUserCredentials",
        "Statement": {
            "ManagedRuleGroupStatement": {
                "ManagedRuleGroupConfigs": [
                  {
                    "AWSManagedRulesATPRuleSet": {
                      "LoginPath": "/web/login",
                      "RequestInspection": {
                        "PayloadType": "JSON",
                        "UsernameField": {
                          "Identifier": "/form/username"
                        },
                        "PasswordField": {
                          "Identifier": "/form/password"
                        }
                      },
                      "EnableRegexInPath": false
                    }
                  }
                ]
                "VendorName": "AWS",
                "Name": "AWSManagedRulesATPRuleSet",
                "RuleActionOverrides": [
                  {
                    "ActionToUse": {
                      "Count": {}
                    },
                    "Name": "MissingCredential"
                  }
                ],
                "ExcludedRules": []
            }
        }
    }
],
```

使用此配置，当此规则组评估任何缺少凭证或已泄露的 Web 请求时，它将标记该请求，但不会阻止该请求。

以下规则的优先级设置在数字上高于前面的规则组。 AWS WAF 按数字顺序评估规则，从最低开始，因此将在规则组评估之后评估此规则。该规则配置为匹配任一凭证标签，并为匹配的请求发送自定义响应。

```
"Name": "redirectToSignup",
      "Priority": 10,
      "Statement": {
        "OrStatement": {
          "Statements": [
            {
              "LabelMatchStatement": {
                "Scope": "LABEL",
                "Key": "awswaf:managed:aws:atp:signal:missing_credential"
              }
            },
            {
              "LabelMatchStatement": {
                "Scope": "LABEL",
                "Key": "awswaf:managed:aws:atp:signal:credential_compromised"
              }
            }
          ]
        }
      },
      "Action": {
        "Block": {
          "CustomResponse": {
             {{your custom response settings}} 
          }
        }
      },
      "VisibilityConfig": {
        "SampledRequestsEnabled": true,
        "CloudWatchMetricsEnabled": true,
        "MetricName": "redirectToSignup"
      }
```