Spesifikasi Teknis Autentikasi
Dalam pengembangan identitas digital, sistem INApas menawarkan solusi autentikasi yang kuat dan fleksibel. INApas menyediakan dua mekanisme autentikasi yang berbeda: Pemindaian Kode QR (Web) dan Kode QR Deep Link/Tap (Aplikasi). Artikel ini menguraikan kedua alur tersebut, memberikan wawasan tentang setiap langkah dalam prosesnya.
Metode Autentikasi INApas
1. Pemindaian Kode QR: Metode ini melibatkan pengguna untuk memindai kode QR yang ditampilkan di situs web pihak yang diandalkan menggunakan aplikasi seluler INApas.
2. Deep Link QR Code (Tap): Dalam metode ini, pengguna cukup mengetuk kode QR yang ditampilkan di situs web pihak yang diandalkan, yang kemudian memicu pembukaan aplikasi seluler INApas.
Kedua metode ini memastikan proses autentikasi yang aman sekaligus memenuhi preferensi dan kebutuhan pengguna dalam berbagai skenario.

Langkah-langkah Awal yang Umum
Setiap metode autentikasi melalui INApas dimulai dengan langkah-langkah berikut:
1. Akses ke Situs Web Relying Party (RP)
Pengguna mengakses situs app/web RP untuk memulai proses login.
2.Tampilan Pilihan Login dengan INApas
Antarmuka frontend (FE) dari RP menampilkan opsi login dengan INApas.
3. Permintaan Login ke INApas
Pengguna memilih untuk login menggunakan INApas.
4. PKCE dan Pembuatan Parameter State
Backend (BE) dari RP menghasilkan parameter PKCE (Kunci Bukti untuk Pertukaran Kode) dan state untuk memastikan keamanan.
5. Permintaan Autentikasi ke Frontend SSO INApas (FE)
Permintaan autentikasi dikirim ke INApas SSO FE dengan data-data penting seperti client_id, redirect_uri, response_type, state, dan code_challenge.
6. Pemrosesan Permintaan oleh INApas SSO Engine
INApas SSO Engine memproses data autentikasi dan membuat sesi login, kemudian menghasilkan halaman login dengan QR Code.
Metode Autentikasi
Setelah langkah awal, proses autentikasi dapat dilanjutkan dengan salah satu dari dua metode berikut:
Metode 1: Memindai Kode QR
1. Interaksi dengan Aplikasi Seluler
-
Pengguna membuka aplikasi INApas di perangkat seluler.
-
Aplikasi akan meminta autentikasi perangkat lokal (LDA), seperti sidik jari atau PIN.
-
Pengguna memberikan autentikasi LDA, dan aplikasi memverifikasinya.
2. Pemindaian dan Verifikasi Kode QR
-
Pengguna memindai QR Code yang ditampilkan pada halaman login menggunakan aplikasi INApas.
-
Aplikasi akan mengirimkan session ID terenkripsi ke INApas SSO Engine.
-
INApas SSO Engine mengirimkan tantangan ke aplikasi.
-
Aplikasi membalas tantangan dengan tanda tangan digital.
-
Mesin SSO INApas memverifikasi tanda tangan tersebut.
3. Persetujuan Login
-
Aplikasi meminta persetujuan login dari pengguna.
-
Pengguna menyetujui login, dan aplikasi dapat meminta LDA tambahan untuk keamanan lebih lanjut.
Metode 2: Ketuk/Tap Kode QR
1. Metode Tautan Mendalam (Ketuk Kode QR)
-
Alih-alih memindai QR Code, pengguna cukup mengetuk QR Code pada halaman login.
-
Tindakan ini akan langsung membuka aplikasi INApas di perangkat mobile.
2. Interaksi dengan Aplikasi Seluler
-
Aplikasi meminta autentikasi LDA, seperti pada metode Scan QR Code.
-
Pengguna memberikan autentikasi LDA, dan aplikasi memverifikasinya.
3. Proses Verifikasi
-
Aplikasi mengirimkan ID sesi terenkripsi ke Mesin SSO INApas.
-
Tantangan dan respons ditangani seperti pada metode Scan QR Code.
4. Persetujuan Masuk
-
Aplikasi meminta persetujuan login dari pengguna.
-
Pengguna menyetujui login.
Langkah-langkah Akhir yang Umum
Setelah autentikasi berhasil dengan salah satu metode, proses berlanjut dengan langkah-langkah berikut:
1. Persetujuan dan Otorisasi
-
Halaman depan RP menampilkan halaman persetujuan kepada pengguna.
-
Pengguna menyetujui permintaan tersebut.
-
INApas SSO FE memproses persetujuan pengguna dan mengarahkan pengguna kembali ke URL panggilan balik dengan kode otorisasi.
2. Pertukaran Token
-
Backend RP memverifikasi status dan menghasilkan pernyataan JWT.
-
Permintaan pertukaran token dikirim ke INApas SSO Engine.
-
INApas SSO Engine mengembalikan access_token, id_token, dan refresh_token.
3. Penyelesaian Autentikasi
-
RP backend memproses dan menyimpan token yang diterima.
-
Status login pengguna ditandai sebagai selesai.
-
Pengguna ditampilkan sebagai login pada halaman frontend RP.
Kesimpulan
Sistem ID digital INApas menunjukkan pendekatan yang canggih untuk autentikasi pengguna dengan menyediakan dua metode yang nyaman. Baik melalui Scan QR Code atau Tap QR Code, sistem ini mempertahankan tingkat keamanan yang tinggi melalui autentikasi multi-faktor, verifikasi perangkat, dan pertukaran token yang aman.
Pendekatan dua metode ini memenuhi berbagai preferensi pengguna dan kemampuan perangkat, sehingga meningkatkan pengalaman pengguna secara keseluruhan dengan tetap mempertahankan standar keamanan yang kuat. Seiring berkembangnya solusi identitas digital, sistem seperti INApas menetapkan tolok ukur untuk menyeimbangkan keamanan, kenyamanan, dan fleksibilitas dalam autentikasi online.