Autenticati su più fattori di forma

Gestore delle credenziali semplifica l'autenticazione nell'intero ecosistema Android. Offre un'esperienza coerente per gli utenti e una superficie API unificata per gli sviluppatori per utilizzare passkey, password e meccanismi di accesso federato come Accedi con Google. Sebbene l'interfaccia di programmazione principale rimanga coerente tra i fattori di forma, ogni fattore di forma presenta considerazioni uniche per l'interfaccia utente e l'esperienza utente. Per un'implementazione riuscita, è necessario adattare i flussi di autenticazione dell'app ai metodi di input, alle dimensioni dello schermo e ai contesti utente specifici di ogni dispositivo.

Questa guida fornisce una panoramica su come implementare Gestore delle credenziali su diversi fattori di forma Android, evidenziando le considerazioni principali e fornendo link a documentazione più dettagliata.

Dispositivi mobili

I dispositivi mobili, inclusi smartphone, tablet e dispositivi pieghevoli, rappresentano il target più comune per lo sviluppo di Android. L'implementazione standard di Gestore delle credenziali è adatta a questi dispositivi, che in genere sono dotati di touchscreen e tastiere sul dispositivo. L'esperienza utente su questo fattore di forma funge da base di riferimento da cui adattarsi agli altri. I flussi di autenticazione devono essere adatti al fattore di forma e utilizzare tutte le funzionalità dello spazio sullo schermo e dei metodi di input del dispositivo.

Wear OS

I dispositivi Wear OS sono caratterizzati da schermi piccoli e input limitati sul dispositivo. L'implementazione delle passkey di Gestore delle credenziali fornisce un ambiente sicuro in cui gli utenti possono accedere alle app, senza bisogno di uno smartphone associato connesso e senza dover ricordare una password.

L'API per Wear OS è identica a quella per dispositivi mobili, quindi puoi riutilizzare un'integrazione mobile esistente. Oltre a passkey, Accedi con Google e password con Gestore delle credenziali, puoi utilizzare altri metodi di autenticazione, tra cui la condivisione di token del livello dati, OAuth o le tue soluzioni esistenti. Questi possono essere utilizzati come backup durante la transizione degli utenti a Gestore delle credenziali o, nel caso della condivisione di token del livello dati, come soluzione a lungo termine.

L'utilizzo di Gestore delle credenziali per Wear OS presenta i seguenti requisiti:

  • Livello API minimo: minSdkVersion 33 o versioni successive
    • Include il supporto per password, passkey e Accedi con Google
  • Versione GMS: la stessa richiesta per le app mobile

L'interfaccia utente sui dispositivi Wear OS è la seguente:

Schermata di accesso con passkey mostrata come metodo di autenticazione preferito su Wear OS.
Figura 1a. Passkey.
Opzioni di passkey, password e Accedi con Google disponibili per un utente su Wear OS.
Figura 1b. Passkey, password e Accedi con Google.

Per indicazioni dettagliate sull'implementazione ed esempi di codice, consulta le seguenti risorse:

Limitazioni

L'utilizzo di Gestore delle credenziali su Wear OS presenta le seguenti limitazioni:

Android XR

Con Android XR (che include realtà virtuale e aumentata), le app vengono visualizzate nello spazio 3D. L'input utente è fondamentalmente diverso da quello di altri fattori di forma e si basa su input naturali come i gesti con la mano.

L'adattamento di Gestore delle credenziali per XR comporta la riprogettazione dell'interfaccia utente di autenticazione (con passkey, password o metodi di accesso federato) per uno spazio 3D. Ad esempio, le richieste di autenticazione vengono visualizzate in pannelli mobili e gli utenti effettuano le selezioni utilizzando i gesti delle mani. Devi inoltre tenere in considerazione eventuali prerequisiti hardware o software specifici per i dispositivi XR di destinazione.

Una sfida di progettazione fondamentale è la creazione di un'esperienza di autenticazione intuitiva e sicura in un ambiente VR o AR. Devi anche considerare come gestire l'identità negli scenari XR multiutente, in cui persone diverse potrebbero utilizzare lo stesso dispositivo.

L'utilizzo di Gestore delle credenziali per Android XR presenta i seguenti requisiti:

  • Livello API minimo: minSdkVersion 34 o versioni successive
  • Versione GMS: la stessa richiesta per le app mobile
  • Emulatore:
    • Immagine di sistema dell'emulatore minima:
      • macOS: immagine di sistema Google Play XR ARM 64 v8a Revisione 7
      • Windows: immagine di sistema Google Play XR Intel x86_64 Atom Revisione 7
    • Versioni dell'emulatore successive alla 35.6.11 Stable

Un'esperienza di accesso su XR potrebbe essere simile alla seguente:

Richiesta di accesso a Gestore delle credenziali visualizzata in un riquadro 3D mobile in Android XR.
Figura 2. Interfaccia utente di Gestore delle credenziali in XR.

Flussi non supportati da XR

Gestore delle credenziali in Android XR non supporta i flussi di autenticazione che richiedono a un altro dispositivo di scansionare un codice QR. Questo è osservabile durante le procedure di accesso sui visori XR e durante i test con l'emulatore.

Per scoprire di più su XR, vedi Android XR.

Android TV

I dispositivi Android TV sono in genere comuni, vengono visualizzati da lontano e vengono navigati utilizzando telecomandi con D-pad. L'inserimento di nomi utente e password in questo ambiente può essere difficile per gli utenti. Gestore delle credenziali semplifica l'autenticazione su Android TV supportando Accedi con Google, le password salvate e le passkey cross-device. Poiché spesso su una TV condivisa esistono più profili Google, Gestore delle credenziali si adatta a questa impostazione comune recuperando e visualizzando tutte le credenziali disponibili sul dispositivo, anziché limitare le scelte al solo account attualmente attivo.

Prompt di accesso di Gestore delle credenziali su Android TV che mostra gli account salvati per Accedi con Google e le password, insieme a un'opzione per utilizzare una passkey.
Figura 3. Interfaccia utente di Gestore delle credenziali su Android TV che mostra le opzioni Accedi con Google, password salvate e passkey.

Questa natura comune determina anche la gestione delle passkey. Poiché le TV non dispongono di un fattore di conoscenza della schermata di blocco personale (LSKF), le passkey non vengono memorizzate o create direttamente sulla TV. Al contrario, l'autenticazione tramite passkey utilizza un flusso ibrido cross-device in cui viene visualizzato un codice QR sulla TV e l'utente lo scansiona con il proprio dispositivo mobile per completare l'autenticazione biometrica.

Su Google TV è possibile un flusso senza clic se imposti isAutoSelectAllowed = true, ma solo se è disponibile esattamente una credenziale corrispondente. Verrà comunque visualizzato il riquadro inferiore della TV nativa, che mostra la conferma dell'account dell'utente. Se l'utente non annulla, la credenziale viene restituita automaticamente senza richiedere un clic remoto. Se sono presenti più credenziali corrispondenti, non verrà selezionata automaticamente e all'utente verrà chiesto di scegliere.

Se le tue app mobile e app TV condividono esattamente lo stesso nome pacchetto Android e la stessa chiave di firma, Gestore delle password di Google le riconosce come la stessa identità dell'app. Per questo motivo, una password salvata su un dispositivo mobile può essere offerta direttamente sulla TV senza richiedere la configurazione di Digital Asset Links (asset_statements). I Digital Asset Links sono necessari solo quando si condividono le credenziali tra i confini, ad esempio tra un'app e un sito web o tra app con nomi pacchetto diversi.

L'utilizzo di Gestore delle credenziali per Android TV presenta i seguenti requisiti:

  • Livello API minimo: Android 14 (livello API 34, minSdkVersion 34) o versioni successive
  • Versione GMS: 2026W30 o versioni successive
  • Hardware per le passkey: è necessario un dispositivo mobile secondario con fotocamera e Bluetooth per scansionare il codice QR e completare il flusso ibrido FIDO

Limitazioni

Poiché Android TV è un dispositivo comune, l'utilizzo di Gestore delle credenziali su questa piattaforma presenta le seguenti limitazioni intenzionali per proteggere la privacy e la sicurezza degli utenti:

  • Nessuna creazione o memorizzazione di passkey locali: le passkey non possono essere create o memorizzate direttamente sulla TV. Poiché le credenziali locali non sono supportate, non impostare preferImmediatelyAvailableCredentials su true nelle richieste; in questo modo vengono filtrate le passkey cross-device e le credenziali non vengono restituite.
  • Nessun provider di credenziali di terze parti: Android TV non supporta la compilazione automatica, quindi i gestori delle password di terze parti non sono disponibili sulla piattaforma. Gli utenti devono utilizzare Gestore delle password di Google.
  • Nessun Restore Credentials: l'accesso automatico ai nuovi dispositivi utilizzando Informazioni su Restore Credentials non è supportato su Android TV.

Per scoprire di più sullo sviluppo per TV, vedi Panoramica di Android TV.

Android Automotive OS

I dispositivi con Android Automotive OS (AAOS) sono sistemi comuni integrati nei veicoli. L'adattamento di Gestore delle credenziali per AAOS richiede il supporto dell'autenticazione sicura (in genere quando il veicolo è parcheggiato) e la gestione di più profili utente su un dispositivo condiviso.

Se porti un'app ottimizzata per schermi di grandi dimensioni o tablet sulle auto e la tua app supporta già Gestore delle credenziali e le passkey su smartphone o tablet, funziona su Android Automotive OS senza richiedere modifiche ai flussi di autenticazione.

L'autenticazione su Android Automotive OS supporta i seguenti metodi:

  • Passkey (flusso ibrido cross-device): gli utenti possono autenticarsi con le passkey esistenti tramite un flusso cross-device. Il sistema visualizza un codice QR sullo schermo dell'auto che l'utente scansiona con il proprio dispositivo mobile. Poiché la verifica biometrica e del blocco schermo avviene sullo smartphone dell'utente, gli utenti non devono configurare un blocco schermo sul display dell'auto.
  • Accedi con Google: visualizza la schermata nativa Accedi con Google direttamente sul display dell'auto.
  • Password salvate: gli utenti possono recuperare le password salvate da Gestore delle password di Google per accedere senza inserire manualmente le credenziali sullo schermo del veicolo.
Prompt per le passkey di Gestore delle credenziali visualizzato sullo schermo di un veicolo in Android Automotive OS.
Figura 5. Richiesta di passkey di Gestore delle credenziali su Android Automotive OS.

Android Automotive OS gestisce le sessioni e le credenziali per profilo, isolando i dati di sessione specifici dell'utente tra i profili (ad esempio, Profilo A, Profilo B o un profilo ospite).

L'utilizzo di Gestore delle credenziali per Android Automotive OS presenta i seguenti requisiti:

  • Livello API minimo: Android 9 (livello API 28, minSdkVersion 28) o versioni successive. Il recupero delle passkey cross-device richiede Android 14 (livello API 34) o versioni successive.
  • Versione GMS: la stessa richiesta per le app mobile.

Limitazioni dei test

Per testare le passkey è necessario un dispositivo fisico con una build di Android Automotive OS come superficie principale. Per le istruzioni di configurazione, vedi Testare utilizzando Android Automotive OS su Pixel Tablet. Gli emulatori non possono essere utilizzati per i test delle passkey perché non supportano Bluetooth Low Energy (BLE), necessario per il flusso ibrido FIDO.

Limitazioni e flussi non supportati

L'utilizzo di Gestore delle credenziali su Android Automotive OS presenta le seguenti limitazioni:

  • Nessuna memorizzazione o recupero di passkey locali: il recupero diretto delle passkey locali non è supportato perché i veicoli sono dispositivi comuni. La sincronizzazione delle passkey direttamente con il veicolo comporta un rischio per la sicurezza, pertanto le passkey devono essere utilizzate tramite il flusso ibrido cross-device.
  • Credenziali immediatamente disponibili non supportate: se la tua app richiede una passkey e imposta preferImmediatelyAvailableCredentials su true, l'interfaccia utente Automotive termina immediatamente e genera un NoCredentialException. Fornisci un'esperienza utente di fallback appropriata per questo scenario.
  • Nessun provider di credenziali di terze parti: i gestori delle password di terze parti non sono supportati su Android Automotive OS. Gli utenti devono utilizzare Gestore delle password di Google o flussi ibridi cross-device per autenticarsi.
  • Nessuna creazione di password memorizzate: l'API non supporta la creazione e il salvataggio di una nuova password memorizzata direttamente dall'interfaccia dell'auto. La creazione di credenziali è limitata alle nuove passkey che utilizzano il flusso ibrido FIDO.

Per scoprire di più sullo sviluppo per Automotive OS, vedi Panoramica di Android Automotive OS.

Risorse aggiuntive