Checklist API autentikasi wajah untuk produksi

Gunakan checklist ini untuk menghubungkan hasil autentikasi FACEIO ke backend, memetakannya ke akun yang benar, dan mencegah status browser menentukan akses.

Kembali ke Pusat Pengetahuan
FACEIO Engineering Team Diperbarui

Widget mengautentikasi; backend menentukan akses

FACEIO menjalankan alur autentikasi di browser, tetapi JavaScript tidak boleh menentukan akses. Backend harus memetakan Facial ID yang dikembalikan ke akun yang diharapkan, memvalidasi status akun dan konteks permintaan, lalu menentukan akses yang diberikan.

SDK fio.js menangani pengambilan kamera, pemeriksaan liveness, dan autentikasi wajah di browser. Hasilnya dikembalikan ke frontend, tetapi bukan keputusan otorisasi akhir. Backend harus menerapkan aturan akun, sesi, dan akses.

Checklist ini membahas keputusan API dan keamanan untuk autentikasi wajah pada aplikasi web. Untuk menerapkan antarmuka, baca panduan integrasi. Untuk memahami cakupan produk, lihat halaman API autentikasi wajah.

Checklist autentikasi di server

Sebelum menerbitkan sesi, terapkan pemeriksaan berikut di server:

  • Jangan letakkan API key privat di frontend, paket aplikasi seluler, atau repositori publik. Browser menggunakan App ID publik; API key tetap berada di server.
  • Gunakan CHECKFACIALID dari backend saat Anda perlu memastikan bahwa Facial ID masih terdaftar. Endpoint ini tidak mengautentikasi callback browser tertentu.
  • Ikat hasil ke akun, tenant, dan konteks yang diharapkan. Jangan jadikan ID pengguna dari klien sebagai sumber kebenaran.
  • Gunakan konfirmasi PIN jika kebijakan Anda memerlukan faktor tambahan. Lihat Always Ask for PIN dan SETFACIALIDPINCODE untuk konfigurasi kebijakan dan pengelolaan backend.
  • Catat peristiwa autentikasi yang berhasil dan gagal dengan konteks yang diperlukan untuk peninjauan, tanpa menyimpan media verifikasi, tangkapan wajah, atau hash biometrik.
  • Tentukan aturan percobaan ulang, akses alternatif, penguncian, dan tinjauan manual untuk pemeriksaan yang gagal.
  • Batasi percobaan per IP dan Facial ID untuk mengurangi pengambilan berulang dan penyalahgunaan otomatis.

Pengikatan sesi dan penerbitan token

Setelah memvalidasi status akun dan konteks permintaan, backend dapat menerbitkan sesi. Ikat sesi ke akun yang dipetakan dari Facial ID yang dikembalikan, bukan ke pengenal akun dari browser:

Ikat sesi ke Facial ID

Cari akun yang dipetakan ke Facial ID yang dikembalikan. Jangan jadikan ID pengguna dari browser sebagai sumber kebenaran.

Token berumur pendek

Terbitkan token sesi berumur pendek. Untuk tindakan yang memerlukan keamanan tambahan, minta autentikasi ulang dengan wajah atau metode alternatif, bukan mengandalkan sesi berumur panjang.

Jejak audit

Catat waktu, Facial ID, App ID, dan hasil. Riwayat ini membantu meninjau akses akun dan kasus dukungan tanpa menyimpan media verifikasi.

Kesalahan integrasi yang umum

Memercayai status klien

Jangan biarkan callback frontend yang berhasil memilih akun atau memberikan akses sendiri. Petakan Facial ID di backend dan terapkan aturan sesi, tenant, dan otorisasi Anda.

Tidak mengikat sesi

Hasil autentikasi yang berhasil tetap harus dipetakan ke akun dan tindakan yang diminta. Ikat sesi di backend, bukan menerima pengenal akun dari browser.

Tidak mencatat metrik operasional

Pantau pendaftaran yang selesai, autentikasi, kegagalan kamera, percobaan ulang, dan eskalasi dukungan. Metrik ini membantu membedakan masalah deployment dari masalah produk.

Mengekspos API key

API key adalah rahasia server. Jika muncul di frontend, repositori publik, atau paket aplikasi seluler, segera lakukan rotasi di FACEIO Console.

Referensi integrasi API

Gunakan referensi FACEIO ini untuk menyiapkan fio.js, mengelola Facial IDs dan webhooks, melindungi API key, dan menyiapkan alur akun untuk produksi.

Pertanyaan umum

Bagaimana server harus menangani hasil autentikasi dari klien?

Browser berada di bawah kendali pengguna. Perlakukan hasil fio.js sebagai input, petakan Facial ID ke akun yang diharapkan di backend, validasi akun dan konteks permintaan, lalu tentukan apakah sesi dapat diterbitkan. Gunakan CHECKFACIALID untuk memastikan Facial ID masih terdaftar; endpoint ini tidak mengautentikasi callback browser tertentu.

Di mana API key FACEIO harus disimpan?

Simpan hanya di server, sebaiknya dalam environment variable atau secret manager. Jangan letakkan di frontend, paket aplikasi seluler, atau repositori publik. App ID publik dapat digunakan di browser; API key tidak.

Data apa yang perlu dicatat dari peristiwa autentikasi?

Catat waktu, Facial ID, hasil, App ID, dan konteks yang diperlukan untuk peninjauan. Jangan catat media verifikasi, tangkapan wajah, atau hash biometrik. Baca panduan keamanan dan privasi.

Apa perbedaan checklist API dan checklist peluncuran?

Checklist peluncuran mencakup UX, persetujuan, privasi, dan tahap deployment. Checklist API ini berfokus pada pemeriksaan akun di server, pengikatan sesi, API key, dan keputusan setelah autentikasi.

Panduan terkait

Siapkan integrasi API yang aman

Untuk autentikasi akun, gunakan alur SDK FACEIO, simpan API key privat di backend, petakan Facial IDs ke akun Anda, dan terapkan kontrol sesi di server. Untuk membandingkan dua gambar wajah tanpa pendaftaran, lihat API verifikasi wajah online.