community.sops.sops lookup – Чтение содержимого файла, зашифрованного с помощью SOPS
Примечание
Этот плагин поиска входит в коллекцию community.sops (версия 1.9.1).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.sops. Для использования этого плагина поиска потребуются дополнительные требования. Подробности см. в разделе Требования.
Для использования в книге задач укажите: community.sops.sops.
Новое в community.sops 0.1.0
Описание
- Этот поиск возвращает содержимое файла из файловой системы контроллера Ansible.
- Для этого поиска требуется, чтобы исполняемый файл
sopsбыл доступен в переменной среды PATH контроллера.
Требования
Ниже перечислены требования к локальному узлу-контроллеру, на котором выполняется этот поиск.
- Исполняемый файл
sops(https://github.com/getsops/sops) должен существовать вPATHили быть настроен какsops_binary.
Термины
Параметр | Комментарии |
|---|---|
Термины строка / обязательно | Пути к файлам для чтения. |
Ключевые параметры
Здесь описаны ключевые параметры поиска. Это значения key1=value1, key2=value2 и т. д. в следующих примерах: lookup('community.sops.sops', key1=value1, key2=value2, ...) и query('community.sops.sops', key1=value1, key2=value2, ...)
Параметр | Комментарии |
|---|---|
age_key string added in community.sops 1.4.0 | Один или несколько закрытых ключей age, которые могут быть использованы для расшифровки зашифрованных файлов. Будет установлен как переменная среды Требуется SOPS 3.7.1+. Конфигурация:
|
age_keyfile path added in community.sops 1.4.0 | Файл, содержащий закрытые ключи age, которые SOPS может использовать для расшифровки зашифрованных файлов. Будет установлен как переменная среды По умолчанию SOPS ищет Требуется SOPS 3.7.0+. Конфигурация:
|
aws_access_key_id string added in community.sops 1.0.0 | Идентификатор ключа доступа AWS, который будет использоваться для запросов к AWS. Устанавливает переменную среды Конфигурация:
|
aws_profile string added in community.sops 1.0.0 | Профиль AWS, который будет использоваться для запросов к AWS. Это соответствует параметру SOPS Конфигурация:
|
aws_secret_access_key string added in community.sops 1.0.0 | Секретный ключ доступа AWS, который будет использоваться для запросов к AWS. Устанавливает переменную среды Конфигурация:
|
aws_session_token string added in community.sops 1.0.0 | Токен сессии AWS, который будет использоваться для запросов к AWS. Устанавливает переменную среды Конфигурация:
|
base64 boolean | Кодирует результат в Base64. Используйте это, если вы хотите хранить двоичные данные в переменных Ansible. Варианты:
|
config_path path added in community.sops 1.0.0 | Путь к конфигурационному файлу SOPS. Если не задан, SOPS будет рекурсивно искать конфигурационный файл, начиная с файла, который зашифрован или расшифрован. Это соответствует параметру SOPS Конфигурация:
|
empty_on_not_exist boolean | При установке в Варианты:
|
enable_local_keyservice boolean added in community.sops 1.0.0 | Указывает SOPS использовать локальный сервис ключей. Это соответствует параметру SOPS Варианты:
Конфигурация:
|
extract string added in community.sops 1.9.0 | Указывает SOPS извлечь определённый ключ из файла JSON или YAML. Ожидает строку с тем же синтаксисом ‘querystring’, что и параметр SOPS Примечание: Правильно экранируйте кавычки. |
input_type строка | Укажите SOPS, как интерпретировать зашифрованный файл. По умолчанию SOPS выбирает тип входных данных по расширению файла. Если он определит неправильный тип файла, это может привести к сбою процесса расшифровки. Значение Варианты:
|
keyservice список / элементы=строка добавлен в community.sops 1.0.0 | Укажите службы ключей, которые следует использовать помимо локальной. Служба ключей должна быть указана в формате Это соответствует параметру SOPS Настройка:
|
output_type строка | Укажите SOPS, как интерпретировать расшифрованный файл. По умолчанию SOPS выбирает тип выходных данных по расширению файла. Если он определит неправильный тип файла, это может привести к сбою процесса расшифровки. Значение Варианты:
|
rstrip булево | Удалить ли хвостовые символы новой строки и пробелы. Варианты:
|
sops_binary путь добавлен в community.sops 1.0.0 | Путь к бинарному файлу SOPS. По умолчанию используется Настройка:
|
Примечания
Примечание
- При совместном использовании ключевых и позиционных параметров, позиционные параметры должны быть перечислены перед ключевыми параметрами:
lookup('community.sops.sops', term1, term2, key1=value1, key2=value2)иquery('community.sops.sops', term1, term2, key1=value1, key2=value2) - Данный поиск не поддерживает «шаблоны» - используйте поиск по файлам вместо этого.
См. также
См. также
- community.sops.decrypt плагин фильтра
-
Фильтр расшифровки может быть использован для расшифровки данных, зашифрованных SOPS, в оперативной памяти.
- community.sops.sops плагин переменных
-
Плагин переменных sops может быть использован для загрузки переменных хоста или группы, зашифрованных SOPS.
- community.sops.load_vars
-
Загрузка переменных, зашифрованных SOPS, из файлов динамически в задаче.
Примеры
- name: Output secrets to screen (BAD IDEA!)
ansible.builtin.debug:
msg: "Content: {{ lookup('community.sops.sops', item) }}"
loop:
- sops-encrypted-file.enc.yaml
- name: Add SSH private key
ansible.builtin.copy:
# Note that rstrip=false is necessary for some SSH versions to be able to use the key
content: "{{ lookup('community.sops.sops', user + '-id_rsa', rstrip=false) }}"
dest: /home/{{ user }}/.ssh/id_rsa
owner: "{{ user }}"
group: "{{ user }}"
mode: 0600
no_log: true # avoid content to be written to log
- name: The file file.json is a YAML file, which contains the encryption of binary data
ansible.builtin.debug:
msg: "Content: {{ lookup('community.sops.sops', 'file.json', input_type='yaml', output_type='binary') }}"
Значение возврата
Ключ | Описание |
|---|---|
Значение возврата список / элементы=строка | Содержимое расшифрованного файла. Возвращено: успех |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/sops/sops_lookup.html