Vai al contenuto

Configurazione Android

GitHub

Su Android, le passkey funzionano con il tuo sito web quando l'app e il dominio della relying-party sono collegati tramite Digital Asset Links.

After you add the plugin config and run bunx cap sync, il plugin applica le patch al progetto Android host generato:

  • inietta il asset_statements metadati del manifest
  • scrive la string resource generata e riferita da quei metadati

Devi pubblicare assetlinks.json sul dominio della relying-party:

https://signin.example.com/.well-known/assetlinks.json

Esempio:

[
{
"relation": [
"delegate_permission/common.handle_all_urls",
"delegate_permission/common.get_login_creds"
],
"target": {
"namespace": "android_app",
"package_name": "app.capgo.passkey.example",
"sha256_cert_fingerprints": [
"AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99"
]
}
}
]
  1. Imposta origin e domains nella plugins.CapacitorPasskey nella capacitor.config.*.
  2. Esegui bunx cap sync.
  3. Usa il nome package Android reale in assetlinks.json.
  4. Aggiungi tutti gli fingerprint dei certificati di firma necessari, inclusi quelli di debug o di firma interna, se testi tali build.
  5. Ospita il file sullo stesso dominio che usi come relying-party ID.

Differenza di comportamento importante rispetto al browser

Sezione intitolata “Differenza di comportamento importante rispetto al browser”

Con i Digital Asset Links configurati, Android può usare lo stesso relying party e le stesse passkey del tuo sito. La differenza rimanente è l'origin letterale riportata nelle app native clientDataJSON.

  • Una normale app Android non si comporta come un browser privilegiato.
  • L'assertion origin può essere legata alla firma dell'app Android invece che all'origin del tuo sito web.
  • Se il tuo backend effettua una validazione rigorosa clientDataJSON.origin, accetta l'origin dell'app Android insieme a quello del sito web.

Se stai usando Configurazione Android per pianificare i flussi di autenticazione e account, collegandolo a Utilizzo di @capgo/capacitor-passkey per la funzionalità nativa in Utilizzo di @capgo/capacitor-passkey, @capgo/capacitor-social-login per i dettagli di implementazione in @capgo/capacitor-social-login, @capgo/capacitor-passkey per i dettagli di implementazione in @capgo/capacitor-passkey, @capgo/capacitor-native-biometric per i dettagli di implementazione in @capgo/capacitor-native-biometric, e Autenticazione a due fattori per i dettagli sull'implementazione dell'autenticazione a due fattori.