Spec-Zone.ru › Ansible 2.11

community.general.consul_acl – Управление ключами и правилами доступа Consul ACL

Примечание

Этот плагин входит в коллекцию community.general (версия 2.0.1).

Для его установки используйте: ansible-galaxy collection install community.general

Для использования в playbook укажите: community.general.consul_acl

  • Обзор
  • Требования
  • Параметры
  • Примеры
  • Возвращаемые значения

Обзор

  • Позволяет добавлять, изменять и удалять ключи ACL и связанные правила в кластере Consul через агента. Подробнее о настройке и использовании ACL см. https://www.consul.io/docs/guides/acl.html.

Требования

Ниже перечислены требования к хосту, на котором будет выполняться данный модуль.

  • python-consul
  • pyhcl
  • requests

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
host
строка
Значение по умолчанию:
"localhost"
Хост агента Consul, по умолчанию localhost
mgmt_token
строка / обязательно
Для управления списками ACL необходим токен управления
name
строка
Имя, которое должно быть связано с ключом ACL, оно невидимо для Consul
port
целое число
Значение по умолчанию:
8500
Порт, на котором работает агент Consul
rules
список / элементы=строка
Правила, которые должны быть связаны с данным токеном
scheme
строка
Значение по умолчанию:
"http"
Схема протокола, на котором работает агент Consul
state
строка
    Варианты:
  • present ←
  • absent
Требуется ли пара ACL (present или absent)
token
строка
Ключ токена, идентифицирующий набор правил ACL. Если сгенерирован Consul, это будет UUID
token_type
строка
    Варианты:
  • client ←
  • management
Тип токена, который должен быть создан
validate_certs
булево
  • no
  • yes ←
Нужно ли проверять TLS-сертификат агента Consul

Примеры

- name: Create an ACL with rules
  community.general.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
  community.general.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
  community.general.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
  community.general.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': {'bar': {'policy': 'deny'}, 'foo': {'policy': 'write'}}}
token
строка
success
Токен, связанный с ACL (ID ACL)

Пример:
a2ec332f-04cf-6fba-e8b8-acf62444d3da


Авторы

  • Steve Gargan (@sgargan)
  • Colin Nolan (@colin-nolan)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/consul_acl_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API