API Signal per le passkey su Chrome per computer

Data di pubblicazione: 13 novembre 2024

A partire da Chrome 132, Chrome per computer (macOS, Windows, Linux e ChromeOS) supporta l'API Signal, che può mantenere le passkey sui fornitori di passkey in linea con le credenziali della chiave pubblica sul server della terza parte attendibile.

Quando viene creata una passkey (una credenziale rilevabile), i metadati come un nome utente e un nome visualizzato vengono salvati nel fornitore di passkey (ad esempio un gestore delle password) insieme alla chiave privata, mentre la credenziale della chiave pubblica viene salvata nel server della terza parte attendibile (RP). Il salvataggio del nome utente e del nome visualizzato aiuta l'utente a identificare la passkey con cui accedere, perché all'utente viene chiesto di selezionare una passkey al momento dell'accesso. Questa funzionalità è particolarmente utile se l'utente ha più di due passkey di fornitori diversi.

Tuttavia, in alcuni casi le differenze tra l'elenco delle passkey sul fornitore di passkey e l'elenco delle credenziali sul server possono causare confusione.

Il primo caso si verifica quando un utente elimina una credenziale sul server lasciando invariata la passkey nel fornitore di passkey. La volta successiva che l'utente tenterà di accedere con la passkey, questa verrà comunque presentata dall'utente al provider della passkey. Tuttavia, il tentativo di accesso non andrà a buon fine perché il server non potrà eseguire la verifica con la chiave pubblica eliminata.

Il secondo caso si verifica quando un utente aggiorna il proprio nome utente o il nome visualizzato sul server. Al successivo accesso dell'utente, la passkey nel fornitore di passkey continua a mostrare il vecchio nome utente e il vecchio nome visualizzato anche se sono stati aggiornati sul server. Idealmente dovrebbero essere sincronizzati.

API Signal

L'API WebAuthn Signal consente agli RP di segnalare le credenziali esistenti ai fornitori di passkey collegati. In questo modo, un fornitore di passkey di supporto può aggiornare o rimuovere le passkey errate o revocate dal proprio spazio di archiviazione in modo che sia coerente con il server.

Ad esempio, quando un utente non riesce ad accedere a un RP perché la credenziale associata sul server RP non esiste più, l'RP può utilizzare l'API Signal per segnalare al fornitore di passkey che la credenziale eliminata non è più valida, in modo che il fornitore possa eliminare la passkey associata.

Un altro esempio è quando un utente accede alla pagina delle impostazioni dell'RP ed elimina la credenziale esistente. L'RP può utilizzare l'API Signal per segnalare un elenco di credenziali disponibili al fornitore di passkey, in modo che il fornitore possa mantenere sincronizzate le passkey associate.

Una finestra di dialogo visualizzata quando una passkey viene eliminata da Gestore delle password di Google su Chrome.
Una finestra di dialogo visualizzata quando una passkey viene eliminata da Gestore delle password di Google su Chrome.

Può anche segnalare il nome utente e il nome visualizzato aggiornati, in modo che i metadati della passkey memorizzati per lo stesso utente possano essere aggiornati.

Ad esempio, quando un utente aggiorna il proprio nome utente o nome visualizzato nell'RP, quest'ultimo può utilizzare l'API Signal per segnalare le informazioni utente aggiornate al fornitore di passkey, in modo che il fornitore possa mantenere sincronizzate le informazioni utente delle passkey associate.

Una finestra di dialogo visualizzata quando i metadati di una passkey vengono aggiornati in Gestore delle password di Google su Chrome.
Una finestra di dialogo visualizzata quando i metadati di una passkey vengono aggiornati in Gestore delle password di Google su Chrome.

Gestore delle password di Google su Chrome per computer implementa l'AP Signal. Per i fornitori di passkey basate su estensioni di Chrome, è a loro discrezione decidere se riflettere o meno l'indicatore.

Prevediamo di supportare l'API Signal su Chrome per Android in futuro.

Per scoprire come integrare l'API Signal WebAuthn, leggi l'articolo Mantenere sincronizzato l'elenco delle passkey con il server utilizzando l'API Signal.