Vai direttamente al contenuto

Configurazione iOS

Su iOS, le passkey funzionano solo quando l'app è associata allo stesso dominio di dipendenza del sito web.

Dopo aver aggiunto la configurazione del plugin e aver eseguito bunx cap syncIl plugin aggiusta il progetto host iOS generato in modo che non debba essere modificato manualmente:

  • aggiunge le webcredentials: voci delle domande associate per i domini configurati
  • wires CODE_SIGN_ENTITLEMENTS quando il target dell'app generato non punta già a un file di entità:

Deve essere pubblicato apple-app-site-association sul dominio di dipendenza:

https://signin.example.com/.well-known/apple-app-site-association

Esempio:

{
"webcredentials": {
"apps": ["ABCDE12345.app.capgo.passkey.example"]
}
}
  1. Impostazione origin e domains in plugins.CapacitorPasskey in capacitor.config.*.
  2. Esecuzione bunx cap sync.
  3. Conferma il tuo ID di team Apple e l'ID bundle dell'app, quindi costruisci il TEAMID.bundleId valore per il file di associazione.
  4. Host apple-app-site-association con HTTP 200 e no .json estensione.
  5. Assicurati che l'ID del partito che dipende dal tuo backend corrisponda al dominio associato.
  • Il file del sito web deve essere servito dal dominio esatto della chiave pass che utilizzi come ID del partito che dipende.
  • Dal plugin iOS 17.4 e versioni successive, il plugin utilizza il client-data di tipo browser-style API quindi l'origine HTTPS configurata viene riflessa in clientDataJSON.
  • Il plugin può patch i file di progetto nativi durante la sincronizzazione, ma non può creare o ospitare il file di associazione del sito web sul tuo dominio.