consul_acl – Управление ключами и правилами доступа Consul
Новая версия с 2.0.
Обзор
- Позволяет добавлять, изменять и удалять ключи ACL и связанные правила в кластере Consul через агента. Более подробную информацию об использовании и настройке ACL см. в https://www.consul.io/docs/guides/acl.html.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- python-consul
- pyhcl
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| host - | Значение по умолчанию: "localhost" | Хост агента Consul по умолчанию — localhost |
| mgmt_token - | Необходим токен управления для манипулирования списками acl | |
| name - | Имя, которое должно быть связано с ключом acl; для Consul оно невидимо | |
| port - | Значение по умолчанию: 8500 | Порт, на котором работает агент Consul |
| rules - | Список правил, которые должны быть связаны с заданным токеном | |
| scheme - добавлен в 2.1 | Значение по умолчанию: "http" | Схема протокола, на котором работает агент Consul |
| state - |
| Требуется ли пара ACL или отсутствует |
| token - | Ключ токена, идентифицирующий набор правил ACL. Если сгенерировано consul, будет UUID | |
| token_type - |
| Тип токена, который необходимо создать — management или client |
| validate_certs - добавлен в 2.1 | Значение по умолчанию: "yes" | Требуется ли проверка TLS-сертификата агента Consul |
Примеры
- name: create an ACL with rules
consul_acl:
host: consul1.example.com
mgmt_token: some_management_acl
name: Foo access
rules:
- key: "foo"
policy: read
- key: "private/foo"
policy: deny
- name: create an ACL with a specific token
consul_acl:
host: consul1.example.com
mgmt_token: some_management_acl
name: Foo access
token: my-token
rules:
- key: "foo"
policy: read
- name: update the rules associated to an ACL token
consul_acl:
host: consul1.example.com
mgmt_token: some_management_acl
name: Foo access
token: some_client_token
rules:
- event: "bbq"
policy: write
- key: "foo"
policy: read
- key: "private"
policy: deny
- keyring: write
- node: "hgs4"
policy: write
- operator: read
- query: ""
policy: write
- service: "consul"
policy: write
- session: "standup"
policy: write
- name: remove a token
consul_acl:
host: consul1.example.com
mgmt_token: some_management_acl
token: 172bd5c8-9fe9-11e4-b1b0-3c15c2c9fd5e
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| operation строка | changed | Выполненная операция с ACL Пример: update |
| rules строка | status == "present" | Представление правил ACL в формате HCL JSON, как описано в документации Consul (https://www.consul.io/docs/guides/acl.html#rule-specification). Пример: {'key': {'foo': {'policy': 'write'}, 'bar': {'policy': 'deny'}}} |
| token строка | success | Токен, связанный с ACL (ID ACL) Пример: a2ec332f-04cf-6fba-e8b8-acf62444d3da |
Статус
- Интерфейс этого модуля не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Steve Gargan (@sgargan)
- Colin Nolan (@colin-nolan)
Подсказка
Если вы обнаружите проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/consul_acl_module.html