Comienza con FACEIO
Implementa autenticación facial sin contraseña en menos de 5 minutos. Crea una aplicación FACEIO, revisa sus opciones de seguridad y privacidad, integra fio.js, y después utiliza enroll() para usuarios nuevos y authenticate() para usuarios existentes.
Crea una aplicación en FACEIO Console, copia su Public ID y utilízalo para inicializar fio.js en tu sitio o aplicación web.
FACEIO en menos de 5 minutos
Una guía práctica de configuración para sitios y aplicaciones web
Esta guía cubre la secuencia de integración de FACEIO: crea una aplicación en
FACEIO Console ↗, selecciona un motor de reconocimiento facial, revisa la configuración de seguridad y privacidad, carga la biblioteca fio.js, registra usuarios nuevos, autentica usuarios existentes y administra la aplicación desde Console.
Consejo rápido
Consulta la plantilla HTML de integración para ver un ejemplo funcional de registro y autenticación.
Ejemplo de integración: Consulta implementaciones de FACEIO en tutoriales de la comunidad para distintos frameworks.
Pasos de integración de FACEIO
Sigue la secuencia desde la creación de la aplicación hasta la configuración de producción:
Cómo funciona FACEIO
Comprende cómo FACEIO añade registro facial y autenticación a un sitio o aplicación web.
Lista de integración
Revisa los pasos necesarios para integrar fio.js en tu sitio o aplicación web.
Crea tu aplicación
Configura tu primera aplicación FACEIO, elige un motor de reconocimiento facial, revisa las opciones de seguridad y personaliza el widget.
Añade la biblioteca fio.js
Integra la biblioteca fio.js en tu sitio web e inicialízala con el Public ID de tu aplicación.
enroll() y authenticate()
Consulta los métodos de fio.js utilizados para registrar usuarios nuevos y autenticar usuarios existentes.
Registra tu primer usuario
Implementa el registro y la autenticación con ejemplos funcionales y adapta el resultado a la lógica de cuentas y sesiones de tu backend.
Plantilla de integración
Utiliza una plantilla HTML con ejemplos de registro y autenticación.
Administra tu aplicación
Consulta la actividad, configura la seguridad, añade webhooks, recupera las claves API y administra el índice facial.
Introducción a FACEIO
Cómo FACEIO añade autenticación facial a los flujos de acceso web
Resumen
FACEIO es un framework de autenticación facial compatible con distintos navegadores para sitios y aplicaciones web. Su biblioteca fio.js abre el widget de registro y autenticación desde tu frontend y devuelve un Facial ID y el payload de la aplicación para el flujo de cuenta.
¿Qué es FACEIO?
-
FACEIO es un framework de autenticación facial compatible con distintos navegadores, disponible como servicio administrado o despliegue on-premises. Su biblioteca JavaScript para el cliente,
fio.js, añade flujos de registro y autenticación a sitios y aplicaciones web. -
Añade
fio.jsa tu frontend e inicialízala con el Public ID de la aplicación. Los usuarios nuevos se registran medianteenroll(), mientras que los usuarios existentes acceden medianteauthenticate()desde un navegador y una cámara compatibles. -
Tu backend debe asociar el Facial ID devuelto con la cuenta correspondiente, aplicar sus propias reglas de autorización y sesión, y ofrecer un método de recuperación a quienes no puedan completar la autenticación facial.
-
FACEIO funciona con webcams estándar y cámaras frontales de teléfonos en navegadores modernos compatibles, sin exigir un sensor biométrico dedicado. La biblioteca JavaScript
fio.jses independiente del framework y se integra con stacks frontend y backend habituales.
Funciones principales de FACEIO
Compara una captura nueva con el índice facial registrado y devuelve un resultado de autenticación sin solicitar contraseña ni OTP en el flujo principal de FACEIO.
Selecciona un motor de reconocimiento facial compatible y una región de despliegue al configurar la aplicación.
La biblioteca fio.js es independiente del framework y se integra con JavaScript, React, Vue, Angular, Next.js y otros stacks frontend.
Funciona en navegadores modernos compatibles con una webcam estándar o una cámara frontal. Crear una aplicación ↗
Es compatible con versiones actuales de los principales navegadores, según el acceso a la cámara y las funciones disponibles.
Incluye comprobaciones de vivacidad y validación mediante PIN Code, activada por defecto, en el flujo de autenticación facial.
Ofrece controles de seguridad configurables y prácticas de privacidad documentadas sin exigir un sensor biométrico dedicado.
Admite motores de reconocimiento facial en la nube y PixLab Insight on-premises. El motor seleccionado administra los hashes biométricos según la configuración del propietario de la aplicación.
Privacidad y protección de datos
-
Los propietarios de aplicaciones deben proporcionar los avisos y el consentimiento requeridos, mantener un método de acceso alternativo y atender las solicitudes de eliminación. Consulta la guía de prácticas de privacidad antes del despliegue en producción.
-
FACEIO no almacena, gestiona ni accede a hashes biométricos. El motor de reconocimiento facial seleccionado por el propietario de la aplicación los administra según su configuración de despliegue y almacenamiento. Consulta el Trust Center para obtener información sobre privacidad y seguridad del servicio.
Consejo rápido
Consulta la plantilla HTML de integración o consulta las preguntas frecuentes para obtener más información.
Lista de integración
Pasos esenciales para integrar fio.js
Empieza por crear una aplicación FACEIO en FACEIO Console ↗ y vincularla con tu sitio o aplicación web. Después carga e inicializa fio.js, registra un usuario de prueba y comprueba el flujo de autenticación para usuarios existentes.
Antes de comenzar
Las guías oficiales con ejemplos de código están disponibles en el Centro para desarrolladores.
Sigue estos pasos para habilitar la autenticación facial:
Accede a FACEIO Console
Inicia sesión en FACEIO Console ↗ con tu correo electrónico. Después utiliza el Asistente de aplicaciones para crear tu primera aplicación FACEIO y vincularla con tu sitio o aplicación web.
Configura tu aplicación
El Asistente de aplicaciones guía el proceso de configuración. Introduce un nombre para la aplicación, selecciona un motor de reconocimiento facial, elige una región en la nube, revisa las opciones de seguridad y personaliza el widget.
Integra la biblioteca fio.js
Después de crear la aplicación FACEIO, integra fio.js, la biblioteca JavaScript de autenticación facial, en tu sitio web e inicialízala con el Public ID de la aplicación.
Prueba el registro y la autenticación
Después de cargar e inicializar fio.js, llama a
enroll() y
authenticate()
para un usuario nuevo y uno existente, como se explica en las siguientes secciones.
Recursos adicionales
Crea tu aplicación
Configura tu aplicación FACEIO desde Console
-
Antes de integrar
fio.jsy habilitar la autenticación facial para tus usuarios, debes vincular tu sitio o aplicación web con una aplicación FACEIO desde FACEIO Console ↗. -
Cada usuario registrado recibe un Facial ID, y tu aplicación puede asociar sus propios metadatos mediante el parámetro
payload. El motor de reconocimiento facial seleccionado administra el hash biométrico en un índice aislado de la aplicación. FACEIO no almacena, gestiona ni accede a hashes biométricos. Revisa el motor, la región de despliegue y la configuración de privacidad en el Administrador de aplicaciones de Console ↗. -
Puedes crear una aplicación nueva en FACEIO Console ↗ en pocos minutos mediante el Asistente de aplicaciones. El asistente guía la asignación del nombre, la selección del motor de reconocimiento facial, la configuración de seguridad y la personalización del Widget.
Crea y configura la aplicación:
Accede a FACEIO Console ↗.
En la vista principal de Console, selecciona Nueva aplicación. Se abrirá el Asistente de aplicaciones.
En el Asistente de aplicaciones, sigue las instrucciones en pantalla. Introduce el nombre de la aplicación y la URL de la política de privacidad, y selecciona un motor de reconocimiento facial, una región en la nube o un despliegue on-premises, las opciones de seguridad y la personalización del widget.
Abrir el Asistente de aplicaciones
Revisa la configuración y envíala. Cuando se cree la aplicación, accederás al Administrador de aplicaciones ↗, donde podrás administrarla y consultar la guía de integración.
Aplicación creada
Copia el Public ID de la aplicación desde Console. Lo utilizarás para inicializar fio.js antes de llamar a enroll() o authenticate().
Añade la biblioteca fio.js
Integra la biblioteca de autenticación facial en tu sitio web
Documentación completa
La documentación oficial está disponible en la Guía de integración.
Después de crear tu primera aplicación desde
FACEIO Console ↗, debes integrar fio.js, la biblioteca JavaScript de autenticación facial de FACEIO, en tu sitio o aplicación web. Este paso es necesario antes de habilitar la autenticación facial para tus usuarios. La configuración básica requiere tres líneas de código, como se muestra a continuación.
1
Carga fio.js en tu sitio
Pega el siguiente fragmento antes de la etiqueta de cierre </body> de las páginas HTML donde utilizarás fio.js:
fio.js se carga desde el recurso de FACEIO en CDN ↗.
El fragmento anterior carga fio.js de forma asíncrona. Una página HTML básica puede inicializar la biblioteca así:
Página HTML básica con fio.js cargado
-
Consulta la plantilla HTML de integración para obtener una plantilla completa que puedes copiar, adaptar y probar en tu servidor.
-
Carga siempre
fio.jsdirectamente desde cdn.faceio.net ↗. No alojes una copia local, ya que no recibiría las correcciones y actualizaciones publicadas.
2
Crea un objeto faceIO
Para inicializar fio.js, crea un objeto faceIO() y pasa el Public ID de la aplicación, como se muestra a continuación. Puedes colocarlo después del código de carga del paso 1. Consulta la plantilla HTML completa.
Fragmento JavaScript para crear un nuevo objeto faceIO()
Antes de continuar, encontrarás el Public ID en el Administrador de aplicaciones de FACEIO Console ↗. Comprueba que has:
- Creado una aplicación FACEIO, seleccionado un motor de reconocimiento facial y activado la aplicación desde FACEIO Console ↗
- Revisado las opciones de seguridad, incluidos los requisitos de PIN Code y las restricciones de dominio, en el Administrador de aplicaciones ↗ y la guía de prácticas recomendadas de seguridad
- Revisado las recomendaciones de privacidad en la guía de prácticas recomendadas de privacidad, incluido el tratamiento de los Facial IDs únicos
3 Abre el widget
fio.js ya está cargado e inicializado. Llama a enroll() para registrar un usuario nuevo o a authenticate() para autenticar un usuario existente.
-
enroll()se utiliza para registrar usuarios nuevos (registro) -
authenticate()se utiliza para autenticar usuarios existentes (inicio de sesión)
Esta página HTML básica integra fio.js:
Página HTML con fio.js preparado para llamar a enroll() o
authenticate()
Plantilla de referencia
El HTML Boilerplate incluye una implementación de referencia con los métodos enroll() y authenticate().
Revisa ahora los métodos que fio.js ofrece antes de registrar el primer usuario.
Métodos de registro y autenticación
Usa enroll() para usuarios nuevos y authenticate() para usuarios existentes
fio.js proporciona dos métodos principales para el flujo de autenticación facial:
Método enroll()
-
Llama a
enroll()en el objetofaceIOinicializado para registrar un usuario nuevo. El método abre el Widget de FACEIO e inicia el registro facial desde la página de registro o incorporación de tu sitio. -
Al llamar a
enroll(), el widget de FACEIO se abre, solicita el consentimiento y el acceso a la cámara cuando corresponde, y captura los datos necesarios. El motor de reconocimiento facial seleccionado genera e indexa el hash biométrico utilizado para futuras autenticaciones. -
enroll()acepta varios parámetros opcionales, comolocalepara el idioma del widget,permissionTimeoutpara el tiempo de espera del permiso de cámara ypayload, que contiene datos propios que puedes asociar al usuario como un correo electrónico, nombre o identificador. El payload se devuelve después de una futura autenticación. -
enroll()devuelve una Promise que se resuelve con un objetouserInfocuando el registro se completa. Incluye el Facial ID, la fecha de registro y las estimacionesdetails.ageydetails.gender. Usa el Facial ID como clave de consulta para la cuenta correspondiente durante una futura autenticación. -
Si el usuario rechaza el acceso a la cámara o los Términos de servicio, la Promise se rechaza con el código de error correspondiente, como
fioErrCode.PERMISSION_REFUSEDofioErrCode.TERMS_NOT_ACCEPTED. Consulta la sección Códigos de error para ver la lista. -
El método
enroll(), sus parámetros, valores devueltos y errores están documentados en la Guía de integración.
Método authenticate()
-
Llama a
authenticate()en el objetofaceIOinicializado para reconocer a un usuario registrado. Utilízalo desde el flujo de inicio de sesión de tu sitio o aplicación web. -
Al llamar a
authenticate(), el widget de FACEIO se abre, solicita acceso a la cámara cuando corresponde, ejecuta las comprobaciones configuradas de vivacidad y reconocimiento facial, y devuelve el resultado. -
Según la configuración de seguridad, después de que el motor reconozca al usuario, deberá confirmar el PIN Code elegido durante el registro) para que el método
authenticate()se complete. -
authenticate()acepta varios parámetros opcionales, incluidospermissionTimeoutpara el tiempo de espera del permiso de cámara,localepara el idioma y otras opciones documentadas aquí. -
authenticate()devuelve una Promise que se resuelve con un objetouserDatacuando la autenticación se completa. Sus propiedades principales son:payload(los datos vinculados durante el registro) yfacialId(el identificador único del usuario). Puedes utilizarlos como claves de consulta en tu backend. -
El método
authenticate(), sus parámetros, valores devueltos y errores están documentados en la Guía de integración.
Siguiente paso
A continuación, utiliza ambos métodos en ejemplos funcionales de registro y autenticación.
Registra y autentica tu primer usuario
Ejemplos funcionales de registro y autenticación
Para iniciar el reconocimiento facial, llama a
enroll() o authenticate(), los dos métodos principales de la clase faceIO() que has creado. enroll() se utiliza para registrar usuarios nuevos, mientras que authenticate() autentica a los usuarios existentes.
Registrar un usuario nuevo
El registro de un usuario nuevo (la captura y el indexado de sus características faciales tras obtener el consentimiento) se inicia mediante una llamada a enroll():
Invocación básica del método enroll()
-
Inicialización: Crea el objeto
faceIOcon el Public ID de tu aplicación. Sustituye"app-public-id"por el Public ID disponible en FACEIO Console ↗. -
Llamada de registro:
enroll()inicia el registro, solicita el consentimiento y el acceso a la cámara cuando corresponde, y comienza la extracción de características faciales. El parámetropayloadpermite asociar datos propios, como un ID de usuario (whoami) y un correo electrónico. Este payload se devolverá después de una futura autenticación. -
Resultado del registro: Cuando el registro se completa, la Promise se resuelve con un objeto
userInfoque contiene el Facial ID, la fecha de registro y las estimacionesdetails.genderydetails.age. Guarda el Facial ID en tu base de datos para vincular futuras autenticaciones con el usuario. -
Tratamiento de errores: Captura los fallos de registro e implementa una función
handleError()para tratar cada código. Consulta la documentación de códigos de error para ver los códigos disponibles.
Autenticar un usuario existente
De forma similar, la autenticación de un usuario registrado anteriormente se inicia mediante una llamada a authenticate():
Invocación básica del método authenticate()
-
Inicialización: Inicializa el objeto
faceIOcon el Public ID, como en el ejemplo de registro. -
Llamada de autenticación:
authenticate()inicia la autenticación, solicita acceso a la cámara cuando corresponde y ejecuta el reconocimiento facial. El parámetrolocaledefine el idioma del widget. -
Resultado de la autenticación: Cuando la autenticación se completa, la Promise se resuelve con un objeto
userData.userData.facialIdes el identificador estable del usuario en sus autenticaciones. Utilízalo como clave principal para consultar al usuario en tu backend. EluserData.payloadcontiene los datos asociados durante el registro, por ejemplo{"whoami": 123456, "email": "john.doe@example.com"}. -
Tratamiento de errores: Captura los fallos de autenticación e implementa una función
handleError()para tratar cada código devuelto. Consulta la documentación de códigos de error para ver los códigos disponibles.
Siguiente paso
El plantilla HTML de integración incluye una implementación de referencia que combina enroll() y authenticate()
en una plantilla inicial.
Plantilla completa de integración
Plantilla HTML inicial con el flujo de integración
La plantilla HTML combina inicialización, registro, autenticación y tratamiento de errores. Adapta la vinculación de cuentas, la gestión de sesiones, la recuperación y los mensajes antes de utilizarla en producción. El código también está disponible como Gist de GitHub ↗.
Importante: sustituye los valores de ejemplo
Sustituye el valor app-public-id por el Public ID real de tu aplicación
al inicializar fio.js. Encontrarás el Public ID en el Administrador de aplicaciones de FACEIO Console ↗.
Plantilla
Notas de implementación
- Llamadas a métodos: El ejemplo llama a
enroll()para registrar usuarios nuevos y aauthenticate()para autenticar usuarios existentes. Revisa sus opciones, valores devueltos y errores en la Guía de integración antes de adaptar el ejemplo. -
Personaliza el payload: Modifica el
payloaddel métodoenroll()para asociar tus datos con los usuarios registrados. El payload se devuelve durante futuras autenticaciones. Consulta laenroll()documentación para obtener más información. - Servidor HTTP necesario:
fio.jsdebe cargarse desde un servidor HTTP debido a los requisitos de seguridad del navegador. No funciona directamente desde el sistema de archivos. Publica la plantilla en tu servidor y ábrela desde el navegador. Consulta la guía de prácticas recomendadas de seguridad para obtener más información. - Guarda el Facial ID: Después del registro, guarda el
facialIddevuelto en tu base de datos y vincúlalo con la cuenta. Sirve como clave de consulta para futuras autenticaciones. - Tratamiento de errores: El controlador recibe los códigos de error devueltos. Adapta cada mensaje a la interfaz y al flujo de recuperación de tu sitio o aplicación web.
Ejemplo de integración completo
Ya tienes una implementación de referencia para cargar fio.js, llama a enroll() y llamar a authenticate(). A continuación, revisa la administración de la aplicación y la configuración para producción.
Administra tu aplicación
Revisa la configuración, los eventos, los usuarios y el acceso a la API
Utiliza el Administrador de aplicaciones en FACEIO Console ↗ para revisar y configurar cada aplicación después de integrar fio.js:
Actividad de la aplicación
Consulta la actividad de registro y autenticación de la aplicación.
Configuración de seguridad
Configura los ajustes de seguridad, incluidos los requisitos de PIN Code, el filtrado de dominios y las restricciones por país.
Administración de usuarios
Elimina Facial IDs registrados cuando debas atender el derecho de supresión de un usuario.
Integración de webhooks
Configura webhooks para recibir eventos y sincronizarlos con tu backend.
Administración del índice facial
Administra el índice facial, amplía el almacenamiento, migra a on-premiseo transfiérelo a un bucket S3.
Personalización del widget
Adapta el tema, los colores y el diseño del widget a tu sitio web.
Administración de claves API
Obtén tus claves API y consulta las llamadas y cuotas de la API.
Soporte y mantenimiento
Utiliza los canales de soporte para abrir tickets, cambiar de plan o administrar el ciclo de vida de la aplicación.
Recursos y guías
Continúa la integración de FACEIO
Crea una aplicación, prueba el registro y la autenticación, vincula el Facial ID con las cuentas de tu backend y revisa las guías de seguridad y privacidad antes del despliegue.