Seorang staf keuangan membuka email kantor di pagi hari, lalu mengeklik tautan yang tampak seperti halaman login perusahaan. Dalam hitungan detik, kata sandinya sudah berpindah ke tangan penyerang.
Kasus seperti ini mendorong banyak layanan beralih ke login tanpa kata sandi. Laporan State of Passkeys 2026 dari FIDO Alliance memperkirakan 5 miliar passkey kini aktif digunakan di seluruh dunia, dan teknologinya bertumpu pada standar WebAuthn.
Di tengah perubahan itu, banyak tim teknis bingung saat membandingkan WebAuthn vs OAuth karena keduanya sering muncul dalam diskusi keamanan login. Padahal keduanya menjawab pertanyaan yang berbeda, sehingga memilih salah satu tanpa paham fungsinya bisa meninggalkan celah di sistem Anda.
Artikel ini membahas pengertian keduanya, perbedaan mendasarnya, dan perbandingan keduanya dari enam aspek. Di akhir, Anda punya pegangan untuk menentukan mana yang cocok bagi aplikasi Anda.
Apa Itu WebAuthn?
WebAuthn (Web Authentication) adalah standar web yang memungkinkan pengguna masuk ke sebuah situs memakai kunci kriptografi, bukan kata sandi. Standar ini disusun oleh W3C bersama FIDO Alliance, dan browser-browser besar sudah mendukungnya.
Cara kerjanya memakai sepasang kunci. Kunci privat tersimpan di perangkat pengguna atau di security key fisik, sedangkan kunci publik disimpan oleh server situs.
Saat login, server mengirim tantangan acak. Perangkat menandatanganinya setelah pengguna membuktikan diri lewat sidik jari, pemindai wajah, atau PIN, lalu server memeriksa tanda tangan itu dengan kunci publik.
Ada dua hal yang membedakan WebAuthn dari login biasa. Kunci privat tidak pernah meninggalkan perangkat, dan setiap kunci terikat pada domain situs aslinya.
Misalnya, Rina mengetuk tautan ke situs bank palsu yang tampilannya mirip sekali dengan aslinya. Perangkatnya menolak menandatangani tantangan karena domainnya tidak cocok, jadi tidak ada yang bisa dicuri.
Anda mungkin lebih sering mendengar istilah passkey. Passkey adalah nama populer untuk kredensial WebAuthn yang bisa disinkronkan antarperangkat lewat akun seperti Apple atau Google, jadi saat orang berkata “masuk dengan passkey”, yang bekerja di balik layar adalah WebAuthn.
Apa Itu OAuth?
OAuth (umumnya OAuth 2.0) adalah protokol otorisasi yang memungkinkan sebuah aplikasi mengakses data pengguna di layanan lain tanpa mengetahui kata sandinya. Fokusnya pada izin akses, bukan pada pembuktian siapa penggunanya.
Alurnya melibatkan empat pihak: pengguna, aplikasi klien, server otorisasi, dan server sumber daya. Pengguna memberi izin di server otorisasi, lalu aplikasi menerima access token sebagai tanda izin itu.
Token tersebut berlaku terbatas dan hanya mencakup scope tertentu. Aplikasi yang cuma diizinkan membaca kalender, misalnya, tidak bisa mengirim email atas nama pengguna.
Bayangkan sebuah aplikasi penjadwalan meminta akses ke Google Calendar Anda. Anda menyetujuinya di halaman Google, dan aplikasi itu menerima token tanpa pernah melihat kata sandi Anda.
OAuth sering disangka sistem login, padahal tugas utamanya memberi izin. Untuk urusan identitas, OAuth dipasangkan dengan OpenID Connect (OIDC), lapisan tambahan yang memberi tahu siapa penggunanya.
Tombol “Masuk dengan Google” di banyak situs adalah contohnya. Di balik tombol itu, OAuth mengurus izin dan OIDC mengurus identitas.
Mengapa WebAuthn dan OAuth Sering Dianggap Sama?
Keduanya sama-sama muncul di layar login, jadi wajar kalau sebagian orang menyamakannya. Tombol “Masuk dengan Google” dan permintaan sidik jari sama-sama terasa seperti satu proses masuk.
Bedanya ada di balik layar. Yang satu mengurus pembuktian identitas, yang lain mengurus pemberian izin.
Salah paham ini punya harga. Tim yang mengira OAuth sudah cukup untuk login akan membangun sistem yang rapi soal izin tetapi longgar soal identitas, dan celahnya baru ketahuan setelah akun disusupi.
Perbandingan WebAuthn vs OAuth Aspek demi Aspek
Tabel berikut memberi gambaran cepat, tetapi detailnya baru terasa saat tiap aspek dibedah satu per satu. Enam aspek berikut dibandingkan dengan contoh singkat agar perbedaannya mudah dibayangkan.
| Aspek | WebAuthn | OAuth 2.0 |
|---|---|---|
| Tujuan utama | Autentikasi (membuktikan identitas) | Otorisasi (memberi izin akses) |
| Pertanyaan yang dijawab | Apakah ini benar pengguna yang sah? | Apa yang boleh diakses aplikasi ini? |
| Bukti yang dipakai | Tanda tangan dari kunci privat di perangkat | Access token dengan scope tertentu |
| Ketahanan terhadap phishing | Tinggi, karena kunci terikat pada domain asli | Bergantung pada rancangan login dan halaman persetujuannya |
| Contoh penggunaan | Login dengan passkey atau security key | Aplikasi membaca kalender pengguna |
1. Tujuan dan Fungsi
WebAuthn dibuat untuk membuktikan siapa yang sedang masuk. OAuth dibuat untuk menentukan apa yang boleh diakses sebuah aplikasi atas nama pengguna.
Contohnya, Dita membuka aplikasi akuntansi dengan sidik jari, dan di situ WebAuthn bekerja. Saat aplikasi yang sama meminta izin membaca file dari Google Drive, giliran OAuth yang bekerja.
2. Cara Kerja
WebAuthn memakai pasangan kunci publik dan privat, dengan tantangan acak yang ditandatangani oleh perangkat. OAuth memakai pertukaran token antara aplikasi, server otorisasi, dan server sumber daya.
Pada WebAuthn, server tidak pernah menerima rahasia apa pun, hanya tanda tangan. Pada OAuth, aplikasi membawa access token ke API setiap kali meminta data.
3. Kredensial yang Dipakai
Kredensial WebAuthn adalah kunci privat yang tinggal di perangkat dan tidak ikut terkirim lewat jaringan. Kredensial OAuth adalah token berumur terbatas yang dikirim pada setiap permintaan.
Karena token berjalan lewat jaringan, ia harus dijaga ketat. Token yang tercatat di log aplikasi bisa dipakai penyerang persis seperti kunci rumah yang tertinggal di pintu.
4. Ketahanan terhadap Phishing
WebAuthn terikat pada domain asli, jadi halaman tiruan tidak bisa meminta tanda tangan yang valid. OAuth tidak punya perlindungan bawaan seperti itu, sehingga keamanannya bergantung pada rancangan login dan halaman persetujuannya.
Pengguna OAuth bisa tertipu menyetujui aplikasi palsu yang meminta akses ke seluruh isi email. Pada WebAuthn, situs palsu bahkan tidak bisa memulai proses login.
5. Pengalaman Pengguna
WebAuthn menawarkan login satu sentuhan lewat sidik jari, wajah, atau PIN perangkat. OAuth menampilkan layar persetujuan yang menjelaskan akses apa saja yang diminta aplikasi.
Contohnya, pembeli baru mendaftar di toko online lewat tombol “Masuk dengan Google” (OAuth dan OIDC). Pada kunjungan berikutnya, ia cukup memindai wajah untuk masuk (WebAuthn).
6. Cakupan Penggunaan
WebAuthn khusus untuk pengguna manusia yang berada di depan perangkatnya. OAuth juga melayani komunikasi antarlayanan tanpa manusia, misalnya lewat alur client credentials.
Layanan pembayaran yang memanggil layanan invoice tidak bisa memakai sidik jari. Ia memakai token OAuth dengan scope baca invoice saja.
7. Contoh Penggunaan
Contoh nyata membantu melihat kapan masing-masing teknologi dipakai. Berikut situasi yang paling sering ditemui.
WebAuthn dipakai saat karyawan membuka sistem penggajian dengan sidik jari, atau saat admin menyentuh security key sebelum menghapus basis data pelanggan. Dua-duanya soal membuktikan siapa yang bertindak.
OAuth dipakai saat aplikasi laporan pemasaran menarik data dari akun iklan pelanggan, atau saat tombol “Masuk dengan Google” mendaftarkan pembeli baru di toko online. Keduanya soal izin akses yang diberikan pengguna.
Dalam satu aplikasi, keduanya bisa muncul bersamaan. Karyawan masuk ke aplikasi HR dengan passkey (WebAuthn), lalu aplikasi itu membaca jadwal rapat dari kalender kantor memakai token OAuth.
Bisakah WebAuthn dan OAuth Dipakai Bersamaan?
Bisa, dan kombinasi ini lazim dipakai di aplikasi bisnis. WebAuthn menjaga pintu masuk, sedangkan OAuth mengatur apa saja yang boleh dibuka setelah pengguna masuk.
Contohnya, portal klien memakai passkey untuk login, lalu memberi aplikasi mitra token OAuth dengan scope terbatas. Pengguna terlindungi di depan, data terlindungi di belakang.
Kesimpulan
WebAuthn dan OAuth mengerjakan tugas yang berbeda. WebAuthn membuktikan identitas lewat kunci kriptografi yang tahan phishing, sementara OAuth mengatur izin akses antaraplikasi lewat token.
Pilih WebAuthn untuk login karyawan dan akun berisiko tinggi, serta OAuth untuk berbagi akses antarlayanan dan registrasi cepat. Pada aplikasi yang menyimpan data sensitif, pakai keduanya sekaligus agar identitas dan izin sama-sama terjaga.
Siap Mengelola Identitas Digital sebagai Strategi Keamanan Bisnis?
Request demo sekarang dan pelajari bagaimana solusi IAM membantu memusatkan proses login pengguna melalui Single Sign-On (SSO), mengotomatisasi onboarding karyawan, serta melindungi data perusahaan dari akses tidak sah tanpa mengganggu produktivitas akibat login berulang.
FAQ
WebAuthn membuktikan identitas pengguna lewat kunci kriptografi di perangkat. OAuth memberi izin kepada aplikasi untuk mengakses data pengguna lewat token.
OAuth sendiri hanya mengatur izin akses, jadi untuk login ia perlu dipasangkan dengan OpenID Connect (OIDC). Contohnya tombol “Masuk dengan Google”.
Bisa. WebAuthn mengamankan proses masuk, sedangkan OAuth mengatur akses aplikasi ke data setelah pengguna masuk.




