Nahtlose Freigabe von Anmeldedaten für Android-Apps und -Websites einrichten

Maximieren Sie die Nutzerfreundlichkeit, indem Sie die plattformübergreifende Weitergabe von Anmeldedaten in Ihren Apps und auf Ihren Websites aktivieren. Wenn mehrere Websites und Android-Apps dasselbe Kontoverwaltungs-Backend verwenden, können Nutzer mit dieser Funktion ihre Anmeldedaten einmal speichern und sie sich dann auf jeder verknüpften Website oder in jeder verknüpften Android-App automatisch vorschlagen lassen.

Es gibt zwei unterstützte Methoden zum Einrichten der Anmeldedatenfreigabe:

  • Play Console: Wird für die meisten Entwickler empfohlen, wenn sie die Freigabe von Anmeldedaten für Android-Apps einrichten. Mit dieser Methode können Sie die Freigabe von Anmeldedaten konfigurieren, ohne eine neue Version Ihrer App veröffentlichen zu müssen. Beachten Sie, dass Sie auch bei Verwendung der Play Console eine gültige assetlinks.json-Datei auf Ihrer Website veröffentlichen müssen.
  • Digital Asset Links (DALs): Geeignet für erweiterte Anwendungsfälle, z. B. die Unterstützung mehrerer Apps oder Domains mit komplexeren Konfigurationen.

Best Practices

Für eine optimale Nutzererfahrung und Sicherheit sollten Sie die Anmeldedaten an folgenden Stellen nahtlos teilen:

  • Anmeldeformular: Aktivieren Sie das automatische Ausfüllen von Anmeldedaten.
  • Registrierungsformular: Neue Anmeldedaten werden sicher für die plattformübergreifende Verwendung gespeichert.
  • Formular zum Ändern des Passworts: Passwörter lassen sich auf allen Plattformen synchronisieren.
  • Formular zum Zurücksetzen des Passworts: Erlaube das Zurücksetzen des Passworts für alle Plattformen.
  • Webview-Domains: Sie können die Freigabe von Anmeldedaten auf Webview-Domains in Ihrer App ausweiten, die für die Kontoverwaltung zuständig sind (Formulare für die Anmeldung, Registrierung, Passwortänderung oder Passwortrücksetzung).
  • Android-Apps

Dieser Ansatz schafft ein einheitliches Anmeldedatenverwaltungssystem, das sowohl die Nutzerfreundlichkeit als auch die Sicherheit verbessert.

Wir empfehlen Ihnen, beim Entwerfen Ihrer Websites für die Kontoverwaltung die folgenden Best Practices zu beachten:

Wir empfehlen Ihnen, Ihre Android-Apps in den Android-Anmeldedaten-Manager einzubinden.

Weitergabe von Anmeldedaten über die Play Console einrichten

Sie können die nahtlose Freigabe von Anmeldedaten jetzt direkt über die Play Console aktivieren, ohne eine neue Version Ihrer Android-App zu veröffentlichen. Mit dieser Methode wird der Vorgang vereinfacht, da Sie die Konfigurationen für die Freigabe von Anmeldedaten über die Play Console-Benutzeroberfläche verwalten.

Vorbereitung

Bevor Sie die Weitergabe von Anmeldedaten über die Play Console einrichten, müssen Sie Folgendes tun:

  • Die erforderlichen Play Console-Berechtigungen für den Zugriff auf die Abschnitte Deeplinks und App-Konfiguration. Wenn Sie nicht der Kontoinhaber sind, bitten Sie Ihren Play Console-Administrator, Ihnen den entsprechenden Zugriff zu gewähren.
  • Möglichkeit, eine /.well-known/assetlinks.json-Datei in jeder jeweiligen Domain gemäß der Syntax für Digital Asset Links (DALs) zu veröffentlichen.

Freigabe von Anmeldedaten für eine neue Domain aktivieren

So richten Sie die nahtlose Weitergabe von Anmeldedaten in der Play Console für eine neue Domain ein:

  1. Öffnen Sie die Play Console und rufen Sie die Seite Deeplinks auf (Nutzerzahl steigern > Deeplinks).
  2. Klicken Sie auf dem Tab App-Konfiguration auf Domain hinzufügen.
  3. Geben Sie die Domain Ihrer Website ein.
  4. Aktivieren Sie die Option Freigabe von Anmeldedaten aktivieren.
  5. Kopieren Sie die generierte JSON-Datei und veröffentlichen Sie sie am angegebenen Speicherort (https://YOUR_DOMAIN/.well-known/assetlinks.json gemäß dem Protokoll) oder fügen Sie die relevanten Informationen der vorhandenen assetlinks.json-Datei hinzu.
  6. Klicken Sie auf Websiteverknüpfung erstellen.

Wenn der Vorgang erfolgreich war, werden Sie zur Seite Deeplinks zurückgeleitet.

Freigabe von Anmeldedaten für eine vorhandene Domain aktivieren

So richten Sie die nahtlose Weitergabe von Anmeldedaten in der Play Console für eine vorhandene Domain ein:

  1. Wählen Sie den Tab App-Konfiguration aus.
  2. Klicken Sie im Bereich Domains unter App-Konfiguration in der Spalte Anmeldedaten teilen auf Aktivieren.
  3. Kopieren Sie die generierte JSON-Datei und veröffentlichen Sie sie am angegebenen Speicherort. Sie können die relevanten Informationen auch der vorhandenen assetlinks.json-Datei hinzufügen.
  4. Klicken Sie auf Freigabe von Anmeldedaten aktivieren.

Wenn der Vorgang erfolgreich war, werden Sie zur Seite Deeplinks zurückgeleitet.

Freigabe von Anmeldedaten nur mit Digital Asset Links (DALs) einrichten

Bei komplexen Konfigurationen mit mehreren Apps oder Websites können Sie die Anmeldedatenfreigabe mithilfe von Digital Asset Links (DALs) manuell konfigurieren.

Vorbereitung

Bevor Sie die nahtlose Weitergabe von Anmeldedaten einrichten, müssen Sie für jede Plattform Folgendes haben:

Für jede Android-App:

Für jede Website:

  • Möglichkeit, eine /.well-known/assetlinks.json-Datei gemäß der Syntax für Digital Asset Links (DALs) auf jeder entsprechenden Domain zu veröffentlichen.
  • Auf alle Domains für die Kontoverwaltung (Anmelde-, Registrierungs-, Passwortänderungs- oder Passwortrücksetzungsformulare) muss über HTTPS zugegriffen werden können.

Nahtlose Weitergabe von Anmeldedaten zwischen Android-Apps und Websites aktivieren

Wenn Sie die nahtlose Weitergabe von Anmeldedaten zwischen Apps und Websites konfigurieren möchten, erstellen und veröffentlichen Sie Listen mit Erklärungen zu Digital Asset Links, in denen angegeben ist, welche Entitäten (Websites oder Android-Apps) Anmeldedaten weitergeben dürfen.

So deklarieren Sie eine Beziehung zur Freigabe von Anmeldedaten:

  1. Erstellen Sie eine assetlinks.json-Datei mit Anweisungen, die zur Website und zur Android-App verweisen. Verwenden Sie dabei die Syntax für DALs-Anweisungslisten:

    [
      {
        "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"
          ]
        }
      }
    ]
    

    Dabei ist URL die URL Ihrer Website, APP_ID Ihre Android-Anwendungs-ID und SHA_HEX_VALUE der SHA256-Fingerabdruck Ihres Signaturzertifikats für Ihre Android-App.

    Im Feld relation wird die deklarierte Beziehung beschrieben. Wenn Sie angeben möchten, dass Apps und Websites Anmeldedaten gemeinsam nutzen, geben Sie die Beziehungen als delegate_permission/common.get_login_creds an. Weitere Informationen zu Beziehungsstrings in DALs

    Das Feld target ist ein Objekt, das das Asset angibt, auf das sich die Erklärung bezieht.

    Die folgenden Felder identifizieren eine Website:

    namespace

    web

    site

    Die URL der Website im Format https://domain[:optional_port]; z. B. https://www.beispiel.de.

    Die domain muss vollständig qualifiziert sein und optional_port muss weggelassen werden, wenn Port 443 für HTTPS verwendet wird.

    Ein site-Ziel kann nur eine Stammdomain sein. Sie können eine App-Verknüpfung nicht auf ein bestimmtes Unterverzeichnis beschränken. Die URL darf keinen Pfad enthalten, z. B. keinen abschließenden Schrägstrich.

    Subdomains werden nicht als übereinstimmend betrachtet. Wenn Sie also domain als www.beispiel.de angeben, wird die Domain www.counter.beispiel.de nicht mit Ihrer App verknüpft.

    Die folgenden Felder identifizieren eine Android-App:

    Namespace

    android_app

    package_name

    Der im Manifest der App angegebene Paketname. Beispiel: com.beispiel.android

    sha256_cert_fingerprints

    Die SHA256-Fingerabdrücke des Signaturzertifikats Ihrer App.

  2. Hoste die Digital Asset Links-JSON-Datei an folgendem Ort auf den Anmeldedomains: https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json, wobei DOMAIN vollständig qualifiziert ist und OPTIONAL_PORT bei Verwendung von Port 443 für HTTPS weggelassen werden muss.

  3. Deklarieren Sie die Verknüpfung in der Android-App, indem Sie in der Datei res/values/strings.xml Ihrer Android-App eine Erklärung einbetten, die auf die in Schritt 1 erstellte Erklärungsliste verweist. Fügen Sie ein Objekt hinzu, das die zu ladenden assetlinks.json-Dateien angibt. Beispiel:

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

    Ersetzen Sie DOMAIN und OPTIONAL_PORT (müssen bei Verwendung von Port 443 für HTTPS weggelassen werden) durch z. B. https://www.example.com. Setzen Sie Apostrophe und Anführungszeichen im String in Anführungszeichen.

    Sie können auch ein JSON-Snippet in Ihre strings.xml-Datei einfügen, wie in der DAL-Dokumentation gezeigt. Mit der include-Anweisung können Sie jedoch Anweisungen ändern, ohne eine neue Version Ihrer App zu veröffentlichen.

  4. Verweise auf die Erklärung im Manifest, indem du der Datei AndroidManifest.xml deiner App unter <application> die folgende Zeile hinzufügst:

    <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>
    
  5. Neue Version Ihrer Android-App in der Google Play Console veröffentlichen

Nachdem Sie diese Schritte ausgeführt haben, haben Sie die nahtlose Weitergabe von Anmeldedaten zwischen Ihrer Website und Ihrer Android-App eingerichtet.

Dies ist nicht die einzige gültige Methode zum Einrichten von Datenablagen für die Freigabe von Anmeldedaten. Mit diesem Ansatz wird jedoch der zukünftige Prozess zum Hinzufügen neuer Entitäten zu Ihrem nahtlosen Netzwerk für die Freigabe von Anmeldedaten vereinfacht, die Wiederverwendbarkeit von Code gefördert und das Risiko von Fehlern bei Updates reduziert.