解读网站的评估

本页面介绍了如何解读得分,了解用户互动带来的风险级别并对您的网站采取适当的措施。

无论密钥类型如何,reCAPTCHA 都会根据与您网站的互动情况返回每个请求的得分。从 reCAPTCHA 收到分数后,您必须解读分数并对您的网站采取适当的措施。

准备工作

为您的网站创建评估。

解读评估

在后端将用户的 reCAPTCHA 响应令牌提交给 reCAPTCHA 后,您会收到 JSON 响应形式的评估,如以下示例所示。

如需解读评估,请考虑以下参数:

  • valid:指示提供的用户响应令牌是否有效。如果为 valid = false,则原因在 invalidReason 中指定。valid = false 还可能表示用户未能解决一项挑战,或者 siteKey 不匹配。
  • invalidReason:valid = false 时与响应关联的原因。
  • action:触发 reCAPTCHA 验证的用户互动。
  • expectedAction:您在创建评估时指定的用户期望的操作。
  • score:用户互动带来的风险等级。分数越高,风险越低。
  • reasons:有关 reCAPTCHA 如何解读用户互动的其他信息。
  • challenge:指示对基于政策的验证任务密钥的验证任务的响应。可能的值:PASSED、FAILED 或 NOCAPTCHA。
  • extendedVerdictReasons:影响风险分析判定结果的高级推理。

    通过向项目添加结算账号触发自动安全审核后,即可使用原因代码。如需申请访问原因代码,请向您的项目添加结算账号。

    来自具有 Enterprise 订阅的项目的评估也会收到高级原因代码。如需获取高级原因的完整列表以及如何解读这些原因,请与您的客户代表或Google Cloud 销售人员联系。

    {
     "event":{
        "expectedAction":"EXPECTED_ACTION",
        "userInfo":{
          "accountId":"ACCOUNT_ID"
        },
        "siteKey":"KEY_ID",
        "token":"TOKEN",
        "userAgent":"(USER-PROVIDED STRING)",
        "userIpAddress":"USER_PROVIDED_IP_ADDRESS"
     },
     "name":"ASSESSMENT_ID",
     "riskAnalysis":{
       "reasons":[],
       "extendedVerdictReasons":[],
       "score":"SCORE",
       "challenge":"PASSED"
     },
     "tokenProperties":{
       "action":"USER_INTERACTION",
       "createTime":"TIMESTAMP",
       "hostname":"HOSTNAME",
       "invalidReason":"(ENUM)",
       "valid":(BOOLEAN)
     }
    }

验证操作

JSON 响应包含您在调用 execute() 时为用户互动指定的 action 参数以及您在创建评估时指定的 expectedAction 参数。

验证 action 与 expectedAction 是否匹配。例如,系统应该在您的登录页面上返回 login 操作。如果存在不匹配,则表示攻击者正在尝试伪造操作。您可以对用户互动采取措施,例如添加其他验证手段或阻止互动以防发生任何欺诈活动。

解释得分

reCAPTCHA 的评分系统是 reCAPTCHA 早期版本的扩展,可提高响应的精细度。reCAPTCHA 有 11 个评分级别,分值范围为 0.0 到 1.0。1.0 分表示互动风险低,很可能是合法的;而 0.0 分表示互动风险高,可能具有欺诈性。

在 11 个级别中,只有以下 4 个得分级别可用,直到您向项目添加结算账号并触发自动安全审核:0.1、0.3、0.7 和 0.9。

如需申请 11 个得分级别的访问权限,请向您的项目添加结算账号。

SMS Defense 风险评分与 reCAPTCHA 全局评分的工作方式相反。SMS Defense 风险评分为 0.0 表示发生短信话费欺诈的可能性较低;风险评分为 1.0 表示发生短信话费欺诈的可能性较高。

reCAPTCHA 通过监控您网站上的真实流量来学习。 因此,预演环境和 7 天内实现的得分可能与长期生产环境的得分不同。

如果您安装了基于分数的密钥,则可以先运行 reCAPTCHA 而不采取行动,然后通过查看流量来确定阈值。

您可以根据该得分针对网站的相应环境采取适当的措施。为了更好地保护您的网站,我们建议您在后台执行此操作,而不是阻止流量。

下表列出了您可以执行的一些操作:

用例 操作
首页 在滤除抄袭者的同时,在管理控制台中了解流量的整体情况。
login 如果得分较低,则需要使用 MFA 或电子邮件验证,以防范凭据填充攻击。
social 限制来自滥用用户的尚未回应的好友请求;发送有风险的评论以进行审核。
电子商务 避免漫游器接触到您的真实销售交易,并识别有风险的交易。

原因代码

通过向项目添加结算账号来触发自动安全审核后,系统会提供原因代码。如需申请访问原因代码,请向您的项目添加结算账号。

某些分数可能会与原因代码一起返回,这些代码提供了有关 reCAPTCHA 如何解读互动的其他信息。

下表列出了原因代码及其说明:

原因代码 说明
AUTOMATION 互动与自动代理的行为相匹配。
UNEXPECTED_ENVIRONMENT 该事件由非法环境引发。
TOO_MUCH_TRAFFIC 来自事件源的数据流量高于正常水平。
UNEXPECTED_USAGE_PATTERNS 与您的网站的互动与预期模式存在着很大差异。
LOW_CONFIDENCE_SCORE 来自此网站的流量过少,无法生成质量风险分析。

siteverify 方法的响应

如需了解 siteverify 方法的请求、响应和错误代码详情,请参阅使用旧版 SiteVerify 验证用户响应令牌。

后续步骤

  • 要微调您的网站专属模型,您可以将评估 ID 发送回 Google 以确认真正例和真负例,或更正错误。如需了解详情,请参阅为评估添加注释。