Sorgen Sie für mehr Komfort für die Nutzer, indem Sie die plattformübergreifende, nahtlose Freigabe von Anmeldedaten für Ihre Apps und Websites aktivieren. Wenn mehrere Websites und Android-Apps ein gemeinsames Backend für die Kontoverwaltung nutzen, können Nutzer mit dieser Funktion Anmeldedaten einmal speichern und sie sich dann auf jeder verknüpften Website oder in jeder verknüpften Android-App automatisch vorschlagen lassen.
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:
- Registrierungsformular unter Berücksichtigung der Best Practices gestalten
- Gestaltung des Anmeldeformulars gemäß Best Practices
- Eine bekannte URL zum Ändern von Passwörtern hinzufügen
Wir empfehlen Ihnen, Ihre Android-Apps in den Android-Anmeldedaten-Manager einzubinden.
Voraussetzungen
Bevor Sie die nahtlose Weitergabe von Anmeldedaten einrichten, müssen Sie für jede Plattform Folgendes haben:
Für jede Android-App:
- Die Android-App-ID, wie in der
build.gradle
-Datei der App angegeben. - Die SHA256-Fingerabdrücke des Signaturzertifikats.
- (Empfohlen) Nutzeranmeldung, die mit der Credential Manager API implementiert wurde.
Für jede Website:
- Möglichkeit, eine
/.well-known/assetlinks.json
-Datei in jeder Domain gemäß der Syntax für Digital Asset Links (DALs) 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 Freigabe von Anmeldedaten für Android-Apps und Websites aktivieren
Wenn Sie die nahtlose Freigabe von Anmeldedaten über Apps und Websites hinweg 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 freigeben dürfen.
So deklarieren Sie eine Beziehung zur Freigabe von Anmeldedaten:
Erstellen Sie eine
assetlinks.json
-Datei mit Anweisungen, die zur Website und zur Android-App verlinken. 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 undSHA_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 alsdelegate_permission/common.get_login_creds
an. Weitere Informationen zu Beziehungsstrings in DALsDas 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.domain
muss voll qualifiziert sein undoptional_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.
Hoste die Digital Asset Links-JSON-Datei an folgendem Ort auf den Anmeldedomains:
https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json
, wobeiDOMAIN
vollständig qualifiziert ist undOPTIONAL_PORT
bei Verwendung von Port 443 für HTTPS weggelassen werden muss.Deklariere die Verknüpfung in der Android-App, indem du in die Datei
res/values/strings.xml
deiner Android-App eine Anweisung einbettest, die mit der in Schritt 1 erstellten Liste der Erklärungen verlinkt ist. Fügen Sie ein Objekt hinzu, das die zu ladendenassetlinks.json
-Dateien angibt. Beispiel:<string name="asset_statements" translatable="false"> [{ \"include\": \"https://DOMAIN[:OPTIONAL_PORT]/.well-known/assetlinks.json\" }] </string>
Ersetzen Sie
DOMAIN
undOPTIONAL_PORT
(müssen bei Verwendung von Port 443 für HTTPS weggelassen werden), z. B. durchhttps://www.example.com
. Entfernen Sie die Apostrophe und Anführungszeichen, die Sie im String verwenden.Sie können auch wie in der DAL-Dokumentation beschrieben ein JSON-Snippet in Ihre
strings.xml
-Datei einfügen. Mit derinclude
-Anweisung können Sie jedoch Anweisungen ohne Veröffentlichung einer neuen Version Ihrer App ändern.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"/>
Neue Version Ihrer Android-App in der Google Play Console veröffentlichen
Nachdem Sie diese Schritte ausgeführt haben, haben Sie die nahtlose Freigabe von Anmeldedaten zwischen Ihrer Website und Ihrer Android-App erfolgreich 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.