Configurez le partage d'identifiants entre les applications Android et les sites Web

Optimiser la commodité pour l'utilisateur en activant le partage d'identifiants fluide entre plates-formes sur l'ensemble de vos applications et sites Web. Lorsque plusieurs sites Web et applications Android partagent une de gestion du compte, cette fonctionnalité permet aux utilisateurs d'enregistrer leurs identifiants et les suggérer automatiquement sur un site Web ou une appli Android associés.

Bonnes pratiques

Pour une expérience utilisateur et une sécurité optimales, implémentez un partage d'identifiants fluide. entre ces points de contact:

  • Sign-in form (Formulaire de connexion) : activez la saisie automatique des identifiants.
  • Formulaire d'inscription: stockez en toute sécurité les nouveaux identifiants que vous pourrez utiliser sur différentes plates-formes.
  • Formulaire de changement de mot de passe: synchronisez la mise à jour des mots de passe sur toutes les plates-formes.
  • Formulaire de réinitialisation du mot de passe: autorisez les réinitialisations de mot de passe uniques pour mettre à jour toutes les plates-formes.
  • Domaines WebView: étendez le partage d'identifiants aux domaines WebView dans votre application pour gérer la gestion des comptes (connexion de l'hôte, inscription, mot de passe les formulaires de modification ou de réinitialisation de mot de passe).
  • Applications Android

Cette approche crée un système unifié de gestion des identifiants, améliorant ainsi à la fois la commodité et la sécurité pour les utilisateurs.

Lors de la conception de vos sites Web de gestion de compte, nous vous suggérons de suivre ces bonnes pratiques pour les sites de gestion de compte:

Lors de la conception de vos applications Android, nous vous recommandons d'intégrer votre application avec le Gestionnaire d'identifiants Android.

Prérequis

Avant de configurer un partage d'identifiants fluide, assurez-vous de disposer des éléments suivants pour chaque plate-forme:

Pour chaque application Android:

Pour chaque site Web:

  • Possibilité de publier un fichier /.well-known/assetlinks.json pour chacun , en respectant la syntaxe des liens vers des ressources numériques (DAL).
  • Tous les domaines de gestion des comptes (connexion, inscription, modification du mot de passe ou mot de passe) formulaires de réinitialisation) doivent être accessibles via HTTPS.

Partagez facilement vos identifiants entre les applications Android et les sites Web

Pour configurer un partage fluide des identifiants entre les applications et les sites Web, vous créez et publier des listes de déclarations Digital Asset Links qui déclarent quels éléments entités (sites Web ou applications Android) sont autorisées à partager des identifiants.

Pour déclarer une relation de partage des identifiants:

  1. Créez un fichier assetlinks.json contenant des instructions redirigeant vers le site Web et à l'application Android, en respectant la syntaxe de la liste des instructions 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"
          ]
        }
      }
    ]
    

    URL correspond à l'URL de votre site, APP_ID est votre ID d'application Android ; et SHA_HEX_VALUE est l'empreinte SHA256 de le certificat de signature de votre application Android.

    Le champ relation décrit la relation déclarée. Pour déclarer que les applications et les sites partagent des identifiants de connexion, spécifiez les relations comme delegate_permission/common.get_login_creds En savoir plus sur Chaînes de relations dans les DAL.

    Le champ target est un objet qui spécifie l'élément auquel la déclaration s'applique.

    Les champs suivants identifient un site Web :

    namespace

    web

    site

    URL du site Web, au format https://domain[:optional_port]. Exemple : https://www.example.com.

    domain doit être complet, et optional_port doit être omis si vous utilisez le port 443 pour HTTPS.

    Une cible site ne peut être qu'un domaine racine: vous ne pouvez pas limiter une association d'applications à un sous-répertoire spécifique. N'incluez pas de chemin d'accès dans l'URL, comme une barre oblique finale.

    Les sous-domaines ne sont pas considérés comme identiques. En d'autres termes, si vous spécifiez www.example.com pour le champ domain, le domaine www.counter.example.com n'est pas associé à votre application.

    Les champs suivants identifient une application Android :

    espace de noms

    android_app

    package_name

    Nom de package déclaré dans le fichier manifeste de l'application. Par exemple, com.example.android.

    sha256_cert_fingerprints

    Empreinte SHA256 du certificat de signature de votre application.

  2. Hébergez le fichier JSON Digital Asset Links à l'emplacement suivant sur le domaines de connexion: https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json , où DOMAIN est un terme complet ; et OPTIONAL_PORT doit être omis si vous utilisez le port 443 pour HTTPS

  3. Déclarez l'association dans l'application Android en intégrant une instruction dans votre Fichier res/values/strings.xml de l'application Android qui renvoie à la liste d'instructions que vous créé à l'étape 1. Ajoutez un objet qui spécifie les fichiers assetlinks.json dans de votre application. Exemple :

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

    Remplacez DOMAIN et OPTIONAL_PORT (doit être omis lors de l'utilisation du port 443 pour HTTPS), par exemple https://www.example.com. Échappez aux apostrophes et guillemets que vous utilisez dans la chaîne.

    Vous pouvez également ajouter un extrait de code JSON dans votre fichier strings.xml, comme indiqué dans la documentation sur les DAL, mais l'utilisation de l'instruction include vous permet des instructions de modification sans publier de nouvelle version de votre application.

  4. Référencez l'instruction dans le fichier manifeste en ajoutant la ligne suivante à votre fichier le fichier AndroidManifest.xml de l'application sous <application>:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  5. Publier la nouvelle version de votre application Android auprès du développeur Google Play Console

Après avoir suivi ces étapes, vous avez réussi à configurer des identifiants fluides entre votre site Web et votre application Android.

Notez que ce n'est pas le seul moyen valide de configurer des DAL pour le partage des identifiants, mais cette approche simplifie le processus futur d'ajout de nouvelles entités un réseau de partage d'identifiants fluide, favorise la réutilisabilité du code et réduit des erreurs lors des mises à jour.