Puoi criptare in modo sicuro tutti i dati che si spostano tra le applicazioni client e Memorystore for Valkey. Questa operazione è detta crittografia in transito. Utilizzando la crittografia in transito, tutto il traffico Valkey viene criptato tramite il protocollo Transport Layer Security (TLS). In questo modo, tutti i dati che si spostano tra le applicazioni e Memorystore for Valkey rimangono riservati e non vengono manomessi.
Se la crittografia in transito è abilitata, i client Valkey comunicano esclusivamente tramite una connessione sicura. I client Valkey non configurati per TLS vengono bloccati. Se scegli di utilizzare la crittografia in transito, è tua responsabilità assicurarti che il client Valkey possa utilizzare il protocollo TLS.
Di seguito sono riportati esempi di casi d'uso per l'utilizzo della crittografia in transito:
- Proteggi i dati sensibili memorizzati nella cache: se utilizzi Memorystore for Valkey per archiviare informazioni di alto valore, come token di sessione, informazioni che consentono l'identificazione personale (PII) o chiavi API, la crittografia in transito impedisce agli autori degli attacchi con accesso VPC di accedere ai tuoi dati.
- Conformità agli standard di settore: molti framework di sicurezza, tra cui HIPAA per il settore sanitario e PCI DSS per i dati finanziari, impongono la crittografia delle informazioni sensibili sia at-rest che in transito per scopi di conformità normativa e di settore.
- Autenticazione sicura di Identity and Access Management (IAM): quando utilizzi l'autenticazione IAM per gestire l'accesso ai tuoi dati, Memorystore for Valkey richiede TLS per impedire l'esposizione o la perdita di token di autenticazione durante la trasmissione.
- Prevenire gli attacchi man-in-the-middle: TLS autentica l'endpoint del server utilizzando le autorità di certificazione. Le CA proteggono l'applicazione dallo spoofing del server e dalla modifica non autorizzata dei dati man mano che i dati vengono spostati tra l'applicazione e Memorystore for Valkey.
Prerequisiti per la crittografia dei dati in transito
Per utilizzare la crittografia in transito con Memorystore for Valkey, sono necessari:
Un client Valkey che supporta TLS o un sidecar TLS di terze parti.
I certificati CA installati sulla macchina client che accede alla tua istanza.
Non tutte le librerie client Valkey supportano TLS. Se utilizzi un client che non supporta TLS, ti consigliamo di utilizzare un plug-in di terze parti che attiva TLS per il tuo client. Puoi vedere un esempio di come connetterti a un'istanza con modalità cluster abilitata o con modalità cluster disabilitata in Memorystore for Valkey con la crittografia in transito abilitata.
Autorità di certificazione (CA)
Un'istanza che utilizza la crittografia in transito ha autorità di certificazione (CA) che autenticano i certificati delle macchine nell'istanza. Memorystore for Valkey ti consente di scegliere una modalità CA server. La modalità CA determina quale gerarchia CA viene utilizzata per emettere i certificati digitali per un'istanza.
Memorystore for Valkey offre le seguenti modalità CA:
- CA per istanza: Memorystore for Valkey esegue il provisioning di ogni istanza con una propria infrastruttura CA univoca. Per accedere a un'istanza in modo sicuro, devi configurare i client in modo che considerino attendibile questa gerarchia CA. Ciò comporta il download e l'installazione dei certificati CA su ogni client che accede all'istanza.
- CA condivisa: un'infrastruttura CA gestita e regionalizzata. Per ogni regione, puoi scaricare un singolo bundle di certificati CA. Questo pacchetto è valido per tutte le istanze situate in una regione che configuri per utilizzare la CA condivisa. L'utilizzo di una CA condivisa riduce il numero di certificati che i client devono gestire.
- CA gestita dal cliente: utilizza il tuo pool di CA ospitato su Certificate Authority Service. Se le tue applicazioni client sono configurate per considerare attendibile questa CA, le tue applicazioni possono connettersi a un'istanza senza che tu debba scaricare e installare certificati CA aggiuntivi. In questo modo, hai un maggiore controllo e puoi soddisfare i requisiti di conformità.
Rotazione del certificato del server
Ogni settimana, Memorystore for Valkey esegue la rotazione dei certificati lato server per le istanze che utilizzano le modalità CA per istanza, CA condivisa e CA gestita dal cliente. I nuovi certificati del server si applicano solo alle nuove connessioni e le connessioni esistenti rimangono attive durante questa rotazione.
Oltre alla rotazione settimanale dei certificati lato server di Memorystore for Valkey, per la modalità CA gestita dal cliente puoi ruotare i certificati on demand.
Impatto sulle prestazioni dell'abilitazione della crittografia in transito
La funzionalità di crittografia in transito cripta e decripta i dati, il che comporta un sovraccarico di elaborazione. Di conseguenza, l'attivazione della crittografia in transito può ridurre le prestazioni dei tuoi client. Inoltre, quando utilizzi la crittografia in transito, ogni connessione aggiuntiva comporta un costo delle risorse associato.
Per determinare la latenza associata all'utilizzo della crittografia in transito, confronta il rendimento dei tuoi client. A questo scopo, confronta il rendimento di un'istanza con la crittografia in transito attivata con quello di un'istanza con la crittografia in transito disattivata.
Linee guida per migliorare il rendimento
Per migliorare il rendimento di un'istanza, utilizza le seguenti linee guida:
Se possibile, riduci il numero di connessioni client. Anziché creare connessioni on demand di breve durata, stabilisci e riutilizza connessioni di lunga durata.
Aumenta le dimensioni dell'istanza.
Aumenta le risorse della CPU della macchina host del tuo cliente. Le macchine client con un numero maggiore di CPU offrono prestazioni migliori. Se utilizzi una VM Compute Engine, ti consigliamo di utilizzare istanze ottimizzate.
Ridurre le dimensioni del payload associate al traffico del tuo cliente. Payload più grandi richiedono più round trip.