使用 CAPTCHA JavaScript API - AWS WAF, AWS Firewall Manager,以及 AWS Shield Advanced

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

使用 CAPTCHA JavaScript API

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

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

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

要使用集CAPTCHA成 API
  1. 安装 API

    1. 登录 AWS Management Console 然后打开 AWS WAF 控制台位于https://console.aws.amazon.com/wafv2/

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

    3. 选择CAPTCHA集成

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

    5. 在应用程序页面代码的 <head> 部分中,插入您复制的脚本标签。此内含内容使CAPTCHA拼图可供配置和使用。

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

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

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

  2. (可选)为客户端的令牌添加域配置-默认情况下,当 AWS WAF 创建令牌,它使用与 Web 关联的资源的主机域ACL。要为提供其他域 JavaScript APIs,请按照中的指南进行操作提供用于令牌的域名

  3. 获取客户端的加密API密钥-CAPTCHA API 需要包含有效客户端域列表的加密API密钥。 AWS WAF 使用此密钥来验证您在集成中使用的客户端域是否已获准使用 AWS WAF CAPTCHA。要生成API密钥,请按照中的指导进行操作管理 JS 的API密钥 CAPTCHA API

  4. 对@@ 你的CAPTCHA控件实现进行编码 — 在你的页面中,在你想要使用它的地方实现renderCaptcha()API调用。有关配置和使用此功能的信息,请参阅以下各节 验证码 API 规范 JavaScript 如何渲染CAPTCHA拼图

    该CAPTCHA实现与智能威胁集成集成,APIs用于令牌管理和运行使用的 fetch 调用 AWS WAF 代币。有关使用它们的指导APIs,请参阅使用智能威胁 JavaScript API

  5. 在您的网络中添加令牌验证 ACL-在您的网络中添加至少一条规则ACL,用于检查客户端发送的网络请求中是否有有效的CAPTCHA令牌。您可以使用 CAPTCHA 要检查的规则操作,如中所述使用 CAPTCHA 以及 Challenge in AWS WAF

    Web ACL 新增内容可验证发往受保护端点的请求是否包含您在客户端集成中获取的令牌。包含有效、未过期CAPTCHA令牌的请求通过 CAPTCHA 规则操作检查,不要向最终用户展示其他CAPTCHA拼图。

实施完成后 JavaScript API,您可以查看CAPTCHA拼图尝试次数和解决方案的 CloudWatch 指标。有关指标和维度的详细信息,请参阅账户指标和维度