Configura facilmente la condivisione delle credenziali tra app e siti web Android

Ottimizza la praticità degli utenti abilitando la condivisione continua delle credenziali su più piattaforme nelle tue app e sui tuoi siti web. Quando più siti web e app Android condividono un di gestione degli account, questa funzionalità consente agli utenti di salvare e fare in modo che vengano suggeriti automaticamente su qualsiasi sito web o app per Android collegati.

Best practice

Per un'esperienza utente e una sicurezza ottimali, implementa la condivisione delle credenziali senza interruzioni attraverso questi touchpoint:

  • Modulo di accesso: attiva la compilazione automatica delle credenziali.
  • Modulo di registrazione: archivia in modo sicuro le nuove credenziali da utilizzare su più piattaforme.
  • Modulo di modifica della password: sincronizza gli aggiornamenti delle password su tutte le piattaforme.
  • Modulo di reimpostazione della password: consenti la reimpostazione delle singole password per aggiornare tutte le piattaforme.
  • Domini Webview: estendi la condivisione delle credenziali ai domini WebView all'interno di l'app che gestisce la gestione dell'account (accesso all'host, registrazione, password di modifica o di reimpostazione della password).
  • App per Android

Questo approccio crea un sistema unificato di gestione delle credenziali, migliorando la praticità e la sicurezza dell'utente.

Quando progetti i siti web per la gestione dell'account, ti consigliamo di seguire questi suggerimenti: best practice per siti di gestione account:

Durante la progettazione delle tue app per Android, ti consigliamo di integrarle con Gestore delle credenziali Android.

Prerequisiti

Prima di configurare la condivisione continua delle credenziali, assicurati di disporre di quanto segue per ogni piattaforma:

Per ogni app per Android:

Per ogni sito web:

  • Possibilità di pubblicare un file /.well-known/assetlinks.json su ogni rispettivo seguendo la sintassi Digital Asset Links (DAL).
  • Tutti i domini di gestione degli account (accesso, registrazione, modifica della password o password moduli di reimpostazione) devono essere accessibili tramite HTTPS.

Consenti la condivisione senza interruzioni delle credenziali tra app e siti web Android

Per configurare la condivisione continua delle credenziali tra app e siti web, crei e pubblicare elenchi di istruzioni Digital Asset Links che dichiarano quali (siti web o app per Android) possono condividere le credenziali.

Per dichiarare una relazione di condivisione delle credenziali:

  1. Crea un file assetlinks.json con estratti conto che rimandano al sito web e all'app per Android, seguendo la sintassi dell'elenco delle istruzioni per le istruzioni DAL:

    [
      {
        "relation":[
          "delegate_permission/common.get_login_creds"
        ],
        "target":{
          "namespace":"web",
          "site":URL
        }
      },
      {
        "relation":[
          "delegate_permission/common.get_login_creds"
        ],
        "target":{
          "namespace":"android_app",
          "package_name":"APP_ID",
          "sha256_cert_fingerprints":[
            "SHA_HEX_VALUE"
          ]
        }
      }
    ]
    

    Dove URL è l'URL del tuo sito, APP_ID è l'ID della tua app per Android, e SHA_HEX_VALUE è l'impronta SHA256 di il certificato di firma dell'app per Android.

    Il campo relation descrive la relazione da dichiarare. Per dichiarare che le app e i siti condividono le credenziali di accesso, specifica le relazioni come delegate_permission/common.get_login_creds. Scopri di più su Stringhe di relazione nei DAL.

    Il campo target è un oggetto che specifica la risorsa oggetto della dichiarazione a cui si applica.

    I seguenti campi identificano un sito web:

    namespace

    web

    site

    l'URL del sito web, nel formato https://domain[:optional_port]; ad esempio https://www.example.com.

    Se si utilizza la porta 443 per HTTPS, domain deve essere completo e optional_port deve essere omesso.

    Un target site può essere solo un dominio principale: non puoi limitare l'associazione di un'app a una sottodirectory specifica. Non includere un percorso nell'URL, ad esempio una barra finale.

    I sottodomini non vengono considerati corrispondenti. Ciò significa che se specifichi domain come www.example.com, il dominio www.counter.example.com non viene associato alla tua app.

    I seguenti campi identificano un'app per Android:

    spazio dei nomi

    android_app

    package_name

    Il nome del pacchetto dichiarato nel file manifest dell'app. Ad esempio, com.example.android

    sha256_cert_fingerprints

    Le fingerprint SHA256 del certificato di firma della tua app.

  2. Ospita il file JSON Digital Asset Links nella seguente posizione sulla domini di accesso: https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json , dove DOMAIN ha ottenuto la qualifica, e OPTIONAL_PORT deve essere omessa quando si utilizza la porta 443 per HTTPS.

  3. Dichiara l'associazione nell'app per Android incorporando un'istruzione nel tuo File res/values/strings.xml dell'app per Android che rimanda all'elenco degli estratti conto creato nel passaggio 1. Aggiungi un oggetto che specifichi i file assetlinks.json a cui caricamento. Ad esempio:

      <string name="asset_statements" translatable="false">
    [{
      \"include\": \"https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json\"
    }]
    </string>
    

    Sostituisci DOMAIN e OPTIONAL_PORT (deve essere omesso quando si utilizza la porta 443 per HTTPS), ad esempio https://www.example.com. Evadi da qualsiasi apostrofi e le virgolette utilizzate nella stringa.

    Puoi anche aggiungere uno snippet JSON nel file strings.xml come mostrato in la documentazione relativa alle DAL, ma l'utilizzo dell'istruzione include ti consente modificare le dichiarazioni senza pubblicare una nuova versione dell'app.

  4. Fai riferimento all'istruzione nel file manifest aggiungendo la seguente riga al file file AndroidManifest.xml dell'app in <application>:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  5. Pubblica la nuova versione della tua app per Android per lo sviluppatore Google Play Console

Dopo aver seguito questi passaggi, avrai configurato correttamente la credenziale la condivisione tra il tuo sito web e la tua app per Android.

Tieni presente che questo non è l'unico modo valido per impostare i DAL per la condivisione delle credenziali, ma semplifica il processo futuro di aggiunta di nuove entità una rete continua di condivisione delle credenziali, favorisce la riusabilità del codice e riduce possibili errori durante gli aggiornamenti.