API de autenticación facial para aplicaciones web

Integra la autenticación facial de FACEIO con fio.js. Crea una aplicación en FACEIO Console, carga el widget, llama a enroll() y authenticate(), y asigna el Facial ID devuelto a la lógica de sesiones de tu backend.

Conéctate a FACEIO Console para crear aplicaciones, gestionar APIs y configurar webhooks para eventos de registro, autenticación y Facial ID.

Por qué los equipos eligen FACEIO en lugar de desarrollarlo internamente

Añade autenticación facial sin crear desde cero la captura de cámara, las comprobaciones de vivacidad ni la infraestructura de comparación.

Construir autenticación facial desde cero implica gestionar comprobaciones de vivacidad, protección contra spoofing, comportamiento del motor de reconocimiento, calidad de coincidencia y captura de cámara entre navegadores antes de publicar el flujo real del producto. Es trabajo de infraestructura con consecuencias de seguridad y privacidad.

FACEIO reúne esas capas en una API gestionada y un SDK para navegador. Tu aplicación recibe un Facial ID y el resultado de autenticación, mientras tu backend sigue siendo responsable de la asignación del usuario, creación de sesiones, autorización y política de recuperación de cuentas. Los equipos suelen combinarlo con el servicio gestionado de autenticación facial para acelerar el despliegue.

Desarrollo interno

  • Meses de desarrollo
  • Evaluación y ajuste del motor de reconocimiento
  • Mantenimiento continuo para las particularidades de los navegadores
  • Trabajo de consentimiento, conservación, eliminación y políticas regionales

Uso de la API de FACEIO

  • Integración compacta del SDK para navegador
  • Comprobaciones de vivacidad incluidas en el flujo de captura
  • El SDK gestiona la cámara y la compatibilidad entre dispositivos
  • Mapeo de Facial ID y payload preparado para el backend

En resumen: FACEIO gestiona la captura en el navegador y el flujo de autenticación facial, mientras tu aplicación mantiene la lógica de sesiones y autorización. Para una visión más amplia de la arquitectura, consulta autenticación biométrica para aplicaciones web.

Capacidades principales de la API

La API de FACEIO y el fio.js SDK exponen dos métodos principales que cubren todo el ciclo de autenticación. Para controles por endpoint, consulta la referencia de la REST API.

  • enroll()

    Inicia el flujo de registro en el widget de FACEIO. Después del consentimiento explícito del usuario, el motor de reconocimiento facial configurado crea el hash biométrico no reversible o la entrada del índice de la aplicación, y FACEIO devuelve un Facial ID. Tu backend almacena ese Facial ID asociado al registro del usuario.

  • authenticate()

    Inicia un flujo de autenticación, comprueba la vivacidad y devuelve el Facial ID con cualquier payload asociado tras una coincidencia correcta. Tu backend puede validar el resultado y crear una sesión, incluidos los flujos de inicio de sesión sin contraseña descritos en Inicio de sesión biométrico para aplicaciones web.

Payloads y gestión de sesiones

Puedes adjuntar un payload definido por el desarrollador (por ejemplo, { user_id: "abc123" }) durante el registro. El mismo payload se devuelve tras una autenticación correcta, por lo que puedes asociar el evento de autenticación con tu registro interno sin consultas adicionales y emitir eventos de auditoría posteriores mediante webhooks.

Integrar la API de autenticación facial en cuatro pasos

La integración frontend es deliberadamente pequeña. El widget del SDK gestiona los permisos de cámara, la interfaz de captura y las comprobaciones de vivacidad, por lo que tu aplicación no tiene que implementar esas capas.

// Paso 1 - inserta el SDK en tu página
<script src="https://cdn.faceio.net/fio.js"></script>

// Paso 2 - inicializa con tu Public ID
const faceio = new faceIO('YOUR_APP_ID');

// Paso 3 - registra un usuario nuevo
faceio.enroll({ locale: 'auto', payload: { userId: 'abc123' } });

// Paso 4 - autentica en visitas posteriores
faceio.authenticate({ locale: 'auto' })
  .then((data) => sendToBackend(data.facialId, data.payload))
  .catch((err) => handleError(err));

Tras una llamada correcta de authenticate() , envía el facialId y el payload a tu servidor para crear una sesión de confianza. Para ver el recorrido completo, consulta la guía de integración, documentación de webhooks, y buenas prácticas de seguridad.

Seguridad y detección de vivacidad integradas

La API de FACEIO aplica una capa completa de seguridad en cada evento de autenticación. Estos controles están habilitados de forma predeterminada y no requieren configuración adicional. Para conocer la postura de la plataforma, consulta el Centro de confianza.

  • Vivacidad y protección contra spoofing

    Cada captura se comprueba para confirmar la presencia humana real y está diseñada para rechazar ataques de presentación comunes, como fotos, imágenes impresas, vídeos pregrabados, repeticiones de pantalla, medios sintéticos e intentos con máscaras.

  • Validación de la clave privada de la API

    Tu backend valida los eventos de autenticación con tu clave privada de la REST API. Mantén esa clave en el servidor para que las respuestas falsificadas o repetidas del frontend no se acepten como sesiones válidas.

  • Facial IDs aislados por aplicación

    Cada aplicación FACEIO está aislada. Los Facial IDs, payloads e índices del motor de reconocimiento están delimitados por aplicación, mientras que los límites de frecuencia de la plataforma ayudan a reducir los intentos de fuerza bruta.

Buena práctica: No expongas tu clave privada de API en el código del cliente. Mantén la validación de sesiones y la asignación de Facial ID en tu servidor. Consulta Buenas prácticas de seguridad y Buenas prácticas de privacidad para obtener orientación de implementación.

Elige tu patrón de implementación

La mayoría de las integraciones con FACEIO utilizan uno de dos patrones, según los requisitos de confianza y cumplimiento:

Patrón solo frontend

Adecuado para flujos de menor riesgo y prototipos. enroll() y authenticate() se ejecutan en el navegador, y el Facial ID devuelto se utiliza directamente para identificar al usuario e iniciar una sesión en el cliente.

Se publica rápido, pero la confianza de la sesión permanece en el cliente.

Verificación frontend + backend Recomendado

Después de que authenticate() devuelva un Facial ID en el frontend, tu aplicación lo envía al backend mediante una llamada de API autenticada. El servidor valida el resultado con tu clave privada, resuelve el usuario mediante el mapeo del payload y emite un token de sesión firmado. Este patrón se alinea con despliegues de autenticación sin contraseña.

Conclusión

FACEIO proporciona el flujo de captura y autenticación facial en el navegador sin que tengas que construir la pila de reconocimiento. La integración estándar utiliza una etiqueta script, los métodos enroll() y authenticate() del SDK, y la validación del resultado en el backend. Continúa con Primeros pasos y la Guía de integración.

Conecta FACEIO a tu flujo de inicio de sesión

Crea una aplicación FACEIO, copia su Public ID, carga fio.js y conecta los resultados de registro y autenticación al flujo de sesiones de tu backend.

Configuración del Public ID
SDK independiente del framework
Validación en el servidor