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

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

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

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

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

    Подсказка

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

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

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

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

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

export CLOUDRU_KMS_KEY_ID ={ key.id }
export CLOUDRU_ACCESS_KEY_ID ={ access_key_id }
export CLOUDRU_ACCESS_KEY_SECRET ={ access_key_secret }
bin % ./sops_amd64_linux --encrypt { path.file } > { name.file }

Где:

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

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

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

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

export CLOUDRU_KMS_KEY_ID = j8eAM-ouA15uA0VHP-ZeicNWa7SL
export CLOUDRU_ACCESS_KEY_ID = MASKED
export CLOUDRU_ACCESS_KEY_SECRET = MASKED
bin % ./sops_amd64_linux --encrypt /Users/Downloads/asd.txt > asd.enc.json

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

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

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

export CLOUDRU_KMS_KEY_ID ={ key.id }
export CLOUDRU_ACCESS_KEY_ID ={ access_key_id }
export CLOUDRU_ACCESS_KEY_SECRET ={ access_key_secret }
bin % ./sops_amd64_linux --decrypt { name.file }

Где:

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

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

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

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

export CLOUDRU_KMS_KEY_ID = j8eAM-ouA15uA0VHP-ZeicNWa7SL
export CLOUDRU_ACCESS_KEY_ID = MASKED
export CLOUDRU_ACCESS_KEY_SECRET = MASKED
bin % ./sops_amd64_linux --decrypt asd.enc.json

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

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

export CLOUDRU_KMS_KEY_ID = j8eAM-ouA15uA0VHP-ZeicNWa7SL
export CLOUDRU_ACCESS_KEY_ID = MASKED
export CLOUDRU_ACCESS_KEY_SECRET = MASKED
bin % ./sops_amd64_linux --rotate { name.file }

Где:

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

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

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

Evolution