Sertifikat CA kustom

Webhook Agen Percakapan (Dialogflow CX) memerlukan endpoint HTTPS yang menampilkan sertifikat TLS yang valid saat diverifikasi menggunakan penyimpanan tepercaya default Google. Namun, Anda mungkin ingin menggunakan sertifikat CA kustom, yang tidak dapat ditandatangani oleh otoritas sertifikat yang diakui oleh trust store default Google. Misalnya, server webhook yang berada di dalam jaringan VPC pribadi Google mengalami masalah ini. Dalam hal ini, Anda dapat mengupload sertifikat kustom ke Agen Percakapan (Dialogflow CX) saat membuat webhook, dan sertifikat yang diupload akan menggantikan penyimpanan tepercaya default Google.

Sertifikat CA kustom dapat berupa sertifikat yang ditandatangani sendiri atau sertifikat root 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.

Demo server yang ditandatangani sendiri

Berikut adalah konfigurasi server demo:

  1. Siapkan file sertifikat yang ditandatangani sendiri. Kita menggunakan www.example.com sebagai contoh domain.
    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
  2. Mulai server HTTPS Anda menggunakan sertifikat server (server.crt) dan kunci pribadi (server.key) yang dibuat pada langkah sebelumnya. Kita mengasumsikan server memproses port 443.
  3. Uji untuk terhubung ke server secara lokal.
    curl --cacert server.crt https://www.example.com --resolve www.example.com:443:127.0.0.1

Webhook demo 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 sendiri yang bertanggung jawab untuk memastikan bahwa domain Anda akan diselesaikan 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 Service Directory, Siapkan Endpoint Service Directory dengan alamat IP dan port server Anda, lalu berikan Layanan Service Directory saat membuat webhook.