Lewati ke konten utama

Passkey

Mengaktifkan Passkey

Passkey diaktifkan melalui Portal SDK. Tidak ada perubahan yang diperlukan dalam integrasi Android — aktivasi ditangani sepenuhnya di sisi platform.

catatan

Passkey saat ini tersedia untuk Android saja. SDK iOS tidak mendukung fitur ini.

Latar belakang teknis: Digital Asset Links (DAL)

Passkey di Android menggunakan protokol Digital Asset Links untuk membangun asosiasi yang dapat diverifikasi dan aman antara aplikasi native klien dan domain web Unico. Tautan ini bersifat wajib berdasarkan desain sistem operasi Android untuk autentikasi dengan passkey di aplikasi mobile Google.

Cara kerja verifikasi keamanan

Sebelum menghasilkan pasangan kunci untuk passkey, autentikator Android memverifikasi Relying Party ID (RP ID) yang ada dalam respons server terhadap nama domain yang ditentukan dalam file Digital Asset Links. Tanpa verifikasi yang berhasil ini, Passkey tidak akan berfungsi sama sekali.

Apa itu SHA-256 dan mengapa diperlukan?

Fingerprint SHA-256 adalah hash unik yang dihasilkan dari sertifikat penandatanganan aplikasi, yang digunakan untuk mengidentifikasi keaslian dan integritas aplikasi.

Sertifikat ini sesuai dengan kunci yang digunakan untuk menandatangani APK/AAB sebelum distribusi di Google Play Store. Diperlukan untuk mendaftarkan fingerprint ini di file assetlinks.json yang dihosting oleh Unico di bawah path /.well-known/assetlinks.json. File ini sepenuhnya dikelola oleh Unico dan hanya dapat diperbarui dengan mengajukan tiket dukungan.

Struktur file assetlinks.json

File harus mencakup dua izin khusus:

  • delegate_permission/common.handle_all_urls — untuk Android App Links
  • delegate_permission/common.get_login_creds — untuk berbagi kredensial antara website dan aplikasi Android

…beserta nama paket dan fingerprint SHA-256 klien.

catatan

SHA-256 harus didaftarkan di dua tempat: file assetlinks.json publik dan konfigurasi server (expected origin). Daftarkan fingerprint untuk setiap konfigurasi penandatanganan yang digunakan — debug, release, dan semua product flavor — karena masing-masing menghasilkan fingerprint yang berbeda.

Cara mendapatkan SHA-256

Dimungkinkan untuk mengekstrak fingerprint SHA-256 menggunakan alat keytool Java Development Kit (JDK), atau menemukannya langsung di Google Play Console di bagian App Signing di bawah Setup > App integrity.

keytool -list -v -keystore <your-keystore.jks> -alias <key-alias>
Ringkasan prasyarat

Sebelum operasi passkey apa pun dapat berhasil, hal-hal berikut harus sudah tersedia:

  • Nama paket dan fingerprint SHA-256 aplikasi terdaftar di file assetlinks.json milik Unico (ajukan tiket dukungan untuk mendaftarkan atau memperbarui fingerprint)
  • Fingerprint SHA-256 aplikasi terdaftar di konfigurasi server (expected origin)
  • Fingerprint terdaftar untuk setiap konfigurasi penandatanganan yang digunakan (debug, release, product flavor)
Referensi