Vous pouvez chiffrer de manière sécurisée toutes les données qui transitent entre vos applications clientes et Memorystore pour Valkey. Il s'agit du chiffrement en transit. Grâce au chiffrement en transit, tout le trafic Valkey est chiffré à l'aide du protocole TLS (Transport Layer Security). Ainsi, toutes les données qui transitent entre vos applications et Memorystore pour Valkey restent confidentielles et ne sont pas falsifiées.
Lorsque le chiffrement en transit est activé, les clients Valkey communiquent exclusivement via une connexion sécurisée. Les clients Valkey qui ne sont pas configurés pour TLS sont bloqués. Si vous choisissez d'utiliser le chiffrement en transit, vous devez vous assurer que votre client Valkey peut utiliser le protocole TLS.
Voici des exemples de cas d'utilisation du chiffrement en transit :
- Protéger les données mises en cache sensibles : si vous utilisez Memorystore pour Valkey afin de stocker des informations importantes, telles que des jetons de session, des informations permettant d'identifier personnellement l'utilisateur ou des clés API, le chiffrement en transit empêche les pirates ayant accès au VPC d'accéder à vos données.
- Respecter les normes du secteur : de nombreux cadres de sécurité, y compris HIPAA pour les données de santé et PCI DSS pour les données financières, exigent que les informations sensibles soient chiffrées au repos et en transit à des fins de conformité réglementaire et sectorielle.
- Sécuriser l'authentification Identity and Access Management (IAM): lorsque vous utilisez l'authentification IAM pour gérer l'accès à vos données, Memorystore pour Valkey nécessite TLS pour éviter l'exposition ou la fuite de jetons d'authentification lors de la transmission.
- Empêcher les attaques de type "personne au milieu" : TLS authentifie le point de terminaison du serveur à l'aide d'autorités de certification. Les autorités de certification protègent votre application contre l'usurpation d'identité du serveur et la modification non autorisée des données lors de leur transfert entre votre application et Memorystore pour Valkey.
Prérequis pour le chiffrement en transit
Pour utiliser le chiffrement en transit avec Memorystore pour Valkey, vous avez besoin des éléments suivants :
Un client Valkey compatible avec TLS ou un side-car TLS tiers.
Des certificats CA installés sur la machine cliente qui accède à votre instance.
Toutes les bibliothèques clientes Valkey ne sont pas compatibles avec TLS. Si vous utilisez un client non compatible avec TLS, nous vous recommandons d'utiliser un plug-in tiers qui active TLS pour votre client. Vous pouvez voir un exemple de connexion à une instance Memorystore pour Valkey pour laquelle le mode cluster est activé ou désactivé et pour laquelle le chiffrement en transit est activé.
Autorités de certification
Une instance qui utilise le chiffrement en transit comporte des autorités de certification qui authentifient les certificats des machines de l'instance. Memorystore pour Valkey vous permet de choisir un mode d'autorité de certification de serveur. Le mode d'autorité de certification détermine la hiérarchie d'autorités de certification utilisée pour émettre les certificats numériques d'une instance.
Memorystore pour Valkey propose les modes d'autorité de certification suivants :
- **Autorité de certification par instance** : Memorystore pour Valkey provisionne chaque instance avec sa propre infrastructure d'autorité de certification unique. Pour accéder à une instance de manière sécurisée, vous devez configurer vos clients pour qu'ils fassent confiance à cette hiérarchie d'autorités de certification. Pour ce faire, vous devez télécharger et installer des certificats CA sur chaque client qui accède à l'instance.
- Autorité de certification partagée : infrastructure d'autorité de certification gérée, régionalisée. Pour chaque région, vous pouvez télécharger un seul bundle de certificats CA. Ce bundle est valide pour toutes les instances situées dans une région que vous configurez pour utiliser l'autorité de certification partagée. L'utilisation d'une autorité de certification partagée réduit le nombre de certificats que les clients doivent gérer.
- Autorité de certification gérée par le client : utilisez votre propre pool d'autorités de certification hébergé sur Certificate Authority Service. Si vos applications clientes sont configurées pour faire confiance à cette autorité de certification, elles peuvent se connecter à une instance sans que vous ayez à télécharger et installer des certificats CA supplémentaires. Cela vous offre un meilleur contrôle et vous aide à respecter les exigences de conformité.
Rotation des certificats de serveur
Chaque semaine, Memorystore pour Valkey effectue une rotation des certificats côté serveur pour les instances qui utilisent les modes d'autorité de certification par instance, d'autorité de certification partagée et d'autorité de certification gérée par le client. Les nouveaux certificats de serveur ne s'appliquent qu'aux nouvelles connexions, et les connexions existantes restent actives pendant cette rotation.
En plus de la rotation hebdomadaire des certificats côté serveur effectuée par Memorystore pour Valkey, vous pouvez faire pivoter les certificats à la demande pour le mode d'autorité de certification gérée par le client.
Impact du chiffrement en transit sur les performances
La fonctionnalité de chiffrement en transit chiffre et déchiffre les données, ce qui entraîne une surcharge de traitement. L'activation du chiffrement en transit peut donc réduire les performances de vos clients. En outre, lorsque vous utilisez le chiffrement en transit, chaque connexion supplémentaire entraîne un coût de ressource associé.
Pour déterminer la latence associée à l'utilisation du chiffrement en transit, comparez les performances de vos clients. Pour ce faire, comparez les performances d'une instance pour laquelle le chiffrement en transit est activé à celles d'une instance pour laquelle il est désactivé.
Consignes pour améliorer les performances
Pour améliorer les performances d'une instance, suivez les consignes ci-dessous :
Si possible, réduisez le nombre de connexions client. Au lieu de créer des connexions de courte durée à la demande, établissez et réutilisez des connexions de longue durée.
Augmentez la taille de l'instance.
Augmentez les ressources de processeur de la machine hôte de votre client. Les machines clientes ayant davantage de processeurs offrent de meilleures performances. Si vous utilisez une VM Compute Engine, nous vous recommandons d'utiliser des instances optimisées.
Réduisez la taille de la charge utile associée au trafic de votre client. Les charges utiles volumineuses nécessitent davantage d'allers-retours.