Pengenalan
Saat CSKU AI mengirim webhook ke endpoint Anda, request akan menyertakan headerAuthorization yang berisi secret key yang telah Anda konfigurasi di dashboard.
Tanggung Jawab Pengguna: Validasi webhook sepenuhnya menjadi tanggung jawab Anda. CSKU AI hanya mengirimkan header
Authorization - Anda yang harus memvalidasi di sisi server Anda untuk memastikan request benar-benar berasal dari CSKU AI.Tanpa validasi yang tepat, endpoint webhook Anda bisa menerima request palsu dari pihak yang tidak berwenang.
Cara Kerja
- Anda mengatur secret key di dashboard CSKU AI (app.csku.ai/settings/webhook-settings)
- Setiap kali CSKU AI mengirim webhook, secret key tersebut disertakan di header
Authorization - Anda bertanggung jawab untuk memvalidasi header ini di server Anda
Header Autentikasi
Validasi (Tanggung Jawab Anda)
Anda wajib memvalidasi headerAuthorization di server Anda. CSKU AI tidak melakukan validasi - kami hanya mengirim webhook dengan header yang berisi secret key Anda.
1
Ekstrak Header
Baca header
Authorization dari request yang masuk2
Bandingkan
Bandingkan nilai header dengan secret key yang Anda simpan
3
Respons
Kembalikan 401 jika tidak cocok, lanjutkan jika cocok
Contoh Implementasi
Node.js/Express
Python/Flask
PHP
Kesalahan Umum
Case Sensitivity
Case Sensitivity
Perbandingan secret key bersifat case-sensitive. Pastikan Anda membandingkan nilai yang tepat tanpa modifikasi apapun.
Whitespace
Whitespace
Perhatikan whitespace di awal atau akhir secret key Anda. Gunakan
.trim() atau yang setara untuk membersihkan input.Nama Header
Nama Header
Pastikan Anda memeriksa header
Authorization, bukan header kustom seperti X-Authorization.Environment Variables
Environment Variables
Jangan hardcode secret key Anda. Gunakan environment variables atau secrets management.
Praktik Terbaik
Ikuti praktik terbaik ini untuk memastikan penanganan webhook yang aman.
1. Gunakan Environment Variables
2. Implementasikan Rate Limiting
3. Log Percobaan Autentikasi
4. Gunakan HTTPS di Produksi
Selalu gunakan HTTPS untuk endpoint webhook Anda di lingkungan produksi.
- Mengenkripsi data dalam transit
- Mencegah serangan man-in-the-middle
- Standar industri untuk keamanan API
5. Rotasi Secret Key Secara Berkala
Troubleshooting
Kegagalan Autentikasi
Gejala: Selalu menerima error 401Periksa Secret Key
Periksa Secret Key
Verifikasi secret key Anda cocok persis dengan yang dikonfigurasi di dashboard CSKU AI.
Verifikasi Nama Header
Verifikasi Nama Header
Pastikan Anda memeriksa header yang benar:
Authorization (bukan authorization dengan huruf kecil).Cari Whitespace
Cari Whitespace
Trim whitespace dari secret yang disimpan dan header yang diterima.
Case Sensitivity
Case Sensitivity
Secret key bersifat case-sensitive. Periksa perbedaan huruf besar/kecil yang tidak disengaja.
Mode Debug
Penting: Hapus debug logging sebelum deploy ke produksi untuk menghindari eksposur data sensitif.
Langkah Keamanan Tambahan
IP Whitelisting
IP Whitelisting
Pertimbangkan untuk whitelist alamat IP CSKU AI (hubungi support untuk daftarnya).
Request Timeout
Request Timeout
Atur timeout yang wajar untuk mencegah serangan slow HTTP.
Validasi Payload
Validasi Payload
Validasi struktur dan tipe data dari payload yang masuk.
Rate Limiting
Rate Limiting
Implementasikan rate limiting per IP untuk mencegah penyalahgunaan.
Langkah Selanjutnya
Dukungan
Butuh bantuan dengan autentikasi webhook?- Email: [email protected]
- Dokumentasi: https://docs.csku.ai