I webhook di Conversational Agents (Dialogflow CX) richiedono endpoint HTTPS che presentino certificati TLS validi quando vengono verificati utilizzando l'archivio Attendibilità predefinito di Google. Tuttavia, potresti voler utilizzare certificati CA personalizzati, che non possono essere firmati da un'autorità di certificazione riconosciuta dall'archivio di attendibilità predefinito di Google. Ad esempio, i server webhook che si trovano all'interno della rete VPC privata di Google presentano questo problema. In questo caso, puoi caricare i certificati personalizzati in Conversational Agents (Dialogflow CX) durante la creazione di webhook e i certificati caricati sostituiranno l'archivio attendibilità predefinito di Google.
I certificati CA personalizzati possono essere certificati autofirmati o certificati radice personalizzati. Puoi caricare più certificati nel caso in cui tu voglia ruotarli. I certificati devono essere in
formato DER
e devono essere firmati con
nome alternativo del soggetto
corrispondente all'URL webhook. Quando è presente l'estensione
keyUsage, il suo valore deve essere digitalSignature.
Server autofirmato demo
Di seguito è riportata la configurazione di un server demo:
- Prepara i file dei certificati autofirmati.
Utilizziamo www.example.com come dominio di esempio.
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
- Avvia il server HTTPS utilizzando il certificato del server (
server.crt) e la chiave privata (server.key) creati nel passaggio precedente. Supponiamo che il server sia in ascolto sulla porta 443. -
Esegui il test per connetterti al server localmente.
curl --cacert server.crt https://www.example.com --resolve www.example.com:443:127.0.0.1
Webhook demo con certificato personalizzato
Dopo aver configurato il server con il certificato personalizzato, puoi creare una risorsa webhook con le seguenti istruzioni aggiuntive per utilizzare il certificato personalizzato:
- Imposta l'URL in modo che corrisponda al dominio firmato con il certificato
(
https://www.example.comnella demo precedente). È tua responsabilità assicurarti che il tuo dominio venga risolto correttamente nell'indirizzo IP del server. - Carica il certificato personalizzato in formato DER. Questo è il file
server.dernella demo autofirmata precedente o il certificato radice personalizzato. - Per i webhook integrati con l'accesso alla rete privata di Service Directory, configura l'endpoint Service Directory con l'indirizzo IP e la porta del server e fornisci il servizio Service Directory quando crei il webhook.