Шифрование конфиденциальных данных
Мы рекомендуем шифровать конфиденциальные данные на машине с установленным Hive:
- все данные на диске или отдельные директории средствами ОС;
- пароли и ключи доступа к сторонним системам при помощи средств самого Hive;
- либо настроить интеграцию с Vault, чтобы не хранить их на этой машине.
Шифрование средствами ОС
Вы можете шифровать весь диск или один из перечисленных каталогов:
/opt/hw-bw/data/opt/hw-bw/config
Для шифрования вы также можете использовать:
- Программное обеспечение ОС (EncFS, CryFS, dm-crypt и т. д.);
- Коммерческие приложения;
- Решения для облачных провайдеров (AWS, Azure и т. д.).
Шифрование средствами приложения
При помощи этого свойства можно зашифровать все пароли пользователей для внешних систем (LDAP, Apiary), которые хранятся на машине с установленным Hive или во внешней БД. При этом ключ шифрования будет храниться на машине, где установлен Hive.
Для более надёжного хранения этих данных можно настроить интеграцию с Vault.
⚠️ Примечание: рекомендуем активировать шифрование паролей, прежде чем настраивать интеграцию с внешними системами. Если соединения уже настроены, то обратите внимание на примечание в конце этой главы.
Чтобы настроить шифрование паролей, необходимо
выполнить реконфигурацию.
Добавьте свойство sensdata.encrypt.mode и установите ему значение AES256
(в настоящее время это единственный поддерживаемый алгоритм шифрования):
После добавления свойства sensdata.encrypt.mode и реконфигурации приложения,
автоматически сгенерируется ключ шифрования и запишется в файл local.ini
в директории /opt/hw-bw/config в свойство sensdata.encrypt.key.
Если вы хотите установить ключ шифрования вручную, то необходимо добавить свойство
sensdata.encrypt.key и установить ему значение.
Значение должно быть длинной 32 символа.
Вы можете сгенерировать значение для ключа шифрования, например, таким образом:
⚠️ Обратите внимание на обязательный префикс BASE64;.
или, таким:
Или любым другим доступным вам способом,
но обязательно добавьте префикс BASE64; если ваш ключ закодирован при помощи base64.
⚠️ Если будет задан только ключ шифрования (sensdata.encrypt.key), но не будет
добавлен метод (sensdata.encrypt.mode), то ключ шифрования не будет применен.
Выполните реконфигурацию, чтобы изменения вступили в силу.
⚠️ Если до настройки шифрования чувствительных данных интеграция с внешними системами уже была настроена, то после рестарта обновите их настройки, чтобы зашифровать существующие пароли.
⚠️ Примечание: Вы также можете хранить ключ шифрования в Vault если вы
используете интеграцию с ним.
При этом вам нужно указать место хранения ключа шифрования в Vault в поле
sensdata.encrypt.key_path вместо sensdata.encrypt.key.
Обратитесь в раздел
Интеграция с Vault
за подробностями.