借助 reCAPTCHA 密钥(也称为密钥),您可以通过验证网页和移动应用中的用户互动来保护端点。
如需选择合适的 reCAPTCHA 密钥类型,您必须了解每个平台支持的密钥类型及其区别。
reCAPTCHA 密钥的类型
下表列出了每个平台支持的 reCAPTCHA 密钥:
| 平台 | 说明 | 支持的键 | 验证类型 |
|---|---|---|---|
| web | 用于在网页上集成。 | 基于得分的密钥 | SCORE |
| 复选框键 | CHECKBOX |
||
| 基于政策的验证密钥 | POLICY_BASED_CHALLENGE |
||
| 移动 | 用于与 Android 和 iOS 应用集成。 | 适用于 Android 的 reCAPTCHA 密钥 | SCORE |
| 适用于 iOS 的 reCAPTCHA 密钥 | SCORE |
||
| WAF | 适用于通过 WAF 或边缘计算服务器提供的网页和 API。 | 操作令牌密钥 | SCORE和CHECKBOX之间 |
| 会话令牌密钥 | SCORE |
||
| 验证页面键 | INVISIBLE |
||
| API | 用于与不支持 reCAPTCHA JavaScript 或移动 SDK 的 API 或客户端(例如 IoT 设备)集成。 | 快捷键 | SCORE |
为网站选择 reCAPTCHA 密钥类型
为了验证网站上的用户互动,reCAPTCHA 提供了基于分数的密钥(不会触发人机识别系统验证)、复选框密钥(会触发不确定性的人机识别系统验证)和基于政策的验证密钥(会触发确定性的人机识别系统验证)。
所有密钥类型都会根据用户与您网站的互动情况返回每个请求的得分。此得分可让您了解相应互动带来的风险级别,并帮助您为网站采取适当的措施。
下表总结了基于得分的密钥、复选框密钥和基于政策的验证密钥之间的区别:
| 比较类别 | 基于得分的键(推荐) | 复选框键 | 基于政策的验证密钥 |
|---|---|---|---|
| 说明 | 基于得分的密钥可让您无需用户互动,即可验证某次交互是否正当。 | 复选框密钥使用需要用户参与的复选框验证方式,以验证用户不是机器人。此外,您还可以使用复选框密钥通过人机识别系统验证来保护特定操作。 |
基于政策的验证密钥会根据配置的得分阈值触发人机识别系统验证。您可以使用基于政策的验证密钥,通过人机识别系统验证来保护特定操作。 |
| 工作原理 | 使用基于分数的密钥时,reCAPTCHA Enterprise API 会返回一个分数,您可以根据该分数在网站的情境中采取相应措施。 您可能会执行的操作示例包括要求其他身份验证因素、发送帖子以进行审核或限制可能正在抓取内容的聊天机器人。 |
复选框密钥会呈现一个我不是机器人复选框,用户必须点击该复选框才能验证自己不是机器人。 此复选框密钥可能会或可能不会向用户提出人机识别系统质询。 在这两种情况下,reCAPTCHA Enterprise API 都会返回得分。 人机识别系统验证要求用户从一组图像中选择某些种类的对象,例如路牌。 以下 GIF 动画展示了复选框键的示例: 下图显示了一个 CAPTCHA 验证示例:
在使用人机识别系统挑战之前,您必须了解人机识别系统挑战注意事项。 |
使用基于政策的验证密钥时,如果 reCAPTCHA 计算的初始得分低于配置的得分阈值,系统会触发 CAPTCHA 验证。基于政策的验证密钥与复选框密钥不同,因为前者可以确定性地触发人机识别系统验证。 人机识别系统验证要求用户从一组图片中选择特定类型的对象,例如路牌。 下图显示了一个 CAPTCHA 验证示例:
在使用人机识别系统挑战之前,您必须了解人机识别系统挑战注意事项。 |
| 支持的平台 | 网站和移动平台。 | 仅限网站。 | 仅限网站。 |
| 使用场景 |
基于得分的键适合以下使用场景:
|
复选框键适合用于网页上的表单、登录和注册。虽然这可能会给用户造成额外的负面影响,但额外的步骤(例如人机识别系统挑战)有助于防范不道德的攻击者。 | 基于政策的验证密钥适用于网页上的表单、登录和注册。虽然这可能会给用户带来额外的麻烦,但增加一个步骤(例如人机识别系统验证)有助于阻止不复杂的攻击者。 |
人机识别系统验证的注意事项
如果您想使用复选框密钥和 CAPTCHA 验证来防范自动化攻击,请注意以下注意事项:
- 人机识别系统需要用户互动,这会增加负面影响,并且可能会降低转化率。
- 由于计算机视觉和机器智能的发展,人机识别系统在区分人与机器人之间的作用越来越小。
- 人机识别系统还受到付费攻击者的威胁,这些攻击者能够解决所有类型的挑战。
- 并非所有用户都能使用人机识别系统,因此,如果您的网站有无障碍功能要求,就可能不适合使用人机识别系统。
为 WAF 选择 reCAPTCHA 密钥类型
reCAPTCHA for Google Cloud Armor 集成支持操作令牌、会话令牌和验证任务页面。
您可以在单个应用中使用一项或多项 reCAPTCHA for Google Cloud Armor 功能。 例如,您可以选择为所有网页应用会话令牌,并根据会话令牌的分数将可疑请求重定向到 reCAPTCHA 验证任务页面。 此外,您还可以将操作令牌用于重要的操作,例如结账。如需了解详情,请参阅示例。
下表简要比较了可用的 reCAPTCHA for Google Cloud Armor 功能:
| 比较类别 | reCAPTCHA 操作令牌 | reCAPTCHA 会话令牌 | reCAPTCHA 质询页面 |
|---|---|---|---|
| 使用场景 | 用于保护用户操作,例如登录或评论帖子。 | 用于保护网站网域中的整个用户会话。 | 当您怀疑有垃圾内容活动针对您的网站时,需要过滤掉机器人。
此方法会中断用户的活动,因为用户必须验证人机识别系统质询。 |
| 支持的平台 | 网站和移动应用 | 网站 | 网站 |
| 客户端集成工作量 | 中
手动客户端集成。 |
中
手动或通过在 WAF 上注入来安装 reCAPTCHA JavaScript。 |
低
由安全政策触发的插页式广告。 |
| 检测准确率 | 最高
提供客户端、服务器和操作特定信号。 |
高
提供客户端和服务器专用信号。 |
中
提供客户端和服务器专用信号。客户端信号仅在插页式广告中可用。 |
| 支持的 reCAPTCHA 版本 | 基于得分的 reCAPTCHA 密钥和复选框 reCAPTCHA 密钥 | 基于 reCAPTCHA 分数的密钥 | 嵌入到插页式广告中的基于 reCAPTCHA 验证任务的密钥 |
为 API 选择 reCAPTCHA 快速密钥
如果您的环境不支持 reCAPTCHA 客户端集成(例如 JavaScript API 或移动 SDK),请使用 reCAPTCHA Express。reCAPTCHA Express 适用于 API、网站、移动应用和 IoT 设备(例如电视和游戏机),但也可用于在无法进行客户端集成时保护网站或移动应用。
由于 reCAPTCHA express 仅为服务器端集成,因此缺少客户端信号收集功能。与涉及客户端组件的集成相比,这通常会导致检测准确度降低。
