Sign up to the Passkey Intelligence Webinar on Oct. 8
Back to Overview

Pengujian Password Manager untuk Passkey Aplikasi Native

Panduan lengkap untuk menguji passkey di aplikasi native iOS/Android dengan 1Password, Bitwarden & lainnya. Mencakup rencana pengujian, masalah umum & strategi siap produksi.

Vincent Delitz

Vincent

Created: October 2, 2025

Updated: October 3, 2025

3rd party password manager passkey app testing

See the original blog version in English here.

SpecialPromotion Icon

Want to learn how to get +80% Passkey Adoption?
Join our Passkey Intelligence Webinar on October 8.

Join now

1. Pendahuluan: Saat Passkey Aplikasi Native Bertemu Password Manager Pihak Ketiga#

Dengan rilisnya iOS 17 dan Android 14, lanskap passkey untuk aplikasi mobile native telah berubah secara fundamental. Untuk pertama kalinya, password manager pihak ketiga dapat bertindak sebagai penyedia passkey, mematahkan dominasi eksklusif iCloud Keychain dan Google Password Manager. Hal ini memungkinkan user untuk menggunakan solusi terpercaya mereka sendiri seperti 1Password, Bitwarden, atau Dashlane ke dalam alur autentikasi aplikasi native. Meskipun ini merupakan kemenangan besar bagi pilihan pengguna, hal ini menimbulkan kompleksitas yang signifikan bagi developer. Implementasi passkey Anda bisa berperilaku berbeda di antara password manager yang berbeda pada aplikasi mobile native. Jadi, penting bagi setiap tim untuk menguji passkey aplikasi native dan password manager pihak ketiga dengan benar.

Panduan komprehensif ini membagikan pendekatan kami yang telah teruji dalam pengujian passkey untuk aplikasi native dengan password manager pihak ketiga. Meskipun ekosistem passkey telah berkembang pesat pada tahun 2025, implementasi di dunia nyata masih memerlukan validasi yang cermat di berbagai implementasi password manager. Kami telah merangkum pengalaman kami menjadi sebuah rencana pengujian praktis yang memastikan aplikasi native Anda berfungsi dengan lancar di semua password manager pilihan pengguna.

SpecialPromotion Icon

Want to learn how to get +80% Passkey Adoption?
Join our Passkey Intelligence Webinar on October 8.

Join now

2. Mengapa Pengujian Passkey Penting dalam Produksi#

2.1 Pengguna Membawa Password Manager Mereka Sendiri#

Ekosistem password manager telah berevolusi melampaui solusi bawaan platform. Pengguna secara aktif memilih password manager pihak ketiga seperti 1Password, Bitwarden, Dashlane, Proton Pass, dan NordPass berdasarkan kebutuhan spesifik mereka, seperti sinkronisasi lintas platform, fitur enterprise, atau preferensi privasi. Aplikasi native iOS / Android Anda harus mengakomodasi keragaman ini tanpa memaksa pengguna untuk beralih dari solusi manajemen password yang mereka percaya.

Berdasarkan data yang kami ukur di seluruh halaman Corbado, kami melihat bahwa hanya 5-10% pengguna umum yang mengandalkan password manager pihak ketiga. Meskipun angka ini mungkin terdengar rendah, ini akan berdampak besar pada persepsi implementasi passkey Anda dan jumlah tiket dukungan jika Anda bekerja di lingkungan skala besar. Kami melihat beberapa password manager mengimplementasikan spesifikasi WebAuthn dengan sedikit berbeda, yang menyebabkan variasi kecil dalam pengalaman pengguna atau bahkan bug.

2.2 Pola UX yang Berbeda di Aplikasi Native#

Aplikasi native iOS dan Android menyediakan cara yang berbeda untuk penggunaan passkey. Di Android, kita akan menemukan overlay passkey dan input kolom teks manual yang memicu proses passkey (untuk aplikasi web, Android juga mendukung Conditional UI). iOS menyajikan set overlay passkey-nya sendiri di samping Conditional UI dan juga input kolom teks manual. Selain itu, ada kasus-kasus khusus lain yang perlu diperiksa. Secara keseluruhan, aplikasi native Anda harus menangani dengan baik:

  • Login overlay passkey yang muncul segera saat halaman dimuat
  • Login Conditional UI (khusus iOS) yang menyarankan passkey yang tersedia secara otomatis
  • Login kolom teks di mana pengguna memberikan username mereka sebelum mengklik tombol
  • Autentikasi lintas perangkat (CDA) untuk penggunaan passkey dengan perangkat lain
  • Mekanisme fallback saat penggunaan passkey tidak tersedia

2.3 Flag WebAuthn Membutuhkan Presisi#

Konfigurasi flag yang benar menentukan apakah passkey berfungsi seperti yang diharapkan di seluruh perangkat dan platform. Nilai-nilai penting meliputi:

  • Relying Party ID (rpID): Harus cocok persis di seluruh implementasi web dan native, dan merupakan domain tempat passkey terikat
  • User verification: Menentukan bahwa pengguna perlu memberikan autentikasi lokal mereka
  • Resident key/discoverable credentials: Memungkinkan autentikasi tanpa username (memungkinkan adanya Conditional UI)
  • Backup eligibility (BE) dan backup state (BS): Memungkinkan sinkronisasi passkey lintas perangkat

Flag yang salah dikonfigurasi tidak selalu menyebabkan kegagalan langsung. Namun, hal itu dapat menciptakan masalah halus dan inkonsistensi seperti passkey tersedia di satu perangkat tetapi tidak tersinkronisasi di perangkat lain (meskipun password manager pihak ketiga yang sama mungkin tersedia di kedua perangkat). Salah satu temuan kami dalam pengujian adalah beberapa password manager pihak ketiga mengatur flag BE/BS secara tidak benar dan menjadi penyebab sebagian besar masalah passkey.

2.4 Manajemen Lifecycle di Aplikasi Single-Instance#

Arsitektur single-activity (Android) dan single-scene (iOS) memerlukan manajemen lifecycle yang cermat. Saat lembar password manager muncul dan ditutup, aplikasi Anda harus mempertahankan state, menangani callback, dan melanjutkan dengan benar. Ini sangat penting di Android, di mana konfigurasi launchMode dapat menyebabkan perilaku yang tidak terduga.

Sebagai contoh, kami menemukan bahwa mengatur MainActivity ke launchMode="singleInstance" menimbulkan masalah. Pada beberapa versi Android dan kustomisasi OEM, mode ini menyebabkan UI Passkey Credential Manager terbuka sebagai task terpisah. Ini tidak hanya menambahkan entri aplikasi tambahan yang membingungkan ke layar "Recents", tetapi juga dapat menyebabkan aplikasi hang jika dialihkan ke background saat dialog passkey terbuka.

Perbaikan yang disarankan adalah mengubah konfigurasi menjadi launchMode="singleTask". Ini mencegah Credential Manager membuat task terpisah, memastikan lifecycle yang lebih dapat diprediksi di berbagai OEM (Samsung, Google, Vivo, dll.) dan mengurangi risiko bug spesifik vendor. Ini memberikan fondasi yang lebih stabil untuk menguji navigasi, overlay, dan deeplink.

Kami mengamati bahwa masalah lifecycle seperti ini sering kali disamarkan sebagai "bug password manager" padahal sebenarnya adalah masalah di tingkat aplikasi. Instrumentasi dan pengujian yang tepat di berbagai penyedia membantu mengidentifikasi pola-pola ini sejak dini.

3. Menyiapkan Lingkungan Pengujian Anda#

3.1 Target Password Manager#

Fokuskan pengujian passkey aplikasi native Anda pada password manager pihak ketiga yang paling banyak diadopsi:

Target utama (cakupan esensial):

Target sekunder (berdasarkan basis pengguna Anda):

  • Penyedia regional (misalnya, Samsung Pass untuk perangkat Samsung)
  • Solusi enterprise jika menargetkan pengguna bisnis
  • Bawaan platform (Google Password Manager, iCloud Keychain) sebagai dasar

Hindari godaan untuk menguji setiap password manager yang tersedia. Fokus pada penyedia yang mewakili 90% dari basis pengguna Anda. Analitik kami menunjukkan bahwa kelima target utama mencakup 85% pengguna password manager pihak ketiga di EU/USA/UK/AUS/NZ.

3.2 Daftar Periksa Pra-Uji#

Sebelum memulai setiap sesi pengujian, pastikan lingkungan yang bersih dan dapat direproduksi:

1. Bersihkan status kredensial:

  • Hapus semua kredensial yang ada untuk RP ID Anda
  • Bersihkan cache browser dan aplikasi
  • Sign out sepenuhnya dan sign in kembali ke password manager
  • Tutup paksa dan luncurkan kembali aplikasi target

2. Stabilkan lingkungan pengujian:

  • Pastikan konektivitas jaringan stabil (tidak ada VPN selama pengujian)
  • Nonaktifkan animasi UI jika mengotomatiskan pengujian
  • Gunakan orientasi perangkat yang konsisten
  • Dokumentasikan versi OS, versi aplikasi, dan versi password manager

4. Rencana Pengujian yang Komprehensif#

Setiap pengujian memvalidasi aspek spesifik dari fungsionalitas passkey. Dokumentasikan hasil secara sistematis menggunakan status lulus/gagal dan catatan rinci untuk setiap anomali.

4.1 Pengujian Alur Autentikasi Inti#

Tes 1: Batalkan Pembuatan Passkey (setelah Login konvensional berhasil)#

Validasi penanganan pembatalan yang baik

✓ Lembar password manager terbuka dengan benar ✓ Pengguna membatalkan tanpa membuat passkey ✓ Aplikasi kembali ke layar login ✓ Tidak ada kredensial yang tertinggal di password manager ✓ UI menampilkan opsi coba lagi yang sesuai

Tes 2: Buat Passkey (setelah Login konvensional berhasil)#

Verifikasi pembuatan passkey setelah alur autentikasi

✓ Autentikasi lokal berjalan dengan andal ✓ Autentikasi biometrik selesai dengan sukses ✓ Kredensial dibuat dengan RP ID yang benar ✓ Aplikasi beralih ke status terautentikasi tanpa loop

Tes 3: Autentikasi dengan Passkey yang Ada#

Uji skenario autentikasi standar

✓ UI Overlay Passkey muncul atau pengguna memberikan username dalam skenario kolom teks ✓ Pemindaian biometrik dan satu prompt biometrik mengarah pada autentikasi yang sukses ✓ Tidak ada loop pemilihan atau kemunculan kembali lembar ✓ Sesi tetap stabil setelah autentikasi

Tes 4: Buat Passkey dari Pengaturan#

Validasi manajemen passkey dalam aplikasi

✓ RP ID, discoverability, dan flag BE/BS yang benar ✓ Aplikasi tetap terautentikasi setelah pembuatan ✓ Password manager langsung diperbarui dengan label yang benar

Tes 5: Hapus passkey dan coba login kembali#

Uji manajemen lifecycle kredensial

Hapus passkey di pengaturan ✓ Login dengan passkey tidak memungkinkan ✓ Opsi fallback yang sesuai ditawarkan

4.2 Pengujian Kompatibilitas Lintas Platform#

Tes 6: Gunakan Passkey Buatan Native di Web (Perangkat yang Sama)#

Validasi portabilitas aplikasi-ke-web

✓ Browser mengenali passkey yang dibuat aplikasi ✓ Lembar pemilihan menunjukkan asosiasi RP yang benar ✓ Autentikasi selesai tanpa perlu QR/CDA

Tes 7: Gunakan Passkey Buatan Web di Aplikasi Native#

Uji berbagi kredensial web-ke-aplikasi

✓ Aplikasi memunculkan kredensial buatan web dalam pilihan ✓ Autentikasi pada percobaan pertama berhasil ✓ Tidak ada fallback paksa ke password

Tes 8: Sinkronisasi Lintas Perangkat (Mobile ke Desktop)#

Verifikasi sinkronisasi passkey dari aplikasi native ke browser desktop

✓ Passkey buatan aplikasi tersinkronisasi ke password manager desktop ✓ Passkey yang disinkronkan berfungsi lancar di browser desktop ✓ Tidak ada alur kode QR / lintas perangkat yang terpicu ✓ Autentikasi selesai tanpa loop atau error

Tes 9: Sinkronisasi Lintas Perangkat (Desktop ke Mobile)#

Verifikasi sinkronisasi passkey dari browser desktop ke aplikasi native

✓ Passkey buatan desktop tersinkronisasi ke password manager mobile ✓ Aplikasi native memunculkan passkey yang disinkronkan dengan benar ✓ Autentikasi berhasil tanpa fallback ke password ✓ Log mengaitkan assertion dengan credential ID yang benar

Tes 10: Mobile sebagai Autentikator untuk Web#

Validasi skenario ponsel-sebagai-kunci-keamanan

✓ Ponsel menawarkan kredensial buatan aplikasi untuk CDA web ✓ Tidak ada error palsu "tidak ada passkey yang tersedia" ✓ Sesi web selesai setelah biometrik mobile

5. Masalah Umum dan Strategi Mitigasi#

Pengujian ekstensif kami mengungkap beberapa pola berulang yang memengaruhi integrasi passkey password manager pihak ketiga:

Keterlambatan Sinkronisasi Lintas Perangkat#

Masalah: Kredensial yang dibuat di satu perangkat mungkin tidak langsung muncul di perangkat lain.

Solusi: Terapkan logika coba lagi dengan exponential backoff. Sediakan opsi refresh manual bagi pengguna yang mengalami keterlambatan sinkronisasi.

Perilaku Spesifik Versi#

Masalah: Perilaku password manager sangat bervariasi antar versi OS, terutama pada Android 14+ dan iOS 17+.

Solusi: Pertahankan matriks kompatibilitas dan sesuaikan alur berdasarkan versi OS yang terdeteksi. Pertimbangkan persyaratan versi minimum untuk pengalaman yang optimal.

Slack Icon

Become part of our Passkeys Community for updates & support.

Join

7. Kesimpulan: Membangun Dukungan Passkey yang Siap Produksi#

Berhasil mengimplementasikan dukungan passkey dari password manager pihak ketiga di aplikasi native memerlukan pengujian metodis dan perhatian terhadap detail. Rencana pengujian kami yang komprehensif, disempurnakan melalui pengujian dunia nyata, memberikan fondasi yang kokoh untuk memvalidasi integrasi passkey Anda.

Poin-poin penting untuk deployment produksi:

  1. Uji secara sistematis: Gunakan rencana pengujian kami sebagai dasar, sesuaikan dengan kasus penggunaan spesifik Anda
  2. Hargai pilihan pengguna: Dukung password manager yang disukai pengguna Anda, bukan hanya bawaan platform
  3. Pantau terus-menerus: Terapkan logging komprehensif untuk menangkap kasus-kasus khusus di produksi
  4. Dokumentasikan secara menyeluruh: Simpan catatan yang jelas tentang perilaku dan solusi spesifik penyedia

Ekosistem passkey terus berkembang pesat. Password manager secara teratur memperbarui implementasi mereka, sistem operasi memperkenalkan fitur-fitur baru, dan spesifikasi WebAuthn sendiri terus maju. Dengan membangun kerangka kerja pengujian yang kuat sekarang, Anda akan siap beradaptasi seiring matangnya teknologi.

Kami akan terus memperbarui SDK dan metodologi pengujian kami seiring munculnya pola-pola baru. Investasi dalam pengujian komprehensif password manager pihak ketiga akan membuahkan hasil berupa berkurangnya beban dukungan dan meningkatnya kepuasan pengguna. Pada akhirnya, autentikasi seharusnya berfungsi begitu saja - terlepas dari password manager mana yang dipilih pengguna Anda.

Learn more about our enterprise-grade passkey solution.

Learn more

Share this article


LinkedInTwitterFacebook