Bundle CAPTCHA para Symfony
captchacore/captchacore-bundle para Symfony 6.4 LTS, 7.x y 8.x: FormType, constraint del validador, atributo de controlador y función Twig. Usted elige lo que encaja en su proyecto.
En tres pasos
Proteja Symfony en pocos minutos
Instalar el bundle
Añadir el repositorio, ejecutar composer require, registrar el bundle en config/bundles.php y crear config/packages/captchacore.yaml.
Claves en el .env
CAPTCHACORE_URL, clave del sitio y secreto como variables de entorno.
Elegir la vía de integración
FormType para formularios Symfony, constraint para DTOs, atributo para controladores, función Twig para lo demás.
Qué incluye
Hecho para Symfony, no solo compatible
FormType
Un campo en el form builder renderiza widget y token; la verificación ocurre en handleRequest().
Constraint del validador
Para DTOs y payloads de API: #[CaptchaCoreToken] en la propiedad, comprobado como cualquier otra constraint.
Atributo de controlador
#[RequiresCaptcha] verifica el token antes de ejecutar la acción, sin código en el método.
Función Twig
captchacore_widget() para formularios hechos a mano fuera del componente Form.
Distintivo de seguridad
Para el inicio de sesión de Symfony: el badge en el Passport hace comprobar el token antes que la contraseña.
Tests sin red
El cliente es un servicio: sustitúyalo por un fake en los tests y listo.
Sin acertijos de imágenes
Prueba de trabajo y análisis de comportamiento en lugar de semáforos y pasos de cebra: las personas hacen clic una vez, los bots se quedan calculando.
Servidores en Alemania
Procesamiento en servidores propios, sin transferencias a terceros países, sin rastreo entre sitios.
16 KB, sin framework
El widget carga rápido, nunca bloquea la interfaz y se maneja con teclado y lector de pantalla.
Preguntas frecuentes sobre Symfony
¿Necesito Symfony Flex?
No. El bundle se registra una vez en config/bundles.php y la configuración está en config/packages/captchacore.yaml, con o sin Flex.
¿Funciona con API Platform?
Sí, mediante la constraint del validador en sus DTOs de entrada.
¿Qué versión de PHP?
PHP 8.2 o superior; Symfony 8 requiere PHP 8.4.
Todos los detalles, opciones y ejemplos de código: Documentación →
Más integraciones