Spec-Zone.ru › Ansible

Модуль community.general.ipa_user — управление пользователями FreeIPA

Примечание

Этот модуль входит в коллекцию community.general (версия 12.6.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого модуля нужны дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.general.ipa_user.

  • Краткое описание
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Добавление, изменение и удаление пользователей на сервере IPA.

Требования

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

  • base64
  • hashlib

Параметры

Параметр

Комментарии

displayname

string

Отображаемое имя.

gidnumber

string

Идентификатор группы Posix.

givenname

string

Имя.

Если пользователь не существует и state=present, необходимо указать givenname.

homedirectory

string

добавлено в community.general 0.2.0

Домашний каталог пользователя по умолчанию.

ipa_host

string

IP-адрес или имя узла сервера IPA.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_HOST.

Если в задаче не указаны ни переменная среды IPA_HOST, ни значение, для обнаружения сервера FreeIPA используется DNS.

В FreeIPA должна быть соответствующая запись ipa-ca.

Если в задаче недоступны ни запись DNS, ни переменная среды IPA_HOST, ни значение, используется значение по умолчанию.

По умолчанию: "ipa.example.com"

ipa_pass

string

Пароль административного пользователя.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_PASS.

Обратите внимание: если доступна библиотека urllib_gssapi, для аутентификации в FreeIPA можно использовать GSSAPI.

Если доступна переменная среды KRB5CCNAME, модуль использует указанный в ней кэш учётных данных Kerberos для аутентификации на сервере FreeIPA.

Если доступна переменная среды KRB5_CLIENT_KTNAME, а KRB5CCNAME — нет, модуль использует указанный в ней файл keytab Kerberos для аутентификации.

Если GSSAPI недоступен, необходимо указать ipa_pass.

ipa_port

integer

Порт сервера FreeIPA / IPA.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_PORT.

Если в задаче не указаны ни переменная среды IPA_PORT, ни значение, используется значение по умолчанию.

По умолчанию: 443

ipa_prot

string

Протокол, используемый сервером IPA.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_PROT.

Если в задаче не указаны ни переменная среды IPA_PROT, ни значение, используется значение по умолчанию.

Варианты:

  • "http"
  • "https" ← (по умолчанию)

ipa_timeout

integer

Задаёт время ожидания бездействия соединения (в секундах).

Для массовых операций можно увеличить это значение, чтобы избежать тайм-аута со стороны сервера IPA.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_TIMEOUT.

Если в задаче не указаны ни переменная среды IPA_TIMEOUT, ни значение, используется значение по умолчанию.

По умолчанию: 10

ipa_user

string

Административная учётная запись на сервере IPA.

Если значение не указано в задаче, вместо него используется значение переменной среды IPA_USER.

Если в задаче не указаны ни переменная среды IPA_USER, ни значение, используется значение по умолчанию.

По умолчанию: "admin"

krbpasswordexpiration

string

Дата истечения срока действия пароля пользователя.

Формат: YYYYMMddHHmmss.

Например, срок действия 20180121182022 истекает 21 января 2018 года в 18:20:22.

loginshell

string

Командная оболочка для входа.

mail

list / элементы=string

Список адресов электронной почты, назначенных пользователю.

Если передан пустой список, все назначенные адреса электронной почты удаляются.

Если передано значение None, адреса электронной почты не проверяются и не изменяются.

password

string

Пароль пользователя.

Для существующего пользователя пароль не задаётся, если не указано update_password=always; это поведение используется по умолчанию.

sn

string

Фамилия.

Если пользователь не существует и state=present, необходимо указать sn.

sshpubkey

list / элементы=string

Список открытых ключей SSH.

Если передан пустой список, все назначенные открытые ключи удаляются.

Если передано значение None, открытые ключи SSH не проверяются и не изменяются.

state

string

Состояние, которое необходимо обеспечить.

Варианты:

  • "absent"
  • "disabled"
  • "enabled"
  • "present" ← (по умолчанию)

telephonenumber

list / элементы=string

Список телефонных номеров, назначенных пользователю.

Если передан пустой список, все назначенные телефонные номера удаляются.

Если передано значение None, телефонные номера не проверяются и не изменяются.

title

string

Должность.

uid

псевдонимы: name

string / обязательный

Uid пользователя.

uidnumber

string

Идентификатор UID/Posix пользователя в настройках учётной записи.

update_password

string

Задать пароль пользователя.

Варианты:

  • "always" ← (по умолчанию)
  • "on_create"

userauthtype

list / элементы=string

добавлено в community.general 1.2.0

Тип аутентификации, используемый для пользователя.

Чтобы удалить все типы аутентификации пользователя, используйте пустой список [].

Варианты idp и passkey добавлены в community.general 8.1.0.

Варианты:

  • "password"
  • "radius"
  • "otp"
  • "pkinit"
  • "hardened"
  • "idp"
  • "passkey"

validate_certs

boolean

Применяется только если ipa_prot — https.

Если задано значение false, SSL-сертификаты не проверяются.

Задавайте это значение только для используемых на лично контролируемых сайтах самоподписанных сертификатов: false.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может выполняться в режиме check_mode и возвращать прогноз изменения состояния, не изменяя целевой объект.

diff_mode

Поддержка: нет

В режиме diff возвращает сведения об изменениях (или о возможных изменениях в check_mode).

Примечания

Примечание

  • Этот модуль взаимодействует с сервером FreeIPA посредством JSON-RPC через HTTP(S). Если вам нужно включить управляемый узел в домен FreeIPA, рассмотрите возможность использования коллекции freeipa.ansible_freeipa; для управления развертыванием, однако, требуется доступ к оболочке одного из узлов домена.

Примеры

- name: Ensure pinky is present and always reset password
  community.general.ipa_user:
    name: pinky
    state: present
    krbpasswordexpiration: 20200119235959
    givenname: Pinky
    sn: Acme
    mail:
      - pinky@acme.com
    telephonenumber:
      - '+555123456'
    sshpubkey:
      - ssh-rsa ....
      - ssh-dsa ....
    uidnumber: '1001'
    gidnumber: '100'
    homedirectory: /home/pinky
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Ensure brain is absent
  community.general.ipa_user:
    name: brain
    state: absent
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Ensure pinky is present but don't reset password if already exists
  community.general.ipa_user:
    name: pinky
    state: present
    givenname: Pinky
    sn: Acme
    password: zounds
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret
    update_password: on_create

- name: Ensure pinky is present and using one time password and RADIUS authentication
  community.general.ipa_user:
    name: pinky
    state: present
    userauthtype:
      - otp
      - radius
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

user

dictionary

Пользователь в формате, возвращаемом API IPA.

Возвращается: всегда

Авторы

  • Thomas Krahn (@Nosmoht)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Задать вопрос
  • Сообщить об ошибке
  • Предложить функцию
  • Общение

© 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/ipa_user_module.html

Spec-Zone.ru

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