Zum Hauptinhalt springen

Passkey

Passkey aktivieren

Passkey wird über das SDK-Portal aktiviert. In der Android-Integration sind keine Änderungen erforderlich — die Aktivierung erfolgt vollständig auf Plattformseite.

Hinweis

Passkey ist derzeit nur für Android verfügbar. Das iOS-SDK unterstützt diese Funktion nicht.

Technischer Hintergrund: Digital Asset Links (DAL)

Passkey auf Android verwendet das Digital Asset Links-Protokoll, um eine überprüfbare und sichere Verbindung zwischen der nativen Anwendung des Kunden und der Web-Domain von Unico herzustellen. Diese Verbindung ist vom Design des Android-Betriebssystems für die Authentifizierung mit Passkeys in mobilen Google-Anwendungen obligatorisch.

Funktionsweise der Sicherheitsüberprüfung

Bevor ein Schlüsselpaar für einen Passkey generiert wird, überprüft der Android-Authenticator die im Server-Response enthaltene Relying Party ID (RP ID) anhand des in der Digital Asset Links-Datei angegebenen Domainnamens. Ohne diese erfolgreiche Überprüfung funktioniert Passkey schlicht nicht.

Was ist SHA-256 und warum ist es notwendig?

Der SHA-256-Fingerabdruck ist ein eindeutiger Hash, der aus dem Signaturzertifikat der Anwendung generiert wird und zur Identifizierung der Authentizität und Integrität der App verwendet wird.

Dieses Zertifikat entspricht dem Schlüssel, der zum Signieren des APK/AAB vor der Verteilung im Google Play Store verwendet wird. Es ist notwendig, diesen Fingerabdruck in der assetlinks.json-Datei zu registrieren, die von Unico unter dem Pfad /.well-known/assetlinks.json gehostet wird. Diese Datei wird ausschließlich von Unico verwaltet und kann nur über ein Support-Ticket aktualisiert werden.

Struktur der assetlinks.json-Datei

Die Datei muss zwei spezifische Berechtigungen enthalten:

  • delegate_permission/common.handle_all_urls — für Android App Links
  • delegate_permission/common.get_login_creds — für die gemeinsame Nutzung von Anmeldedaten zwischen der Website und der Android-App

…zusammen mit dem Paketnamen und dem SHA-256-Fingerabdruck des Kunden.

Hinweis

Der SHA-256 muss an zwei Stellen registriert werden: in der öffentlichen Datei assetlinks.json und in der Serverkonfiguration (erwarteter Origin). Registrieren Sie Fingerabdrücke für jede verwendete Signierungskonfiguration — Debug, Release und alle Produktvarianten — da jede einen anderen Fingerabdruck erzeugt.

So erhalten Sie den SHA-256

Es ist möglich, den SHA-256-Fingerabdruck mit dem keytool-Tool des Java Development Kit (JDK) zu extrahieren oder ihn direkt in der Google Play Console im Abschnitt App-Signierung unter Setup > App-Integrität zu finden.

keytool -list -v -keystore <your-keystore.jks> -alias <key-alias>
Zusammenfassung der Voraussetzungen

Bevor ein Passkey-Vorgang erfolgreich durchgeführt werden kann, müssen folgende Bedingungen erfüllt sein:

  • Paketname und SHA-256-Fingerabdruck der App sind in der assetlinks.json-Datei von Unico registriert (Support-Ticket einreichen, um Fingerabdrücke zu registrieren oder zu aktualisieren)
  • SHA-256-Fingerabdruck der App ist in der Serverkonfiguration (erwarteter Origin) registriert
  • Fingerabdrücke für jede verwendete Signierungskonfiguration sind registriert (Debug, Release, Produktvarianten)
Referenzen