Chiffrement au niveau du stockage
ClickHouse Cloud est configuré par défaut avec le chiffrement des données au repos, à l’aide de clés AES 256 gérées par le fournisseur cloud. Pour plus d’informations, consultez :
- Chiffrement côté serveur AWS pour S3
- Chiffrement des données au repos par défaut de GCP
- Chiffrement du stockage Azure pour les données au repos
Chiffrement au niveau de la base de données
Chiffrement renforcé est disponible avec le plan Enterprise. Pour effectuer la mise à niveau, consultez la page des plans dans la Cloud Console.
Les données au repos sont chiffrées par défaut à l’aide de clés AES 256 gérées par le fournisseur cloud. Les clients peuvent activer Transparent Data Encryption (TDE) pour ajouter une couche de protection supplémentaire aux données du service, ou fournir leur propre clé afin d’implémenter des clés de chiffrement gérées par le client (CMEK) pour leur service.
Le chiffrement renforcé est actuellement disponible pour les services AWS et GCP. La prise en charge d’Azure sera bientôt disponible.
Transparent Data Encryption (TDE)
TDE doit être activé lors de la création du service. Il n’est pas possible de chiffrer des services existants après leur création. Une fois TDE activé, il ne peut plus être désactivé. Toutes les données du service resteront chiffrées. Si vous souhaitez désactiver TDE après l’avoir activé, vous devez créer un nouveau service et y migrer vos données.
- Sélectionnez
Create new service - Donnez un nom au service
- Sélectionnez AWS ou GCP comme fournisseur cloud, puis choisissez la région souhaitée dans le menu déroulant
- Cliquez sur le menu déroulant Enterprise features et activez l’option Enable Transparent Data Encryption (TDE)
- Cliquez sur Create service
Clés de chiffrement gérées par le client (CMEK)
Une fois qu’un service est chiffré avec TDE, les clients peuvent mettre à jour la clé pour activer CMEK. Le service redémarrera automatiquement après la mise à jour du paramètre TDE. Pendant ce processus, l’ancienne clé KMS déchiffre la clé de chiffrement des données (DEK), et la nouvelle clé KMS rechiffre la DEK. Cela garantit qu’après le redémarrage, le service utilisera désormais la nouvelle clé KMS pour les opérations de chiffrement. Ce processus peut prendre plusieurs minutes.
Activer CMEK avec AWS KMS
-
Dans ClickHouse Cloud, sélectionnez le service chiffré
-
Cliquez sur Settings à gauche
-
En bas de l’écran, développez Network security information
-
Copiez Encryption role ID (AWS) ou Encryption Service Account (GCP) - vous en aurez besoin à une étape ultérieure
-
Cliquez sur la clé
-
Mettez à jour la Key Policy AWS comme suit :
{ "Sid": "Allow ClickHouse Access", "Effect": "Allow", "Principal": { "AWS": [ "Encryption role ID " ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:DescribeKey" ], "Resource": "*" } -
Enregistrez la Key Policy
-
Copiez le Key ARN
-
Revenez à ClickHouse Cloud et collez le Key ARN dans la section Transparent Data Encryption de Service Settings
-
Enregistrez la modification
Activer CMEK avec GCP KMS
- Dans ClickHouse Cloud, sélectionnez le service chiffré
- Cliquez sur Settings à gauche
- En bas de l’écran, développez Network security information
- Copiez Encryption Service Account (GCP) - vous en aurez besoin à une étape ultérieure
- Créez une clé KMS pour GCP
- Cliquez sur la clé
- Accordez les permissions suivantes au GCP Encryption Service Account copié à l’étape 4 ci-dessus.
- Cloud KMS CryptoKey Encrypter/Decrypter
- Cloud KMS Viewer
- Enregistrez la Key permission
- Copiez le Key Resource Path
- Revenez à ClickHouse Cloud et collez le Key Resource Path dans la section Transparent Data Encryption de Service Settings
- Enregistrez la modification
Activer CMEK avec Azure KMS
- Dans ClickHouse Cloud, sélectionnez le service chiffré
- Cliquez sur
Settingsà gauche - En bas de l’écran, développez
Network security information - Copiez le
Cross Tenant App Client ID— vous en aurez besoin à l’étape suivante - Connectez-vous à votre abonnement Azure et utilisez la commande suivante dans l’Azure CLI pour créer un nouveau service principal ; remplacez
{azure_cross_tenant_app_client_id}par la valeur copiée à l’étape précédenteaz ad sp create --id {azure_cross_tenant_app_client_id} - Copiez le
Namedu nouveau service principal créé — vous en aurez besoin à une étape ultérieure - Créez un Azure Key Vault
- Créez une clé Key Vault dans Azure
- Dans la clé Key Vault, sélectionnez
Access control (IAM)à gauche - Sélectionnez
Role assignmentsdans le menu supérieur - Cliquez sur
Add, puis surAdd role assignmentdans le menu supérieur - Sélectionnez le rôle
Key Vault Crypto User, puis cliquez surNext - Conservez les sélections par défaut dans l’écran
Add role assignment, puis cliquez sur+Select members - Collez le nom du service principal copié à l’étape 6 (il commence par CH-TDE), sélectionnez le service principal, puis cliquez sur
Select - Cliquez sur
Next, puis surReview + assign - Revenez à votre Azure Key Vault et copiez les valeurs suivantes :
- Depuis la page Overview, copiez l’URI de votre coffre
- Depuis la page Overview, copiez votre Directory ID
- Depuis la page Keys, copiez le
Namede votre clé
- Revenez aux paramètres de votre service dans ClickHouse Cloud et collez les valeurs de l’étape 16 dans les champs suivants :
- Key ID > collez le
Namede votre clé - Key Vault URI > collez l’URI de votre coffre
- Key Tenant ID > collez votre Directory ID
- Key ID > collez le
- Cliquez sur Rotate KMS, attendez quelques minutes, car cela entraînera un redémarrage progressif, puis vérifiez que votre service est en cours d’exécution
Rotation de la clé
Une fois CMEK configuré, effectuez la rotation de la clé en suivant les procédures ci-dessus pour créer une nouvelle clé KMS et accorder les autorisations nécessaires. Revenez aux paramètres du service pour y coller le nouvel ARN (AWS), le Key Resource Path (GCP) ou le Key Name (Azure), puis enregistrez les paramètres. Le service redémarrera pour appliquer la nouvelle clé.
Vérification périodique de la clé KMS
Lors de l'utilisation de CMEK, la validité de la clé KMS fournie est vérifiée toutes les 10 minutes. Si l'accès à la clé KMS n'est plus valide, le service ClickHouse s'arrête. Pour remettre le service en route, rétablissez l'accès à la clé KMS en suivant les étapes de ce guide, puis redémarrez le service.
Sauvegarde et restauration
Les sauvegardes sont chiffrées à l’aide de la même clé que le service associé. Lorsque vous restaurez une sauvegarde chiffrée, vous obtenez une instance chiffrée qui utilise la même clé KMS que l’instance d’origine. Si nécessaire, vous pouvez effectuer une rotation de la clé KMS après la restauration ; consultez rotation de la clé pour plus de détails.
Performance
Le chiffrement au niveau de la base de données s'appuie sur la fonctionnalité de système de fichiers virtuel pour le chiffrement des données intégrée à ClickHouse pour chiffrer et protéger vos données. L'algorithme utilisé pour cette fonctionnalité est AES_256_CTR, ce qui devrait entraîner une baisse de performance de 5 à 15 % selon la charge de travail :
