Membangun Mikroservis gRPC Berkinerja Tinggi untuk Konsumsi Webhook Didit di Go (ID)
Pelajari cara membangun mikroservis gRPC yang tangguh dan berkinerja tinggi di Go untuk mengonsumsi webhook Didit. Panduan ini mencakup verifikasi tanda tangan, penanganan data verifikasi identitas real-time yang aman, dan.

Konsumsi Webhook AmanMenerapkan verifikasi tanda tangan HMAC-SHA256 yang kuat sangat penting untuk mengautentikasi webhook Didit yang masuk dan melindungi sistem Anda dari upaya spoofing.
Pemrosesan Berkinerja Tinggi dengan Go dan gRPCManfaatkan fitur konkurensi Go dan gRPC untuk membangun mikroservis yang efisien, latensi rendah yang mampu menangani volume tinggi peristiwa verifikasi identitas real-time.
Arsitektur Berbasis PeristiwaRancang konsumen webhook Anda sebagai mikroservis berbasis peristiwa untuk memisahkan logika pemrosesan, meningkatkan skalabilitas, dan memastikan pengiriman pembaruan identitas kritis yang andal.
Integrasi Tanpa Hambatan dengan DiditKonfigurasi webhook Didit yang fleksibel, termasuk pembuatan versi payload dan manajemen kunci rahasia, membuat integrasi hasil verifikasi identitas real-time menjadi mudah dan aman.
Pentingnya Peristiwa Verifikasi Identitas Real-Time
Dalam ekonomi digital yang bergerak cepat saat ini, umpan balik real-time mengenai hasil verifikasi identitas (IDV) bukan lagi kemewahan; itu adalah suatu keharusan. Baik Anda sedang melakukan orientasi pengguna baru, mencegah penipuan, atau memastikan kepatuhan, akses langsung ke hasil verifikasi memungkinkan pengambilan keputusan instan dan pengalaman pengguna yang unggul. Webhook adalah tulang punggung komunikasi real-time ini, bertindak sebagai mekanisme berbasis peristiwa di mana Didit secara proaktif memberi tahu aplikasi Anda tentang peristiwa penting, seperti verifikasi ID yang selesai, pemeriksaan keaktifan yang gagal, atau status penyaringan AML yang diperbarui.
Mengandalkan polling API untuk pembaruan dapat menimbulkan latensi, mengonsumsi sumber daya yang tidak perlu, dan tidak efisien untuk skenario bervolume tinggi. Webhook, sebaliknya, mendorong data ke titik akhir yang Anda tentukan segera setelah suatu peristiwa terjadi, memastikan sistem Anda selalu sinkron dengan status verifikasi identitas terbaru. Ini sangat penting untuk aplikasi yang membutuhkan respons cepat, seperti layanan keuangan yang membutuhkan pembaruan Pemantauan & Penyaringan AML instan atau pasar online yang memverifikasi identitas pengguna dengan Verifikasi ID dan Keaktifan Pasif & Aktif untuk memerangi penipuan.
Mendesain Mikroservis gRPC yang Tangguh untuk Konsumsi Webhook
Membangun konsumen webhook berkinerja tinggi membutuhkan pertimbangan cermat terhadap keamanan, skalabilitas, dan keandalan. Go, dengan model konkurensi yang kuat dan karakteristik kinerja yang sangat baik, adalah bahasa yang ideal untuk tugas ini. Menggabungkan Go dengan gRPC, kerangka kerja RPC universal sumber terbuka berkinerja tinggi, memberikan beberapa keuntungan:
- Efisiensi: gRPC menggunakan Protocol Buffers untuk serialisasi, yang lebih kecil dan lebih cepat daripada JSON, mengurangi overhead jaringan.
- Kinerja: Dibangun di atas HTTP/2, gRPC mendukung multiplexing, kompresi header, dan server push, menghasilkan latensi yang lebih rendah dan throughput yang lebih tinggi.
- Pengetikan Kuat: Protocol Buffers menerapkan skema, memastikan konsistensi data dan mengurangi kesalahan runtime.
- Interoperabilitas: Meskipun kita berfokus pada Go, klien dan server gRPC dapat diimplementasikan dalam berbagai bahasa, memfasilitasi komunikasi mikroservis di seluruh lingkungan heterogen.
Untuk mengonsumsi webhook Didit, mikroservis gRPC Anda akan bertindak sebagai server, mengekspos titik akhir yang dapat dipanggil oleh sistem webhook Didit. Meskipun webhook biasanya menggunakan permintaan POST HTTP/S, komunikasi internal dalam arsitektur mikroservis Anda dapat memperoleh manfaat dari gRPC. Titik akhir yang menghadap ke luar akan tetap berupa titik akhir HTTP/S yang menerima webhook, tetapi pemrosesan selanjutnya dapat didelegasikan ke layanan gRPC internal.
Mengimplementasikan Verifikasi Webhook Aman di Go
Keamanan adalah yang terpenting saat mengonsumsi webhook. Anda harus memverifikasi bahwa permintaan masuk benar-benar berasal dari Didit dan belum dirusak. Didit menyediakan kunci rahasia bersama untuk verifikasi tanda tangan HMAC-SHA256. Ini adalah langkah penting untuk mencegah aktor jahat menyuntikkan hasil verifikasi palsu ke dalam sistem Anda.
Berikut adalah garis besar konseptual untuk konsumsi webhook aman di Go:
- Ambil Rahasia Webhook: Dapatkan
secret_shared_keyAnda dari Didit's Business Console atau melalui Didit API (GET /v3/webhook/). - Terima Permintaan Webhook: Titik akhir HTTP/S Anda akan menerima permintaan POST dari Didit. Badan permintaan mentah dan header
X-Signaturesangat penting. - Verifikasi Tanda Tangan: Hitung tanda tangan HMAC-SHA256 dari badan permintaan mentah menggunakan
secret_shared_keyAnda. Bandingkan tanda tangan yang dihitung ini dengan yang disediakan di headerX-Signature. Jika tidak cocok, tolak permintaan segera. - Validasi Stempel Waktu: Webhook Didit menyertakan stempel waktu. Validasi bahwa stempel waktu ini baru (misalnya, dalam waktu 5 menit) untuk mengurangi serangan replay.
- Uraikan Payload: Setelah diverifikasi, uraikan payload JSON, yang akan berisi informasi terperinci tentang sesi verifikasi identitas, termasuk hasil proses seperti Verifikasi ID, Keaktifan Pasif & Aktif, atau Penyaringan AML.
- Proses Peristiwa: Berdasarkan jenis dan status peristiwa, picu tindakan hilir yang sesuai dalam aplikasi Anda.
Webhook Didit mendukung berbagai versi (v1, v2, v3), dengan v3 menjadi pilihan yang direkomendasikan untuk struktur datanya yang komprehensif. Anda dapat mengonfigurasi webhook_version dan webhook_url pilihan Anda menggunakan Didit API (PATCH /v3/webhook/) atau melalui Business Console. Anda juga dapat merotasi secret_shared_key Anda sesuai kebutuhan untuk keamanan yang ditingkatkan.
Pertimbangan Skala dan Retensi Data
Seiring bertambahnya basis pengguna Anda, volume webhook juga akan meningkat. Mikroservis Go gRPC Anda harus dirancang untuk skalabilitas. Ini dapat melibatkan:
- Pemrosesan Asinkron: Alih-alih memproses webhook secara sinkron di dalam penangan HTTP, dorong payload yang diverifikasi ke antrean pesan (misalnya, Kafka, RabbitMQ) untuk pemrosesan asinkron oleh layanan pekerja khusus. Ini memisahkan penyerapan dari pemrosesan, meningkatkan responsif dan toleransi kesalahan.
- Penyeimbangan Beban: Terapkan beberapa instans konsumen webhook Anda di belakang penyeimbang beban untuk mendistribusikan lalu lintas dan menangani beban puncak.
- Pemantauan: Terapkan pencatatan dan pemantauan yang kuat untuk melacak pengiriman webhook, waktu pemrosesan, dan potensi kesalahan.
Retensi data adalah aspek penting lainnya, terutama dengan data identitas. Didit bertindak sebagai pemroses data, dan Anda tetap menjadi pengontrol data. Didit menawarkan kebijakan retensi data yang dapat dikonfigurasi di Business Console, memungkinkan Anda untuk mengatur periode retensi dari 1 bulan hingga 10 tahun, atau tidak terbatas. Ini memastikan kepatuhan terhadap peraturan seperti GDPR dengan mengontrol berapa lama input verifikasi, output, dan metadata disimpan. Untuk mikroservis Anda sendiri, pastikan Anda juga memiliki strategi retensi data yang jelas untuk payload webhook yang Anda simpan dan proses secara internal, selaras dengan kewajiban hukum dan kepatuhan Anda.
Bagaimana Didit Membantu
Didit menyediakan infrastruktur identitas dasar yang membuat pembangunan konsumen webhook berkinerja tinggi menjadi mudah dan aman. Platform kami menawarkan tingkat KYC Inti Gratis, memungkinkan Anda untuk mulai memverifikasi identitas tanpa biaya di muka. Arsitektur modular Didit berarti Anda dapat memilih primitif identitas yang Anda butuhkan, seperti Verifikasi ID untuk pemeriksaan dokumen, Keaktifan Pasif & Aktif untuk pencegahan penipuan, atau Penyaringan & Pemantauan AML untuk kepatuhan, dan mengintegrasikannya dengan mulus ke dalam alur kerja Anda.
Webhook kami dirancang untuk pengembang, menyediakan pemberitahuan real-time untuk peristiwa penting. Dengan fitur-fitur seperti URL webhook yang dapat dikonfigurasi, versi payload (v3 direkomendasikan), dan rotasi kunci rahasia yang mudah, Didit memastikan Anda memiliki alat untuk membangun layanan konsumsi webhook yang aman dan skalabel. Pendekatan asli AI kami untuk verifikasi identitas berarti Anda menerima hasil yang sangat akurat dan andal, yang kemudian dapat dikonsumsi dan ditindaklanjuti secara instan oleh mikroservis Go gRPC Anda. Didit juga mendukung Verifikasi NFC untuk ePaspor dan eID, memberikan tingkat jaminan tertinggi, dengan semua hasil dapat didorong melalui webhook.
Siap Memulai?
Siap melihat Didit beraksi? Dapatkan demo gratis hari ini.
Mulai verifikasi identitas secara gratis dengan tingkat gratis Didit.