

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

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

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

# 保护包（web ACL）流量的日志字段
<a name="logging-fields"></a>

以下列表介绍了可能的日志字段。

**action**  
 AWS WAF 应用于请求的终止操作。这表示允许、阻止、验证码或质询。当 web 请求不包含有效令牌时，CAPTCHA 和 Challenge 操作将终止。

**args**  
查询字符串。

**captchaResponse**  
请求的 CAPTCHA 操作状态，在对请求应用 CAPTCHA 操作时填充。无论是 CAPTCHA 终止操作还是非终止操作，都将填充此字段。如果请求多次应用 CAPTCHA 操作，则从上次应用此操作时填充此字段。  
当请求不包含令牌或者令牌无效或已过期时，该 CAPTCHA 操作将终止 web 请求检查。如果 CAPTCHA 操作为终止操作，此字段包括响应代码和失败原因。如果操作为非终止操作，则此字段包含一个验算时间戳。要区分终止操作和非终止操作，可以在此字段中筛选非空 `failureReason` 属性。

**cfDistributionTenant我是**  
与 Web 请求关联的 CloudFront 分发租户的标识符。此字段为可选字段，仅适用于与 CloudFront 分发租户关联的保护包 (Web ACLs)。

**challengeResponses**  
请求的质询操作状态，在对请求应用 Challenge 操作时填充。无论是 Challenge 终止操作还是非终止操作，都将填充此字段。如果请求多次应用 Challenge 操作，则从上次应用此操作时填充此字段。  
当请求不包含令牌或者令牌无效或已过期时，该 Challenge 操作将终止 web 请求检查。如果 Challenge 操作为终止操作，此字段包括响应代码和失败原因。如果操作为非终止操作，则此字段包含一个验算时间戳。要区分终止操作和非终止操作，可以在此字段中筛选非空 `failureReason` 属性。

**clientAsn**  
自治系统编号（ASN），与 web 请求来源的 IP 地址相关联。  
只有在使用 AS@@ **N 匹配语句时，才会将 Clien** tAsn 登录到 AWS WAF 日志中。否则不会记录此字段。

**clientIp**  
发送请求的客户端 IP 地址。

**country**  
请求的源国家/地区。 AWS WAF 如果无法确定原产国，则会将此字段设置为`-`。

**country**  
请求的源国家/地区。 AWS WAF 如果无法确定原产国，则会将此字段设置为`-`。

**excludedRules**  
仅用于规则组规则。规则组中您排除的规则列表。这些规则的操作设置为 Count。  
如果您使用覆盖规则操作选项覆盖要计数的规则，则此处不会列出匹配项。它们被列为操作对 `action` 和 `overriddenAction`.    
exclusionType  
一种类型，指示排除的规则具有操作 Count。  
ruleId  
规则组中排除的规则 ID。

**formatVersion**  
日志的格式版本。

**forwardedAsn**  
自治系统编号（ASN），与转发 web 请求的实体的 IP 地址相关联。

**headers**  
标头的列表。

**httpMethod**  
请求中的 HTTP 方法。

**httpRequest**  
关于请求的元数据。

**httpSourceId**  
关联资源的ID。  
+ 对于 Amazon CloudFront 分配，编号为 ARN `distribution-id` 语法：

  `arn:partitioncloudfront::account-id:distribution/distribution-id` 
+ 对于应用程序负载均衡器，ID 是 `load-balancer-id`，采用 ARN 语法：

  `arn:partition:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id`
+ 对于 Amazon API Gateway REST API，ID 是 `api-id`，采用 ARN 语法：

  `arn:partition:apigateway:region::/restapis/api-id/stages/stage-name`
+ 对于 AWS AppSync GraphQL API，编号是 ARN 语法`GraphQLApiId`中的：

  `arn:partition:appsync:region:account-id:apis/GraphQLApiId`
+ 对于 Amazon Cognito 用户群体，ID 是 `user-pool-id`，采用 ARN 语法：

  `arn:partition:cognito-idp:region:account-id:userpool/user-pool-id`
+ 对于 AWS App Runner 服务，ID 是 ARN 语法`apprunner-service-id`中的：

  `arn:partition:apprunner:region:account-id:service/apprunner-service-name/apprunner-service-id`

**httpSourceName**  
请求的源。可能`CF`的值：亚马逊 CloudFront、`APIGW`亚马逊 API Gateway、应用程序负载均衡器、`ALB` Amazon Cognito AWS AppSync、`COGNITOIDP` Amazon Cognito、`APPRUNNER` App Runner 以及经过验证`VERIFIED_ACCESS`的访问权限。`APPSYNC`

**httpVersion**  
HTTP 版本。

**ja3Fingerprint**  
请求的 JA3 指纹。  
JA3 指纹检查仅适用于 Amazon CloudFront 分配和应用程序负载均衡器。
指 JA3 纹是一个 32 个字符的哈希值，源自传入请求的 TLS 客户端 Hello。此指纹用作客户端 TLS 配置的唯一标识符。 AWS WAF 计算并记录每个具有足够的 TLS Client Hello 信息用于计算的请求的此指纹。  
当您在保护包 (Web ACL) 规则中配置 JA3 指纹匹配时，您需要提供此值。有关创建 JA3指纹匹配项的信息，请参阅 for a r [在中请求组件 AWS WAF](waf-rule-statement-fields-list.md) ule 语句[JA3 指纹](waf-rule-statement-fields-list.md#waf-rule-statement-request-component-ja3-fingerprint)中的。

**ja4Fingerprint**  
请求的 JA4 指纹。  
JA4 指纹检查仅适用于 Amazon CloudFront 分配和应用程序负载均衡器。
指 JA4 纹是一个 36 个字符的哈希值，源自传入请求的 TLS 客户端 Hello。此指纹用作客户端 TLS 配置的唯一标识符。 AWS WAF 计算并记录每个具有足够的 TLS Client Hello 信息用于计算的请求的此指纹。  
当您在保护包 (Web ACL) 规则中配置 JA4 指纹匹配时，您需要提供此值。有关创建 JA4指纹匹配项的信息，请参阅 for a r [在中请求组件 AWS WAF](waf-rule-statement-fields-list.md) ule 语句[JA4 指纹](waf-rule-statement-fields-list.md#waf-rule-statement-request-component-ja4-fingerprint)中的。

**标签**  
web 请求上的标签。这些标签是由用来评估请求的规则应用的。 AWS WAF 记录前 100 个标签。

**nonTerminatingMatching规则**  
与请求匹配的非终止规则的列表。列表中每个项目都包含以下信息。    
action  
 AWS WAF 应用于请求的操作。这表示计数、验证码或质询。当 web 请求包含有效令牌时，CAPTCHA 和 Challenge 不会终止。  
ruleId  
与请求匹配并且为非终止规则的 ID。  
ruleMatchDetails  
有关与请求匹配的规则的详细信息。此字段仅适用于 SQL 注入和跨站脚本攻击（XSS）匹配规则语句。匹配规则可能需要匹配多个检查条件，因此这些匹配详细信息以匹配条件的形式提供。
为每条规则提供的任何其他信息会因规则配置、规则匹配类型和匹配详细信息等因素而不同。例如，对于带有 CAPTCHA 或 Challenge 操作的规则，将列出 `captchaResponse` 或 `challengeResponse`。如果匹配的规则位于某个规则组中，而您覆盖了其配置的规则操作，则 `overriddenAction` 中将提供配置的操作。

**oversizeFields**  
Web 请求中经过保护包 (Web ACL) 检查且超出 AWS WAF 检查限制的字段列表。如果字段过大，但保护包（web ACL）未对其进行检查，则不会在此处列出该字段。  
此列表可以包含以下零个或多个值：`REQUEST_BODY`、`REQUEST_JSON_BODY`、`REQUEST_HEADERS` 和 `REQUEST_COOKIES`。有关超大字段的更多信息，请参阅 [中的 Web 请求组件过大 AWS WAF](waf-oversize-request-components.md)。

**rateBasedRule名单**  
对请求执行操作的基于速率的规则列表。有关基于速率的规则的更多信息，请参阅 [在中使用基于费率的规则语句 AWS WAF](waf-rule-statement-type-rate-based.md)。    
rateBasedRule我是  
作用于请求的基于速率的规则的 ID。如果这已终止请求，则 `rateBasedRuleId` 的 ID 与 `terminatingRuleId` 的 ID 相同。  
rateBasedRule名称  
作用于请求的基于速率的规则的名称。  
limitKey  
规则使用的聚合类型。可能的值包括：对于 web 请求来源为 `IP`，请求标头中转发的 IP 为`FORWARDED_IP`，自定义聚合键设置为 `CUSTOMKEYS`，将所有请求合并计数（不进行聚合）为 `CONSTANT`。  
limitValue  
仅在按单个 IP 地址类型限制速率时使用。如果请求包含无效的 IP 地址，则 `limitvalue` 为 `INVALID`。  
maxRateAllowed  
特定聚合实例在指定时间窗口内允许的最大请求数。该聚合实例由 `limitKey` 和您在基于速率的规则配置中提供的任何其他密钥规范定义。  
evaluationWindowSec  
请求中 AWS WAF 包含的时间长度，以秒为单位。  
customValue  
请求中基于速率的规则标识的唯一值。对于字符串值，日志会打印字符串值的前 32 个字符。根据密钥类型，这些值可能仅用于密钥，例如 HTTP 方法或查询字符串，也可能用于密钥和名称，例如标头和标头名称。

**requestHeadersInserted**  
为处理自定义请求而插入的标头列表。

**requestId**  
请求的 ID，由底层主机服务生成。对于应用程序负载均衡器，这是跟踪 ID。对于所有其他人，这是请求 ID。

**responseCodeSent**  
与自定义响应一起发送的响应代码。

**ruleGroupId**  
规则组的 ID。如果规则阻止了请求，则 `ruleGroupID` 的 ID 与 `terminatingRuleId` 的 ID 相同。

**ruleGroupList**  
对该请求进行操作的规则组列表，包含匹配信息。

**terminatingRule**  
终止请求的规则。如果存在，则包含以下信息。    
action  
 AWS WAF 应用于请求的终止操作。这表示允许、阻止、验证码或质询。当 web 请求不包含有效令牌时，CAPTCHA 和 Challenge 操作将终止。  
ruleId  
匹配请求的规则的 ID。  
ruleMatchDetails  
有关与请求匹配的规则的详细信息。此字段仅适用于 SQL 注入和跨站脚本攻击（XSS）匹配规则语句。匹配规则可能需要匹配多个检查条件，因此这些匹配详细信息以匹配条件的形式提供。
为每条规则提供的任何其他信息会因规则配置、规则匹配类型和匹配详细信息等因素而不同。例如，对于带有 CAPTCHA 或 Challenge 操作的规则，将列出 `captchaResponse` 或 `challengeResponse`。如果匹配的规则位于某个规则组中，而您覆盖了其配置的规则操作，则 `overriddenAction` 中将提供配置的操作。

**terminatingRuleId**  
终止请求的规则的 ID。如果没有任何情况会终止请求，则值为 `Default_Action`。

**terminatingRuleMatch详情**  
有关与请求匹配的终止规则的详细信息。终止规则具有针对 web 请求结束检查过程的操作。终止规则可能的操作包括Allow、Block、CAPTCHA 和 Challenge。在检查 Web 请求期间，在与请求匹配且具有终止操作的第一条规则处， AWS WAF 停止检查并应用操作。除了日志中报告的匹配终止规则的威胁外，web 请求可能还包含其他威胁。  
这仅适用于 SQL 注入和跨站脚本攻击（XSS）匹配规则语句。匹配规则可能需要匹配多个检查条件，因此这些匹配详细信息以匹配条件的形式提供。

**terminatingRuleType**  
终止请求的规则的类型。可能的值：RATE\$1BASED、REGULAR、GROUP 和 MANAGED\$1RULE\$1GROUP。

**timestamp**  
时间戳，以毫秒为单位。

**uri**  
请求的 URI。

**fragment**  
紧接“\$1”符号的 URL 部分，提供有关资源的其他信息，例如 \$1section2。

**webaclId**  
保护包（web ACL）的 GUID。