onepassword_info – Сбор элементов из 1Password
Новое в версии 2.7.
Обзор
-
onepassword_info оборачивает утилиту командной строки
opдля извлечения данных об одном или нескольких элементах 1Password. - Возникает критическая ошибка, если какой-либо из искомых элементов не найден.
- Рекомендуется использовать опцию
no_log, чтобы избежать записи значений секретов, которые извлекаются. - Этот модуль назывался
onepassword_factsдо Ansible 2.9, возвращаяansible_facts. Обратите внимание, что модуль onepassword_info больше не возвращаетansible_facts! Теперь для использования фактов в других задачах необходимо использовать опциюregister.
Псевдонимы: onepassword_facts
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
-
opУтилита командной строки 1Password. См. https://support.1password.com/command-line/
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auto_login словарь | Значение по умолчанию: {} | Словарь, содержащий данные об аутентификации. Если он задан, onepassword_info попытается автоматически войти в 1Password. Без этой опции необходимо предварительно войти в систему через командную строку 1Password перед запуском Ansible. Настоятельно рекомендуется хранить учетные данные 1Password в хранилище Ansible Vault. Убедитесь, что ключ, используемый для шифрования Ansible Vault, по силе не уступает мастер-паролю 1Password. | |
| master_password строка / обязательно | Главный пароль для вашего поддомена. Это всегда требуется при указании auto_login. | ||
| secret_key строка | Секретный ключ для вашего поддомена. Требуется только для первоначального входа в систему. | ||
| subdomain строка | Имя поддомена 1Password (<subdomain>.1password.com). Если не указано, используется последний использованный поддомен. | ||
| username строка | Имя пользователя 1Password. Требуется только для первоначального входа в систему. | ||
| cli_path путь | Значение по умолчанию: "op" | Используется для указания точного пути к op интерфейсу командной строки | |
| search_terms список / обязательно | Список одного или нескольких поисковых запросов. Каждый поисковый запрос может быть простой строкой или словарем для более точного контроля. При передаче простой строки, поле предполагается password.При передаче словаря доступны следующие поля. | ||
| field строка | Имя поля для поиска в этом элементе (необязательно, по умолчанию "password" (или "document", если элемент имеет вложение). | ||
| name строка | Имя элемента 1Password для поиска (обязательно). | ||
| section строка | Имя раздела внутри этого элемента, содержащего указанное поле (необязательно, будет искать во всех разделах, если не указано). | ||
| vault строка | Имя конкретного хранилища 1Password для поиска, полезно, если у вашего пользователя 1Password есть доступ к нескольким хранилищам (необязательно). | ||
Примечания
Примечание
- Проверено с
opверсией 0.5.5 - Основано на
onepasswordплагине поиска от Scott Buchanan <sbuchanan@ri.pn>. - При вызове этого модуля с устаревшим именем
onepassword_factsпотенциально конфиденциальные данные из 1Password возвращаются как факты Ansible. Факты могут быть кэшированы, если это включено, что означает, что эти данные могут храниться в открытом виде на диске или в базе данных.
Примеры
# Gather secrets from 1Password, assuming there is a 'password' field:
- name: Get a password
onepassword_info:
search_terms: My 1Password item
delegate_to: localhost
register: my_1password_item
no_log: true # Don't want to log the secrets to the console!
# Gather secrets from 1Password, with more advanced search terms:
- name: Get a password
onepassword_info:
search_terms:
- name: My 1Password item
field: Custom field name # optional, defaults to 'password'
section: Custom section name # optional, defaults to 'None'
vault: Name of the vault # optional, only necessary if there is more than 1 Vault available
delegate_to: localhost
register: my_1password_item
no_log: True # Don't want to log the secrets to the console!
# Gather secrets combining simple and advanced search terms to retrieve two items, one of which we fetch two
# fields. In the first 'password' is fetched, as a field name is not specified (default behaviour) and in the
# second, 'Custom field name' is fetched, as that is specified explicitly.
- name: Get a password
onepassword_info:
search_terms:
- My 1Password item # 'name' is optional when passing a simple string...
- name: My Other 1Password item # ...but it can also be set for consistency
- name: My 1Password item
field: Custom field name # optional, defaults to 'password'
section: Custom section name # optional, defaults to 'None'
vault: Name of the vault # optional, only necessary if there is more than 1 Vault available
- name: A 1Password item with document attachment
delegate_to: localhost
register: my_1password_item
no_log: true # Don't want to log the secrets to the console!
- name: Debug a password (for example)
debug:
msg: "{{ my_1password_item['onepassword']['My 1Password item'] }}"
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие — поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| onepassword словарь | успех | Словарь каждого элемента 1Password, соответствующего заданным поисковым запросам, демонстрирует то, что будет возвращено в третьем примере выше. Пример: {'Мой элемент 1Password': {'password': 'значение этого поля', 'Название пользовательского поля': 'значение этого поля'}, 'Мой другой элемент 1Password': {'password': 'значение этого поля'}, 'Элемент 1Password с прикреплённым документом': {'document': 'содержимое документа, прикреплённого к этому элементу'}} |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Ryan Conway (@Rylon)
Подсказка
Если вы заметили какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/onepassword_info_module.html