

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

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

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

# 使用验证码 API JavaScript
<a name="waf-js-captcha-api"></a>

本节提供了使用 CAPTCHA 集成 API 的说明。

CAPTCHA JavaScript API 允许您配置验证码拼图并将其放置在客户端应用程序中所需的位置。在最终用户成功完成验证码拼图后 JavaScript APIs ，此 API 利用智能威胁的功能来获取和使用 AWS WAF 代币。

首先在测试环境中实施 JavaScript 集成，然后在生产环境中实现集成。有关其他编码指导，请参阅以下各节。

**使用验证码集成 API**

1. **安装 API**

   1. 登录 AWS 管理控制台 并在 [https://console.aws.amazon.com/wafv2/homev](https://console.aws.amazon.com/wafv2/homev2) 2 上打开主 AWS WAF 机。

   1. 在导航窗格中，选择 **应用程序集成**。在**应用程序集成**页面上，您可以看到选项卡式选项。

   1. 选择**验证码集成**。

   1. 复制列出的 JavaScript 集成脚本标签，以便在集成中使用。

   1. 在应用程序页面代码的 `<head>` 部分中，插入您复制的脚本标签。此功能使验证码拼图可供配置和使用。

      ```
      <head>
          <script type="text/javascript" src="integrationURL/jsapi.js" defer></script>
      </head>
      ```

      此 `<script>` 列表使用 `defer` 属性进行配置，但如果您想让页面有不同的行为，则可以将设置更改为 `async`。

      如果智能威胁集成脚本尚不存在，验证码脚本还会自动加载该脚本。智能威胁集成脚本使您的客户端应用程序在页面加载时自动在后台检索令牌，并提供您使用验证码 API 所需的其他令牌管理功能。

1. **（可选）为客户端的令牌添加域配置**-默认情况下，在 AWS WAF 创建令牌时，它使用与保护包（Web ACL）关联的资源的主机域。要为提供其他域 JavaScript APIs，请按照中的指南进行操作[提供用于令牌的域名](waf-js-challenge-api-set-token-domain.md)。

1. **获取客户端的加密 API 密钥** — CAPTCHA API 需要一个包含有效客户端域列表的加密 API 密钥。 AWS WAF 使用此密钥来验证您在集成中使用的客户端域是否已获准使用 AWS WAF CAPTCHA。要生成 API 密钥，请按照 [管理 JS CAPTCHA API 的 API 密钥](waf-js-captcha-api-key.md) 中的指导进行操作。

1. **编写验证码控件实施代码**：在页面中要使用它的位置实施 `renderCaptcha()` API 调用。有关配置和使用此功能的信息，请参阅以下各节 [验证码 API 规范 JavaScript](waf-js-captcha-api-specification.md) 和 [如何显示验证码拼图](waf-js-captcha-api-render.md)。

   CAPTCHA 实现与智能威胁集成集成， APIs 用于令牌管理和运行使用令牌的提取调用。 AWS WAF 有关使用它们的指导 APIs，请参阅[使用智能威胁 JavaScript API](waf-js-challenge-api.md)。

1. **在保护包（web ACL）中添加令牌验证**：在保护包（web ACL）中添加至少一条规则，用于检查客户端发送的 web 请求中是否存在有效的验证码令牌。您可以使用 CAPTCHA 规则操作进行检查，如 [CAPTCHA然后Challenge在 AWS WAF](waf-captcha-and-challenge.md) 中所述。

   新增的保护包（web ACL）可验证发往受保护端点的请求是否包含您在客户端集成中获取的令牌。包含有效、未过期的验证码令牌的请求会通过 CAPTCHA 规则操作检查，并且不会向您的最终用户显示其他验证码拼图。

实现 JavaScript API 后，您可以查看验证码拼图尝试次数和解决方案的 CloudWatch 指标。有关指标和维度的详细信息，请参阅 [账户指标和维度](waf-metrics.md#waf-metrics-account)。

**Topics**
+ [验证码 API 规范 JavaScript](waf-js-captcha-api-specification.md)
+ [如何显示验证码拼图](waf-js-captcha-api-render.md)
+ [处理来自的验证码响应 AWS WAF](waf-js-captcha-api-conditional.md)
+ [管理 JS CAPTCHA API 的 API 密钥](waf-js-captcha-api-key.md)