Шифрование данных с помощью Mozilla SOPS и Key Manager

Mozilla SOPS — простой и гибкий инструмент управления секретами с открытым исходным кодом. Используйте его совместно с Key Manager для защиты ваших данных.

Перед началом работы

  1. Скачайте и распакуйте архив с бинарными файлами для Mozilla SOPS.

  2. Запустите все бинарные файлы из архива.

    Подсказка

    Чтобы запустить файлы, в командной строке перейдите в каталог, где они сохранены, и используйте команду ./sops

  3. Получите токен Key Manager.

  4. Создайте ключ.

Зашифруйте данные

Чтобы зашифровать данные выполните команду:

sops % SBERCLOUD_AUTH_TOKEN=${IAM_AUTH_TOKEN} SOPS_SBERCLOUD_KMS_CRYPTO_KEYS={key.id}:{key.version.id} sops --encrypt {path.file} > {name.file}

Где:

  • {IAM_AUTH_TOKEN} — токен полученный при аутентификации в Cloud.ru Key Manager.

  • {key.id} — идентификатор ключа Cloud.ru Key Manager.

  • {key.version.id} — идентификатор версии ключа.

  • {path.file} — путь до файла с данными для шифрования.

  • {name.file} — имя и формат файла, в который будут помещенны зашифрованные данные.

Пример команды:

sops % SBERCLOUD_AUTH_TOKEN=${IAM_AUTH_TOKEN} SOPS_SBERCLOUD_KMS_CRYPTO_KEYS=c01bc4f1-874f-44d8-b6d8-17d14d98e3e7:1 sops --encrypt /Users/Downloads/asd.txt > asd.enc.json

В данном примере команда, используя созданный криптографический ключ, шифрует текстовый файл asd.txt и помещает зашифрованные данные в файл asd.enc.json.

Расшифруйте данные

Чтобы дешифровать файл, нужно выполнить следующую команду:

sops % SBERCLOUD_AUTH_TOKEN=${IAM_AUTH_TOKEN} SOPS_SBERCLOUD_KMS_CRYPTO_KEYS={key.id}:{key.version.id} sops --decrypt {name.file}

Где:

  • {IAM_AUTH_TOKEN} — токен полученный при аутентификации в Cloud.ru Key Manager.

  • {key.id} — идентификатор ключа Cloud.ru Key Manager.

  • {key.version.id} — идентификатор версии ключа.

  • {name.file} — имя и формат файла, данные которого необходимо расшифровать.

Пример команды:

sops % SBERCLOUD_AUTH_TOKEN=${IAM_AUTH_TOKEN} SOPS_SBERCLOUD_KMS_CRYPTO_KEYS=c02bc4f1-872f-43d8-b6d5-18d14d98e3e7:1 sops --decrypt asd.enc.json

В данном примере команда, используя созданный криптографический ключ, расшифрует данные в файле asd.enc.json.

Для ротации зашифрованного файла используйте команду:

sops % SBERCLOUD_AUTH_TOKEN=${IAM_AUTH_TOKEN} SOPS_SBERCLOUD_KMS_CRYPTO_KEYS={key.id}:{key.version.id} sops --rotate {name.file}

Где:

  • {IAM_AUTH_TOKEN} — токен полученный при аутентификации в ыKey Manager.

  • {key.id} — идентификатор ключа Key Manager.

  • {key.version.id} — идентификатор версии ключа.

  • {name.file} — имя и формат файла, данные которого небходимо ротировать.

Запустили Evolution free tier
для Dev & Test
Получить