community.general.ipa_sudorule – Управление правилом FreeIPA sudo
Примечание
Этот плагин входит в состав коллекции community.general (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать его в playbook, укажите: community.general.ipa_sudorule.
Обзор
- Добавление, изменение или удаление правила sudo на сервере IPA с использованием API IPA.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| cmd список / элементы=строка | Список команд, назначенных правилу. Если передается пустой список, все команды будут удалены из правила. Если опция опущена, команды не будут проверяться или изменены. | |
| cmdcategory строка |
| Категория команд, к которой относится правило. |
| cmdgroup список / элементы=строка добавлен в 2.0.0 community.general | Список групп команд, назначенных правилу. Если передается пустой список, все группы команд будут удалены из правила. Если опция опущена, группы команд не будут проверяться или изменены. | |
| cn строка / обязательно | Каноническое имя. Не может быть изменено, так как является уникальным идентификатором. псевдонимы: имя | |
| description строка | Описание правила sudo. | |
| host список / элементы=строка | Список хостов, назначенных правилу. Если передается пустой список, все хосты будут удалены из правила. Если опция опущена, хосты не будут проверяться или изменены. Опцию hostcategory необходимо опустить для назначения хостов. | |
| hostcategory строка |
| Категория хостов, к которой относится правило. Если передается «все», необходимо опустить host и hostgroup. Опции host и hostgroup необходимо опустить для назначения «все». |
| hostgroup список / элементы=строка | Список групп хостов, назначенных правилу. Если передается пустой список, все группы хостов будут удалены из правила. Если опция опущена, группы хостов не будут проверяться или изменены. Опцию hostcategory необходимо опустить для назначения групп хостов. | |
| ipa_host строка | По умолчанию: "ipa.example.com" | IP-адрес или имя хоста сервера IPA. Если значение не указано в задаче, будет использовано значение переменной среды IPA_HOST. Если ни переменная среды IPA_HOST, ни значение не указаны в задаче, то будет использоваться DNS для обнаружения сервера FreeIPA.В FreeIPA требуется запись «ipa-ca». Если ни запись в DNS, ни переменная среды IPA_HOST, ни значение не доступны в задаче, то будет использовано значение по умолчанию.Механизм обратного вызова переменных среды добавлен в Ansible 2.5. |
| ipa_pass строка | Пароль административного пользователя. Если значение не указано в задаче, будет использовано значение переменной среды IPA_PASS. Обратите внимание, что если доступна библиотека «urllib_gssapi», можно использовать GSSAPI для аутентификации в FreeIPA. Если доступна переменная среды KRB5CCNAME, модуль будет использовать кэш учетных данных Kerberos для аутентификации на сервере FreeIPA.Если доступна переменная среды KRB5_CLIENT_KTNAME, а KRB5CCNAME нет, модуль будет использовать этот ключ Kerberos для аутентификации.Если GSSAPI недоступен, использование «ipa_pass» обязательно. Механизм обратного вызова переменных среды добавлен в Ansible 2.5. | |
| ipa_port целое число | По умолчанию: 443 | Порт сервера FreeIPA/IPA. Если значение не указано в задаче, будет использовано значение переменной среды IPA_PORT. Если ни переменная среды IPA_PORT, ни значение не указаны в задаче, то будет установлено значение по умолчанию.Механизм обратного вызова переменных среды добавлен в Ansible 2.5. |
| ipa_prot строка |
| Протокол, используемый сервером IPA. Если значение не указано в задаче, будет использовано значение переменной среды IPA_PROT. Если ни переменная среды IPA_PROT, ни значение не указаны в задаче, то будет установлено значение по умолчанию.Механизм обратного вызова переменных среды добавлен в Ansible 2.5. |
| ipa_timeout целое число | По умолчанию: 10 | Устанавливает таймаут бездействия (в секундах) для подключения. Для массовых операций может потребоваться увеличить это значение, чтобы избежать таймаута сервера IPA. Если значение не указано в задаче, будет использовано значение переменной среды IPA_TIMEOUT. Если ни переменная среды IPA_TIMEOUT, ни значение не указаны в задаче, то будет установлено значение по умолчанию. |
| ipa_user строка | По умолчанию: "admin" | Административная учетная запись, используемая на сервере IPA. Если значение не указано в задаче, будет использовано значение переменной среды IPA_USER. Если ни переменная среды IPA_USER, ни значение не указаны в задаче, то будет установлено значение по умолчанию.Механизм обратного вызова переменных среды добавлен в Ansible 2.5. |
| runasgroupcategory строка |
| Категория группы RunAs, к которой относится правило. |
| runasusercategory строка |
| Категория пользователя RunAs, к которой относится правило. |
| state строка |
| Состояние, которое необходимо обеспечить. |
| sudoopt список / элементы=строка | Список опций для добавления к правилу sudo. | |
| user список / элементы=строка | Список пользователей, назначенных правилу. Если передается пустой список, все пользователи будут удалены из правила. Если опция опущена, пользователи не будут проверяться или изменены. | |
| usercategory строка |
| Категория пользователей, к которой относится правило. |
| usergroup список / элементы=строка | Список групп пользователей, назначенных правилу. Если передается пустой список, все группы пользователей будут удалены из правила. Если опция опущена, группы пользователей не будут проверяться или изменены. | |
| validate_certs булево |
| Это применимо только если ipa_prot равно https.Если установлено значение no, сертификаты SSL не будут проверены.Это следует устанавливать только в случае no для сайтов, контролируемых лично, с самозаверяемыми сертификатами. |
Примеры
- name: Ensure sudo rule is present that's allows all every body to execute any command on any host without being asked for a password.
community.general.ipa_sudorule:
name: sudo_all_nopasswd
cmdcategory: all
description: Allow to run every command with sudo without password
hostcategory: all
sudoopt:
- '!authenticate'
usercategory: all
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
- name: Ensure user group developers can run every command on host group db-server as well as on host db01.example.com.
community.general.ipa_sudorule:
name: sudo_dev_dbserver
description: Allow developers to run every command with sudo on all database server
cmdcategory: all
host:
- db01.example.com
hostgroup:
- db-server
sudoopt:
- '!authenticate'
usergroup:
- developers
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
- name: Ensure user group operations can run any commands that is part of operations-cmdgroup on any host.
community.general.ipa_sudorule:
name: sudo_operations_all
description: Allow operators to run any commands that is part of operations-cmdgroup on any host.
cmdgroup:
- operations-cmdgroup
hostcategory: all
sudoopt:
- '!authenticate'
usergroup:
- operators
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| sudorule словарь | всегда | Правило sudo, возвращенное IPA |
Авторы
- Thomas Krahn (@Nosmoht)
© 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/ipa_sudorule_module.html