community.general.credstash lookup — получение секретов из Credstash в AWS
Примечание
Этот плагин поиска входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для использования этого плагина поиска требуются дополнительные компоненты. Подробнее см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.credstash.
Обзор
- Credstash — небольшая утилита для управления секретами с помощью AWS KMS и DynamoDB: https://github.com/fugue/credstash.
Требования
Следующие компоненты требуются на локальном управляющем узле, который выполняет этот поиск.
- credstash (библиотека Python)
Термины
Параметр | Комментарии |
|---|---|
Термины список / элементы=строка / обязательный | Термин или список терминов для поиска в хранилище секретов. |
Именованные параметры
Здесь описаны именованные параметры поиска. В приведённых ниже примерах это значения key1=value1, key2=value2 и так далее: lookup('community.general.credstash', key1=value1, key2=value2, ...) и query('community.general.credstash', key1=value1, key2=value2, ...)
Параметр | Комментарии |
|---|---|
aws_access_key_id строка | |
aws_secret_access_key строка | |
aws_session_token строка | |
profile_name строка | |
region строка | Регион AWS. |
table строка | Имя таблицы credstash для поиска. По умолчанию: |
version строка | Версия Credstash. По умолчанию: |
Примечания
Примечание
- При совместном использовании именованных и позиционных параметров позиционные параметры необходимо указывать перед именованными:
lookup('community.general.credstash', term1, term2, key1=value1, key2=value2)иquery('community.general.credstash', term1, term2, key1=value1, key2=value2)
Примеры
- name: first use credstash to store your secrets
ansible.builtin.shell: credstash put my-github-password secure123
- name: "Test credstash lookup plugin -- get my github password"
ansible.builtin.debug:
msg: "Credstash lookup! {{ lookup('community.general.credstash', 'my-github-password') }}"
- name: "Test credstash lookup plugin -- get my other password from us-west-1"
ansible.builtin.debug:
msg: "Credstash lookup! {{ lookup('community.general.credstash', 'my-other-password', region='us-west-1') }}"
- name: "Test credstash lookup plugin -- get the company's github password"
ansible.builtin.debug:
msg: "Credstash lookup! {{ lookup('community.general.credstash', 'company-github-password', table='company-passwords') }}"
- name: Example play using the 'context' feature
hosts: localhost
vars:
context:
app: my_app
environment: production
tasks:
- name: "Test credstash lookup plugin -- get the password with a context passed as a variable"
ansible.builtin.debug:
msg: "{{ lookup('community.general.credstash', 'some-password', context=context) }}"
- name: "Test credstash lookup plugin -- get the password with a context defined here"
ansible.builtin.debug:
msg: "{{ lookup('community.general.credstash', 'some-password', context=dict(app='my_app', environment='production')) }}"
Возвращаемое значение
Ключ | Описание |
|---|---|
Возвращаемое значение строка | Значение или значения, хранящиеся в Credstash. Возвращается: при успехе |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/credstash_lookup.html