Перейти к основному содержанию
Перейти к основному содержанию

Шифрование данных

Шифрование на уровне хранилища

ClickHouse Cloud по умолчанию использует шифрование данных в состоянии покоя с использованием управляемых облачным провайдером ключей AES‑256. Для получения дополнительной информации см.:

Шифрование на уровне базы данных

Enterprise plan feature

Enhanced Encryption is available in the Enterprise plan. To upgrade, visit the plans page in the cloud console.

Данные в состоянии покоя по умолчанию шифруются с помощью ключей AES‑256, управляемых облачным провайдером. Пользователи могут включить Transparent Data Encryption (TDE), чтобы обеспечить дополнительный уровень защиты служебных данных, или предоставить собственный ключ для использования Customer Managed Encryption Keys (CMEK) для своего сервиса.

Усиленное шифрование в настоящее время доступно в сервисах AWS и GCP. Поддержка Azure появится позже.

Transparent Data Encryption (TDE)

TDE необходимо включить при создании сервиса. Невозможно зашифровать уже существующие сервисы после их создания. После включения TDE его нельзя отключить. Все данные в сервисе останутся зашифрованными. Если вы хотите отключить TDE после того, как он был включён, необходимо создать новый сервис и перенести в него ваши данные.

  1. Выберите Create new service
  2. Задайте имя сервиса
  3. Выберите AWS или GCP как облачного провайдера и нужный регион из выпадающего списка
  4. Откройте выпадающий список Enterprise features и включите опцию Enable Transparent Data Encryption (TDE)
  5. Нажмите Create service

Customer Managed Encryption Keys (CMEK)

Примечание

Удаление ключа KMS, используемого для шифрования сервиса ClickHouse Cloud, приведёт к остановке вашего сервиса ClickHouse, а его данные, включая существующие резервные копии, станут невосстановимыми. Чтобы предотвратить случайную потерю данных при ротации ключей, вы можете сохранить старые ключи KMS на некоторый период времени перед их удалением.

После того как сервис зашифрован с помощью TDE, пользователи могут обновить ключ, чтобы включить CMEK. Сервис будет автоматически перезапущен после обновления настройки TDE. В ходе этого процесса старый ключ KMS расшифровывает ключ шифрования данных (DEK), а новый ключ KMS повторно шифрует DEK. Это гарантирует, что после перезапуска сервис будет использовать новый ключ KMS для последующих операций шифрования. Этот процесс может занять несколько минут.

Включение CMEK с AWS KMS
  1. В ClickHouse Cloud выберите зашифрованный сервис

  2. Нажмите Settings слева

  3. Внизу экрана разверните раздел Network security information

  4. Скопируйте Encryption role ID (AWS) или Encryption Service Account (GCP) — это потребуется вам на одном из следующих шагов

  5. Создайте ключ KMS для AWS

  6. Нажмите на ключ

  7. Обновите политику ключа AWS следующим образом:

    {
        "Sid": "Allow ClickHouse Access",
        "Effect": "Allow",
        "Principal": {
            "AWS": [ "Encryption role ID " ]
        },
        "Action": [
            "kms:Encrypt",
            "kms:Decrypt",
            "kms:ReEncrypt*",
            "kms:DescribeKey"
        ],
        "Resource": "*"
    }
    
  8. Сохраните политику ключа (Key policy)

  9. Скопируйте Key ARN

  10. Вернитесь в ClickHouse Cloud и вставьте Key ARN в раздел Transparent Data Encryption в Service Settings

  11. Сохраните изменения

Включение CMEK с GCP KMS
  1. В ClickHouse Cloud выберите зашифрованный сервис
  2. Нажмите Settings слева
  3. Внизу экрана разверните раздел Network security information
  4. Скопируйте Encryption Service Account (GCP) — это потребуется вам на одном из следующих шагов
  5. Создайте ключ KMS для GCP
  6. Нажмите на ключ
  7. Предоставьте следующие права аккаунту GCP Encryption Service Account, скопированному на шаге 4 выше:
    • Cloud KMS CryptoKey Encrypter/Decrypter
    • Cloud KMS Viewer
  8. Сохраните права для ключа (Key permission)
  9. Скопируйте Key Resource Path
  10. Вернитесь в ClickHouse Cloud и вставьте Key Resource Path в раздел Transparent Data Encryption в Service Settings
  11. Сохраните изменения

Ротация ключей

После настройки CMEK выполните ротацию ключа, следуя описанным выше процедурам по созданию нового ключа KMS и назначению прав. Вернитесь в настройки сервиса, вставьте новый ARN (AWS) или Key Resource Path (GCP) и сохраните настройки. Сервис перезапустится для применения нового ключа.

Служба опроса ключей KMS

При использовании CMEK валидность предоставленного ключа KMS проверяется каждые 10 минут. Если ключ KMS становится недоступным, служба ClickHouse будет остановлена. Чтобы возобновить работу службы, восстановите доступ к ключу KMS, следуя инструкциям в данном руководстве, а затем перезапустите службу.

Резервное копирование и восстановление

Резервные копии шифруются тем же ключом, что и связанная служба. При восстановлении зашифрованной резервной копии создаётся зашифрованный экземпляр, который использует тот же ключ KMS, что и исходный экземпляр. При необходимости вы можете выполнить ротацию ключа KMS после восстановления; дополнительные сведения см. в разделе Ротация ключей.

Производительность

Шифрование базы данных использует встроенную в ClickHouse виртуальную файловую систему для шифрования данных для шифрования и защиты ваших данных. Для этой функции используется алгоритм AES_256_CTR, который, как ожидается, приведёт к снижению производительности на 5–15 % в зависимости от нагрузки:

Потеря производительности при использовании CMEK