Webhook Agen Percakapan (Dialogflow CX) memerlukan endpoint HTTPS yang menampilkan sertifikat TLS yang valid saat diverifikasi menggunakan trust store default Google. Namun, Anda mungkin ingin menggunakan sertifikat CA kustom, yang tidak dapat ditandatangani oleh certificate authority yang diakui oleh trust store default Google. Misalnya, server webhook yang berada di dalam jaringan VPC pribadi Google memiliki masalah ini. Dalam hal ini, Anda dapat mengupload sertifikat kustom ke Agen Percakapan (Dialogflow CX) saat membuat webhook, dan sertifikat yang diupload akan mengganti penyimpanan tepercaya default Google.
Sertifikat CA kustom dapat berupa sertifikat yang ditandatangani sendiri atau root certificate
kustom. Anda dapat mengupload beberapa sertifikat jika ingin merotasi
sertifikat. Sertifikat harus dalam
format DER
dan harus ditandatangani dengan
nama alternatif subjek
yang cocok dengan URL webhook. Jika ekstensi
keyUsage
ada, nilainya harus digitalSignature
.
Server demo dengan tanda tangan sendiri
Berikut adalah konfigurasi server demo:
- Siapkan file sertifikat yang ditandatangani sendiri.
Kita menggunakan www.example.com sebagai domain contoh.
openssl genrsa -out server.key 2048 openssl req -nodes -new -sha256 -newkey rsa:2048 -key server.key -subj "/CN=www.example.com" -out server.csr openssl x509 -req -days 3650 -sha256 -in server.csr -signkey server.key -out server.crt -extfile <(printf "\nsubjectAltName='DNS:www.example.com'") openssl x509 -in server.crt -out server.der -outform DER
- Mulai server HTTPS menggunakan sertifikat server (
server.crt
) dan kunci pribadi (server.key
) yang dibuat di langkah sebelumnya. Kita mengasumsikan server memproses port 443. -
Uji untuk terhubung ke server secara lokal.
curl --cacert server.crt https://www.example.com --resolve www.example.com:443:127.0.0.1
Demo webhook dengan sertifikat kustom
Setelah menyiapkan server dengan sertifikat kustom, Anda dapat membuat resource webhook dengan petunjuk tambahan berikut untuk menggunakan sertifikat kustom:
- Tetapkan URL yang cocok dengan domain yang ditandatangani dengan sertifikat
(
https://www.example.com
dalam demo sebelumnya). Anda bertanggung jawab untuk memastikan bahwa domain Anda akan di-resolve dengan benar ke alamat IP server. - Upload sertifikat kustom dalam format DER. Ini adalah file
server.der
dalam demo yang ditandatangani sendiri sebelumnya atau sertifikat root kustom. - Untuk webhook yang terintegrasi dengan akses jaringan pribadi Direktori Layanan, siapkan Endpoint Direktori Layanan dengan alamat IP dan port server Anda, lalu berikan Layanan Direktori Layanan saat membuat webhook.