Handshake TLS della cache delle risposte non riuscito

Scopri come risolvere gli errori di handshake TLS della cache delle risposte durante la creazione delle distribuzioni API con il servizio Gateway API.

Se l'inserimento delle risposte nella cache è abilitato e il gateway API segnala problemi di integrità della cache con un errore di handshake TLS, il gateway API può raggiungere il percorso di connessione alla cache, ma non può completare l'handshake TLS con l'area di memorizzazione cache.

Sintomi problema

Potresti vedere uno o più dei seguenti sintomi:

  • La distribuzione dell'API è attiva, ma le risposte non vengono memorizzate nella cache.
  • La cache delle risposte non è in buono stato.
  • I log di esecuzione includono un timeout di handshake SSL, un errore di handshake TLS o un errore di connessione alla cache.
  • Le risposte inserite nella cache non funzionano più, ma l'API continua a servire il traffico.

Cause possibili

Questo problema può verificarsi per uno o più dei seguenti motivi:

  • Il nome host o la porta dell'endpoint della cache non sono corretti.
  • La distribuzione API è configurata per l'uso di TLS, ma il listener cache non è configurato per TLS sulla porta specificata o non presenta il certificato previsto.
  • Il server cache presenta una catena di certificati scaduta, incompleta o non valida.
  • Un firewall, un proxy, una regola di instradamento, un gruppo di sicurezza di rete (NSG) o un elenco di sicurezza bloccano o interrompono l'handshake TLS.
  • La subnet del gateway non può raggiungere in modo affidabile l'endpoint della cache.
  • Le credenziali di autenticazione cache nel segreto di riferimento sono mancanti, scadute o errate.

Esaminare la configurazione della cache delle risposte

Rivedere la configurazione della cache delle risposte e confermare che le impostazioni seguenti corrispondono all'endpoint della cache che si prevede venga utilizzato da API Gateway:

  • responseCaching.responseCache.servers[0].host
  • responseCaching.responseCache.servers[0].port
  • responseCaching.responseCache.isSslEnabled
  • responseCaching.responseCache.isSslVerifyDisabled
  • responseCaching.responseCache.authenticationSecretId
  • responseCaching.responseCache.authenticationSecretVersionNumber
  • responseCaching.responseCache.connectTimeoutInMs

Verificare che la configurazione della cache delle risposte punti al server cache previsto. Il gateway API supporta un solo host cache server per l'inserimento delle risposte nella cache.

Controllare il log di esecuzione

Controllare il log di esecuzione per individuare errori di handshake TLS nella cache delle risposte o errori di connessione alla cache.

Conferma endpoint TLS cache

Confermare che l'endpoint della cache è pronto ad accettare la connessione TLS dal gateway:

  • Verificare che il listener della cache preveda TLS sulla porta configurata.
  • Confermare che il certificato presentato dal server cache è collegato a un'autorità di certificazione (CA) di cui il gateway API si fida quando la verifica del certificato è abilitata.
  • Verificare che il nome utente e la password della cache nel segreto di riferimento siano validi.
  • Da un'istanza di computazione che utilizza lo stesso percorso di rete della subnet del gateway, eseguire nc -vz <cache-host> <cache-port> per confermare la raggiungibilità TCP.
  • Eseguire openssl s_client -connect <cache-host>:<cache-port> -servername <cache-host> -showcerts per esaminare la catena di certificati e i risultati dell'handshake TLS.

Correggi problemi TLS cache risposte

Utilizzare le azioni riportate di seguito per risolvere l'errore di handshake TLS.

  • Se l'endpoint della cache non è corretto, aggiornare l'host o la porta della cache configurata.
  • Se il server cache non è in ascolto di TLS sulla porta configurata, correggere la configurazione del listener o disabilitare TLS nella configurazione del gateway quando il traffico della cache in testo non codificato è accettabile per l'ambiente in uso.
  • Se la catena di certificati è scaduta, incompleta o non attendibile, aggiornare la catena di certificati o la configurazione attendibile.
  • Se le credenziali della cache non sono corrette, aggiornare la versione del segreto di riferimento con il nome utente e la password corretti.
  • Se il percorso di rete è bloccato, aggiornare la regola di instradamento, la regola NSG, la regola della lista di sicurezza, il firewall o la configurazione proxy che controlla il traffico tra la subnet del gateway e l'endpoint della cache.

Verifica cache risposte

Dopo aver aggiornato la configurazione, verificare che l'inserimento delle risposte nella cache funzioni come previsto:

  • Ripetere una richiesta che deve utilizzare l'inserimento delle risposte nella cache.
  • Verificare che l'errore di handshake TLS della cache non venga più visualizzato nel log di esecuzione.
  • Confermare che il gateway API non segnala più problemi di integrità della cache delle risposte per il percorso della richiesta.

Per ulteriori informazioni

Per ulteriori informazioni, fare riferimento agli argomenti sotto riportati.