Informazioni sulla crittografia dei dati in transito

Questa pagina fornisce una panoramica della crittografia in transito per Memorystore for Redis.

Per istruzioni su come criptare una connessione con la crittografia dei dati in transito, consulta Attivare la crittografia dei dati in transito.

Memorystore for Redis supporta solo le versioni del protocollo TLS 1.2 o successive.

Introduzione

Memorystore for Redis supporta la crittografia di tutto il traffico Redis utilizzando il protocollo Transport Layer Security (TLS). Se la crittografia in transito è abilitata, i client Redis comunicano esclusivamente attraverso una connessione su porte sicure. I client Redis che non sono configurati per TLS verranno bloccati. Se scegli di attivare la crittografia dei dati in transito, è tua responsabilità assicurarti che il client Redis sia in grado di utilizzare il protocollo TLS.

Prerequisiti per la crittografia dei dati in transito

Per utilizzare la crittografia in transito con Memorystore for Redis, devi disporre di:

  1. Un client Redis che supporta TLS o un sidecar TLS di terze parti
  2. Una autorità di certificazione installata sulla macchina client che accede all'istanza Redis

TLS nativo non era supportato prima della versione 6.0 di Redis open source. Di conseguenza, non tutte le librerie client Redis supportano TLS. Se utilizzi un client che non supporta TLS, ti consigliamo di utilizzare il plug-in di terze parti Stunnel che attiva TLS per il client. Consulta Connessione sicura a un'istanza Redis utilizzando Stunnel e telnet per un esempio di come connetterti a un'istanza Redis con Stunnel.

Autorità di certificazione

Un'istanza Redis che utilizza la crittografia in transito ha una o più autorità di certificazione (CA) univoche che vengono utilizzate per verificare l'identità del server. Una CA è una stringa che devi scaricare e installare sul client che accede alla tua istanza Redis. Un certificato CA è valido per dieci anni dalla data di creazione. Per garantire la continuità del servizio, la nuova CA deve essere installata sui client dell'istanza Redis prima della scadenza della CA precedente.

Rotazione dell'autorità di certificazione

Una CA è valida per 10 anni dalla creazione dell'istanza. Inoltre, una nuova CA diventa disponibile cinque anni dopo la creazione dell'istanza.

La vecchia CA è valida fino alla data di scadenza. Hai a disposizione cinque anni per scaricare e installare la nuova CA sui client che si connettono all'istanza Redis. Una volta scaduta la vecchia CA, puoi disinstallarla dai client.

Per istruzioni sulla rotazione dell'Autorità di certificazione, vedi Gestire la rotazione dell'Autorità di certificazione.

Rotazione del certificato del server

La rotazione dei certificati lato server avviene ogni 180 giorni e causa un calo transitorio della connessione di alcuni secondi. Per ristabilire la connessione, devi avere implementato la logica per i nuovi tentativi con il backoff esponenziale. La rotazione dei certificati non causa un failover per le istanze di livello Standard.

Limiti di connessione per la crittografia in transito

L'abilitazione della crittografia in transito nell'istanza Redis introduce dei limiti al numero massimo di connessioni client che l'istanza può avere. Il limite dipende dalla dimensione dell'istanza. Ti consigliamo di aumentare le dimensioni dell'istanza Redis se hai bisogno di più connessioni rispetto a quelle supportate dal tuo livello di capacità attuale.

Livello di capacità Numero massimo di connessioni per le versioni Redis 4.0, 5.0 e 6.x1 Numero massimo di connessioni per Redis versione 7.0 e successive1
M1 (1-4GB) 1000 65.000
M2 (5-10GB) 2.500 65.000
M3 (11-35GB) 15.000 65.000
M4 (36-100GB) 30.000 65.000
M5 (oltre 101 GB) 65.000 65.000

1 Questi limiti di connessione sono approssimativi e dipendono dalla frequenza e dalla complessità dei comandi Redis inviati per connessione.

Monitoraggio delle connessioni

Poiché le istanze Redis con crittografia in transito hanno limiti di connessione specifici, devi monitorare la metrica redis.googleapis.com/clients/connected per assicurarti di non superare il limite di connessione. Se il limite viene superato, l'istanza Redis rifiuta le nuove connessioni tentate. In questo caso, ti consigliamo di eseguire l'upgrade della tua istanza alle dimensioni che supportano il numero di connessioni richiesto. Se sospetti che le connessioni inattive costituiscano un numero significativo delle tue connessioni, puoi interromperle in modo proattivo con il parametro di configurazione timeout.

Impatto sul rendimento dell'abilitazione della crittografia in transito

La funzionalità di crittografia in transito cripta e decripta i dati, con un sovraccarico di elaborazione. Di conseguenza, l'attivazione della crittografia in transito può ridurre le prestazioni. Inoltre, quando utilizzi la crittografia dei dati in transito, ogni connessione aggiuntiva comporta un costo associato alla risorsa. Per determinare la latenza associata all'utilizzo della crittografia in transito, confronta le prestazioni dell'applicazione eseguendo un benchmark sia con un'istanza Redis in cui è abilitata la crittografia in transito sia con un'istanza Redis in cui è disabilitata.

Linee guida per migliorare il rendimento

  • Riduci il numero di connessioni client, se possibile. Stabilisci e riutilizza connessioni di lunga durata anziché creare connessioni temporanee on demand.
  • Aumenta le dimensioni dell'istanza Memorystore (si consiglia M4 o superiore).
  • Aumenta le risorse della CPU della macchina host del client Memorystore. Le macchine client con un numero di CPU più elevato offrono prestazioni migliori. Se utilizzi una VM Compute Engine, ti consigliamo le istanze ottimizzate per il calcolo.
  • Riduci le dimensioni del payload associate al traffico delle applicazioni perché i payload più grandi richiedono più viaggi di andata e ritorno.

Impatto della crittografia in transito sull'utilizzo della memoria

L'abilitazione della crittografia dei dati in transito riserva parte della memoria dell'istanza Redis per la funzionalità. A parità di altre condizioni, con la crittografia in transito abilitata, il valore della metrica Rapporto di utilizzo della memoria di sistema è superiore a causa della memoria di overhead aggiuntiva utilizzata dalla funzionalità.

Miglioramenti delle prestazioni della versione 7.0 di Redis

L'utilizzo della versione 7.0 di Redis su Memorystore for Redis migliora le prestazioni della crittografia in transito. Per trarre vantaggio da questi miglioramenti delle prestazioni, valuta la possibilità di eseguire l'upgrade dell'istanza per utilizzare Redis versione 7.0.

Passaggi successivi