Interpretar evaluaciones de sitios web

En esta página se explica cómo interpretar una puntuación para entender el nivel de riesgo que suponen las interacciones de los usuarios y tomar las medidas adecuadas para su sitio.

reCAPTCHA devuelve una puntuación para cada solicitud basada en las interacciones con tu sitio, independientemente del tipo de clave. Una vez que recibas la puntuación de reCAPTCHA, debes interpretarla y tomar las medidas adecuadas para tu sitio.

Antes de empezar

Crea una evaluación para tu sitio web.

Interpretar la evaluación

Una vez que tu backend envía a reCAPTCHA el token de respuesta de reCAPTCHA de un usuario, recibes una evaluación en formato JSON, como se muestra en el siguiente ejemplo.

Para interpretar una evaluación, tenga en cuenta los siguientes parámetros:

  • valid: indica si el token de respuesta del usuario proporcionado es válido. Cuando valid = false, el motivo se especifica en invalidReason. valid = false también puede indicar que un usuario no ha resuelto un reto o que hay un siteKey error de coincidencia.
  • invalidReason: el motivo asociado a la respuesta cuando valid = false.
  • action: una interacción de un usuario que ha activado la verificación de reCAPTCHA.
  • expectedAction: la acción esperada de un usuario que has especificado al crear la evaluación.
  • score: el nivel de riesgo que supone la interacción del usuario.
  • reasons: información adicional sobre cómo ha interpretado reCAPTCHA la interacción del usuario.
  • challenge (vista previa): indica la respuesta al reto de las claves de reto basadas en políticas. Valores posibles: PASS, FAIL o NOCAPTCHA.

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

Verificar acciones

La respuesta JSON contiene el parámetro action que has especificado para una interacción del usuario al llamar a execute() y el parámetro expectedAction que has especificado al crear la evaluación.

Verifica que action coincida con expectedAction. Por ejemplo, se debe devolver una acción login en la página inicio de sesión. Si no coinciden, significa que un atacante está intentando falsificar acciones. Puedes tomar medidas contra la interacción del usuario, como añadir verificaciones adicionales o bloquear la interacción para evitar actividades fraudulentas.

Interpretar las puntuaciones

El sistema de puntuación de reCAPTCHA es una ampliación de las versiones anteriores de reCAPTCHA que permite una mayor granularidad en las respuestas. reCAPTCHA tiene 11 niveles de puntuación con valores que van de 0,0 a 1,0. La puntuación 1,0 indica que la interacción supone un riesgo bajo y es muy probable que sea legítima, mientras que 0,0 indica que la interacción supone un riesgo alto y podría ser fraudulenta.

De los 11 niveles, solo están disponibles los cuatro siguientes antes de activar una revisión de seguridad automática añadiendo una cuenta de facturación a tu proyecto: 0,1, 0,3, 0,7 y 0,9.

Para solicitar acceso a 11 niveles de puntuación, añade una cuenta de facturación a tu proyecto.

La puntuación de riesgo de reCAPTCHA SMS defense funciona de forma inversa en comparación con la puntuación global de reCAPTCHA. Una puntuación de riesgo de 0,0 en reCAPTCHA SMS defense indica que hay poca confianza en que se produzca un fraude de servicios telefónicos por SMS, mientras que una puntuación de riesgo de 1,0 indica que hay mucha confianza en que se produzca un fraude de servicios telefónicos por SMS.

reCAPTCHA aprende monitorizando el tráfico real de su sitio. Por lo tanto, las puntuaciones de un entorno de pruebas y las que se obtengan en los 7 días posteriores a la implementación pueden ser diferentes de las puntuaciones de producción a largo plazo.

Si has instalado claves basadas en puntuación, puedes ejecutar reCAPTCHA primero sin tomar ninguna medida y, después, decidir los umbrales consultando el tráfico.

Según la puntuación, puedes tomar las medidas oportunas en el contexto de tu sitio. Para proteger mejor su sitio, le recomendamos que realice la acción en segundo plano en lugar de bloquear el tráfico.

En la siguiente tabla se enumeran algunas de las acciones que puedes llevar a cabo:

Caso práctico Acción
página principal Consulta una vista coherente de tu tráfico en la consola de administración mientras filtras los raspadores.
iniciar sesión Si las puntuaciones son bajas, requiere la autenticación multifactor o la verificación por correo electrónico para evitar ataques de relleno de credenciales.
social Limitar las solicitudes de amistad sin responder de usuarios abusivos y enviar los comentarios arriesgados a moderación.
comercio electrónico Prioriza las ventas reales frente a los bots e identifica las transacciones arriesgadas.

Códigos de motivo

Los códigos de motivo están disponibles después de activar una revisión de seguridad automática añadiendo una cuenta de facturación a tu proyecto. Para solicitar acceso a los códigos de motivo, añade una cuenta de facturación a tu proyecto.

Algunas puntuaciones pueden devolverse con códigos de motivo que proporcionan información adicional sobre cómo ha interpretado reCAPTCHA las interacciones.

En la siguiente tabla se enumeran los códigos de motivo y sus descripciones:

Código del motivo Descripción
AUTOMATIZACIÓN La interacción coincide con el comportamiento de un agente automatizado.
UNEXPECTED_ENVIRONMENT El evento procede de un entorno ilegítimo.
TOO_MUCH_TRAFFIC El volumen de tráfico de la fuente del evento es más alto de lo normal.
UNEXPECTED_USAGE_PATTERNS La interacción con tu sitio ha sido significativamente diferente de los patrones esperados.
LOW_CONFIDENCE_SCORE No se ha recibido suficiente tráfico de este sitio para generar un análisis de riesgo de calidad.

Respuesta del método siteverify

El método siteverify devuelve un objeto JSON que contiene los siguientes campos cuando se usa para crear una evaluación:

{
  "success": true|false,      // whether this request was a valid reCAPTCHA token for your site
  "score": number             // the score for this request (0.0 - 1.0)
  "action": string            // the action name for this request (important to verify)
  "challenge_ts": timestamp,  // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
  "hostname": string,         // the hostname of the site where the reCAPTCHA was solved
  "error-codes": [...]        // optional
}

Siguientes pasos

  • Para ajustar el modelo específico de tu sitio, puedes enviar los IDs de evaluación a Google para confirmar los positivos y negativos verdaderos, o bien para corregir los errores. Para obtener más información, consulta Anotar evaluaciones.