Especificación de la API de JavaScript de CAPTCHA - AWS WAF, AWS Firewall Manager, AWS Shield Advanced y director de seguridad de red AWS Shield

Presentamos una nueva experiencia de consola para AWS WAF

Ahora puede usar la experiencia actualizada para acceder a las funciones de AWS WAF desde cualquier parte de la consola. Para obtener más información, consulta Trabajo con la experiencia de consola actualizada.

Especificación de la API de JavaScript de CAPTCHA

En esta sección se enumeran las especificaciones de los métodos y propiedades de las API de JavaScript de CAPTCHA. Utilice las API de JavaScript de CAPTCHA para ejecutar rompecabezas de CAPTCHA personalizados en sus aplicaciones cliente.

Esta API se basa en las API de amenazas inteligentes, que se utilizan para configurar y gestionar la adquisición y el uso de los tokens de AWS WAF. Consulte Especificación de la API de amenazas inteligentes.

AwsWafCaptcha.renderCaptcha(container, configuration)

Presenta un rompecabezas de CAPTCHA de AWS WAF al usuario final y, en caso de éxito, actualiza el token del cliente con la validación del CAPTCHA. Esto solo está disponible con la integración de CAPTCHA. Utilice esta llamada junto con las API de amenazas inteligentes para gestionar la recuperación de los tokens y proporcionarlos en sus llamadas fetch. Para usar las API de amenazas inteligentes en Especificación de la API de amenazas inteligentes.

A diferencia del CAPTCHA intersticial que envía AWS WAF, el rompecabezas de CAPTCHA renderizado con este método muestra el rompecabezas inmediatamente, sin una pantalla de título inicial.

container

El objeto Element para el elemento contenedor objetivo de la página. Por lo general, se recupera llamando a document.getElementById() o document.querySelector().

Obligatorio: sí

Tipo:: Element

configuración

Un objeto que contiene los ajustes de configuración de CAPTCHA, de la siguiente manera:

apiKey

La clave de API cifrada que habilita los permisos para el dominio del cliente. Utilice la consola AWS WAF para generar las claves de API para los dominios de los clientes. Puede utilizar una clave para hasta cinco dominios. Para obtener más información, consulte Administración de las claves de API para la API de JS CAPTCHA.

Obligatorio: sí

Tipo:: string

onSuccess: (wafToken: string) => void;

Se llama con un token de AWS WAF válido cuando el usuario final completa correctamente un rompecabezas de CAPTCHA. Use el token en las solicitudes que envíe a los puntos de conexión que proteja con un paquete de protección (ACL web) de AWS WAF. El token proporciona la prueba y la marca de tiempo de la última vez que se ha completado con éxito el rompecabezas.

Obligatorio: sí

onError?: (error: CaptchaError) => void;

Se llama con un objeto de error cuando se produce un error durante la operación de CAPTCHA.

Obligatorio: no

Definición de clase CaptchaError: el controlador onError proporciona un tipo de error con la siguiente definición de clase.

CaptchaError extends Error { kind: "internal_error" | "network_error" | "token_error" | "client_error"; statusCode?: number; }
  • kind: el tipo de error devuelto.

  • statusCode: el código de estado HTTP, si está disponible. Lo utiliza network_error si el error se debe a un error HTTP.

onLoad?: () => void;

Se llama cuando se carga un nuevo rompecabezas de CAPTCHA.

Obligatorio: no

onPuzzleTimeout?: () => void;

Se llama cuando un rompecabezas de CAPTCHA no se completa antes de que caduque.

Obligatorio: no

onPuzzleCorrect?: () => void;

Se llama cuando se proporciona una respuesta correcta a un rompecabezas de CAPTCHA.

Obligatorio: no

onPuzzleIncorrect?: () => void;

Se llama cuando se proporciona una respuesta incorrecta a un rompecabezas de CAPTCHA.

Obligatorio: no

defaultLocale

La configuración regional predeterminada que se utilizará en el rompecabezas de CAPTCHA. Las instrucciones escritas para los rompecabezas de CAPTCHA están disponibles en árabe (ar-SA), chino simplificado (zh-CN), holandés (nl-NL), inglés (en-US), francés (fr-FR), alemán (de-DE), italiano (it-IT), japonés (ja-JP), portugués brasileño (pt-BR), español (es-ES) y turco (tr-TR). Las instrucciones de audio están disponibles en todos los idiomas escritos, excepto en chino y japonés, que por defecto están en inglés. Para cambiar el idioma predeterminado, proporcione el idioma internacional y el código de configuración regional, por ejemplo, ar-SA.

Predeterminado: el idioma que se utiliza actualmente en el navegador del usuario final

Obligatorio: no

Tipo:: string

disableLanguageSelector

Si se establece en true, el rompecabezas de CAPTCHA oculta el selector de idioma.

Valor predeterminado: false

Obligatorio: no

Tipo:: boolean

dynamicWidth

Si se establece en true, el rompecabezas de CAPTCHA cambia de ancho para que sea compatible con el ancho de la ventana del navegador.

Valor predeterminado: false

Obligatorio: no

Tipo:: boolean

skipTitle

Si se establece en true, el rompecabezas de CAPTCHA no mostrará el título del rompecabezas Resuelva el rompecabezas.

Valor predeterminado: false

Obligatorio: no

Tipo:: boolean