Saltar al contenido

WebAuthn

WebAuthn es la API del navegador para acceder con claves públicas. El servidor debe verificar la respuesta antes de aceptar la autenticación.

También conocido comoWeb Authentication API
Identidad y acceso

Utilizar claves públicas en el navegador

WebAuthn es una API del navegador para registrar y utilizar credenciales criptográficas de clave pública. Las passkeys emplean esta interfaz en la web. El registro utiliza navigator.credentials.create(); un acceso posterior utiliza navigator.credentials.get(). La API requiere un contexto seguro, normalmente HTTPS durante el funcionamiento web habitual.

La verificación del servidor forma parte del acceso

Un portal ficticio de proyectos genera un challenge nuevo y aleatorio para un intento de acceso. El navegador hace que se produzca una respuesta firmada. El identificador rpId vincula la operación al servicio previsto. Entre otras comprobaciones, el servidor del portal verifica la firma con la clave pública guardada, el challenge esperado y la vinculación al servicio. También verifica el origen esperado, formado por el protocolo, el nombre de host y el puerto del sitio.

El objeto devuelto por el navegador no constituye por sí solo un acceso correcto al portal. La aplicación acepta la autenticación únicamente tras la verificación del servidor. En este portal, cancelar el diálogo no genera un acceso confirmado; la interfaz debe mostrar ese estado de forma comprensible.

WebAuthn no organiza la sincronización entre dispositivos ni la recuperación de un acceso perdido. Esos flujos requieren decisiones propias. Después de acceder, el servidor sigue comprobando qué proyectos puede abrir o modificar la cuenta.

Fuentes