选择适当的 reCAPTCHA 密钥类型

借助 reCAPTCHA 密钥(也称为密钥,您可以在网页和移动应用中验证用户互动情况,从而保护您的端点。

若要选择合适的 reCAPTCHA 密钥类型,您必须了解每种平台支持的密钥类型及其区别。

reCAPTCHA 密钥的类型

下表列出了每个平台支持的 reCAPTCHA 密钥:

平台 说明 支持的键 验证类型
web 用于在网页上集成。 基于得分的密钥 SCORE
复选框密钥 CHECKBOX
基于政策的验证密钥(预览版 POLICY_BASED_CHALLENGE
移动 用于与 Android 和 iOS 应用集成。 适用于 Android 的 reCAPTCHA 密钥 SCORE
适用于 iOS 的 reCAPTCHA 密钥 SCORE
WAF 适用于通过 WAF 或边缘计算服务器提供的网页和 API。 操作令牌密钥 SCORECHECKBOX之间
会话令牌密钥 SCORE
挑战页面键 INVISIBLE
API 用于与不支持 reCAPTCHA JavaScript 或移动 SDK 的 API 或客户端(例如 IoT 设备)集成。 快捷键 SCORE

为网站选择 reCAPTCHA 密钥类型

为了验证网站上的用户互动,reCAPTCHA 提供基于得分的密钥(不会触发人机识别系统挑战)、复选框密钥(会触发不确定性的人机识别系统挑战)和基于政策的挑战密钥(会触发确定性的人机识别系统挑战)。

所有密钥类型都会返回每个请求的得分,该得分基于用户与您网站的互动情况。通过此得分,您可以了解该互动所产生的风险等级,并对您的网站采取适当的措施。

下表总结了基于得分的密钥、复选框密钥和基于政策的质询密钥之间的差异:

比较类别 基于得分的密钥(推荐) 复选框密钥 基于政策的验证密钥(预览版
说明 借助基于得分的密钥,您可以验证互动是否合法,而无需任何用户互动。

复选框密钥会使用复选框挑战,这需要用户互动来验证用户不是机器人。此外,您还可以使用复选框密钥来保护对人机识别系统挑战执行的特定操作。

基于政策的验证密钥会根据配置的分数阈值触发人机识别系统验证。您可以使用基于政策的验证密钥来保护带有人机识别系统挑战的特定操作。
工作原理

使用基于得分的密钥时,reCAPTCHA Enterprise API 会返回一个得分,您可以使用该得分在网站的情境中采取相应措施。

您可能会执行的操作示例包括要求其他身份验证因素、发送帖子以进行审核或限制可能正在抓取内容的聊天机器人。

复选框密钥会呈现我不是机器人复选框,因此用户必须点击以确认其不是机器人。此复选框密钥可能会也可能不会通过人机识别系统要求用户验证。 在这两种情况下,reCAPTCHA Enterprise API 都会返回得分。

人机识别系统验证要求用户从一组图像中选择某些种类的对象,例如路牌。

以下动画 GIF 是一个复选框密钥示例:
reCAPTCHA_visual_challenge

下图展示了一个人机识别系统验证示例:

人机识别系统验证示例

在使用人机识别系统挑战之前,您必须了解人机识别系统挑战注意事项

使用基于政策的质询密钥时,如果 reCAPTCHA 计算的初始得分低于配置的得分阈值,系统会触发 CAPTCHA 质询。基于政策的验证密钥与复选框密钥不同,因为前者可以确定性地触发人机识别系统验证。

人机识别系统验证要求用户从一组图像中选择某些种类的对象,例如路牌。

下图展示了一个人机识别系统验证示例:

人机识别系统验证示例

在使用人机识别系统挑战之前,您必须了解人机识别系统挑战注意事项

支持的平台 网站和移动平台。 仅限网站。 仅限网站。
使用场景

基于得分的密钥适用于以下用例:

  • 具有无障碍功能要求的网站。
  • 适用于付款类交易,倾向于减少负面影响,以便提升转化率。
  • 您想使用密码检查(密码防御)或多重身份验证 (MFA) 等其他功能的情形。
  • 通过移动应用访问的网站。
复选框密钥适用于网页上的表单、登录和注册。虽然这可能会给用户造成额外的负面影响,但额外的步骤(例如人机识别系统挑战)有助于防范不道德的攻击者。 基于政策的质询密钥适用于网页上的表单、登录和注册。虽然这可能会给用户造成额外的负面影响,但额外的步骤(例如人机识别系统挑战)有助于防范不道德的攻击者。

人机识别系统挑战的注意事项

如果您希望使用带有人机识别系统挑战的复选框密钥来防范自动攻击,请注意以下注意事项:

  • 人机识别系统需要用户互动,这会增加负面影响,并且可能会降低转化率。
  • 由于计算机视觉和机器智能的发展,人机识别系统在区分人与机器人之间的作用越来越小。
  • 人机识别系统还受到付费攻击者的威胁,这些攻击者能够解决所有类型的挑战。
  • 并非所有用户都能使用人机识别系统,因此,如果您的网站有无障碍功能要求,就可能不适合使用人机识别系统。

为 WAF 选择 reCAPTCHA 密钥类型

reCAPTCHA for Google Cloud Armor 集成支持操作令牌、会话令牌、验证页面和 reCAPTCHA Express

您可以在一款应用中使用一个或多个 reCAPTCHA for Google Cloud Armor 功能。 例如,您可以选择为所有页面应用会话令牌,并根据会话令牌的得分将可疑请求重定向到 reCAPTCHA 验证页面。此外,您还可以使用操作令牌执行重要操作,例如结账。如需了解详情,请参阅示例

下表简要比较了 Google Cloud Armor 的 reCAPTCHA 功能:

比较类别 reCAPTCHA 操作令牌 reCAPTCHA 会话令牌 reCAPTCHA 质询页面 reCAPTCHA express
使用场景 用于保护用户操作,例如登录评论帖子 用于保护网站网域上的整个用户会话。 如果您怀疑有垃圾邮件活动定向到您的网站,而您需要筛掉机器人,请使用此设置。

此方法会中断用户的活动,因为用户必须验证人机识别系统质询。

如果您的环境不支持集成 reCAPTCHA JavaScript 或移动 SDK,请使用 reCAPTCHA Express。
支持的平台 网站和移动应用 网站 网站 所有 HTTP 请求。

包括:API、网站、移动应用和 IoT 设备(例如电视和游戏机)

客户端集成工作量

手动客户端集成。

手动或通过注入在 WAF 上安装 reCAPTCHA JavaScript。

由安全政策触发的插页式广告。

无客户端集成。

检测准确率 最高

提供客户端、服务器和操作特定信号。

提供客户端和服务器专用信号。

提供客户端和服务器专用信号。客户端信号仅在插页式广告中可用。

仅提供服务器端信号。

支持的 reCAPTCHA 版本 基于 reCAPTCHA 得分和复选框的密钥 基于 reCAPTCHA 得分的密钥 嵌入到插页式广告中的基于 reCAPTCHA 验证的密钥 reCAPTCHA Express 密钥

为 API 选择 reCAPTCHA 快速密钥

如果您的环境不支持 reCAPTCHA 客户端集成(例如 JavaScript API 或移动 SDK),请使用 reCAPTCHA Express。reCAPTCHA Express 适用于 API、网站、移动应用和 IoT 设备(例如电视和游戏机),但也可用于在无法进行客户端集成时保护网站或移动应用。

由于 reCAPTCHA Express 是一种仅限服务器端的集成,因此它缺少客户端信号收集功能。与涉及客户端组件的集成相比,这通常会导致检测准确率降低。

后续步骤