ansible-vault

ansible-vault#

Утилита ansible-vault предназначена для шифрования и расшифрования файлов данных, используемых в Ansible.

В минимальном формате запуск утилиты ansible-vault выглядит следующим образом:

ansible-vault [ARGUMENTS] ACTION [ACTIONS_ARGUMENTS] FILE

где:

  • ARGUMENTS – общие аргументы ansible-vault.

  • ACTION – действие, которое необходимо выполнить.

  • ACTION_ARGUMENTS – аргументы, специфичные для конкретного действия.

  • FILE – путь к файлу, с которым будет выполняться операция.

Общие аргументы:

--version#

Вывод версии Ansible, пути к файлу настроек и пути поиска модулей.

-h, --help#

Вывод справки.

-v, --verbose#

Включение подробного вывода, показывающего больше информации о выполнении команды.

Увеличение уровня детализации возможно при добавлении нескольких -v. Утилита может выводить до -vvvvvv. Рекомендуемый уровень для общей отладки – -vvv, для отладки соединений – -vvvv.

Действия и их аргументы:

create#

Создание и открытие файла в текстовом редакторе. После закрытия файла он будет зашифрован с помощью указанного пароля.

--encrypt-vault-id <ENCRYPT_VAULT_ID>#

Идентификатор хранилища для шифрования.

Обязательный аргумент, если идентификаторов несколько.

--skip-tty-check#

Не проверять возможность вывода с использованием TTY.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

decrypt#

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

--output <OUTPUT_FILE>#

Вывод в указанный файл. Для вывода в stdout используйте -.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

edit#

Открытие и расшифровка файла в редакторе. Повторная шифровка файла после его закрытия.

--encrypt-vault-id <ENCRYPT_VAULT_ID>#

Идентификатор хранилища для шифрования.

Обязательный аргумент, если идентификаторов несколько.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

view#

Открытие, расшифровка и отображение файла в терминале.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

encrypt#

Шифрование указанного файла.

--encrypt-vault-id <ENCRYPT_VAULT_ID>#

Идентификатор хранилища для шифрования.

Обязательный аргумент, если идентификаторов несколько.

--output <OUTPUT_FILE>#

Вывод в указанный файл. Для вывода в stdout используйте -.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

encrypt_string#

Шифрование заданной строки.

--encrypt-vault-id <ENCRYPT_VAULT_ID>#

Идентификатор хранилища для шифрования.

Обязательный аргумент, если идентификаторов несколько.

--output <OUTPUT_FILE>#

Вывод в указанный файл. Для вывода в stdout используйте -.

--show-input#

Отключение скрытия ввода при запросе строки.

--stdin-name <ENCRYPT_STRING_STDIN_NAME>#

Название переменной для stdin.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

-n, --name#

Название переменной.

Может быть указан несколько раз.

-p, --prompt#

Включение запроса ввод строки для шифрования.

rekey#

Изменение пароля для зашифрованного файла.

--encrypt-vault-id <ENCRYPT_VAULT_ID>#

Идентификатор хранилища для шифрования.

Обязательный аргумент, если идентификаторов несколько.

--new-vault-id <NEW_VAULT_ID>#

Новый идентификатор хранилища.

--new-vault-password-file <NEW_VAULT_PASSWORD_FILE>#

Путь к файлу с новым паролем.

--vault-id#

Идентификатор Ansible Vault.

Может быть указан несколько раз.

--vault-password-file, --vault-pass-file#

Путь к файлу с ключом для расшифровки секретов, хранящихся в Ansible Vault.

-J, --ask-vault-password, --ask-vault-pass#

Включение запроса пароля хранилища.

Примеры использования:

Создание нового зашифрованного файла#
ansible-vault create secrets.yml
Расшифровка файла#
ansible-vault decrypt secrets.yml
Шифрование строки с сохранением в файл#
ansible-vault encrypt_string 'mysecretpassword' --name my_var > secrets.yml
Шифрование строки с запросом ввода#
ansible-vault encrypt_string --prompt --name my_var
Шифрование файла с указанием идентификатора хранилища#
ansible-vault encrypt secrets.yml --encrypt-vault-id prod