Spec-Zone.ru › Ansible

Поиск community.windows.laps_password — извлекает пароль LAPS для сервера.

Примечание

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

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

Для установки используйте: ansible-galaxy collection install community.windows. Для использования этого плагина поиска требуются дополнительные компоненты. Подробнее см. раздел Требования.

Чтобы использовать его в плейбуке, укажите: community.windows.laps_password.

  • УСТАРЕЛО
  • Краткое описание
  • Требования
  • Аргументы
  • Именованные параметры
  • Примечания
  • Примеры
  • Возвращаемое значение
  • Статус

УСТАРЕЛО

Удалено в:

версии 4.0.0

Причина:

Этот плагин не поддерживает новую реализацию Windows LAPS, а поиск пароля с помощью lookup неэффективен. Для более эффективного получения пароля LAPS нескольких узлов можно использовать плагин инвентаризации microsoft.ad.ldap. Он поддерживает как устаревшую, так и новую реализацию LAPS.

Альтернатива:

Вместо этого используйте microsoft.ad.ldap.

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

  • Этот плагин поиска возвращает установленный для сервера пароль LAPS из базы данных Active Directory.
  • Дополнительные сведения об установке необходимых компонентов и тестировании см. на странице https://github.com/jborean93/ansible-lookup-laps_password.

Требования

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

  • python-ldap

Аргументы

Параметр

Комментарии

Terms

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

Имя узла, для которого нужно получить пароль LAPS.

Это Common Name (CN) узла.

Именованные параметры

Здесь описаны именованные параметры плагина поиска. Это значения key1=value1, key2=value2 и так далее в следующих примерах: lookup('community.windows.laps_password', key1=value1, key2=value2, ...) и query('community.windows.laps_password', key1=value1, key2=value2, ...)

Параметр

Комментарии

allow_plaintext

boolean

Если задано значение yes, трафик будет передаваться без шифрования.

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

Используйте scheme=ldaps, auth=gssapi или start_tls=yes, чтобы обеспечить шифрование трафика.

Варианты:

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

auth

string

Тип аутентификации, используемый при подключении к серверу Active Directory

При использовании simple необходимо задать параметры username и password. Если не используется scheme=ldaps или start_tls=True, эти учетные данные передаются по сети в открытом виде.

Рекомендуется использовать gssapi, поскольку в этом случае трафик шифруется автоматически.

При использовании gssapi выполните kinit перед запуском Ansible, чтобы получить действительный билет Kerberos.

Нельзя использовать gssapi, если задано scheme=ldaps или start_tls=True.

Варианты:

  • "simple"
  • "gssapi" ← (по умолчанию)

ca_cert

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

string

Путь к файлу сертификата CA в формате PEM, используемому для проверки сертификатов.

Проверка сертификатов используется при scheme=ldaps или start_tls=yes.

На узлах со старой версией OpenLDAP, например в MacOS, это может не работать. Чтобы восстановить работоспособность, перед повторной установкой python-ldap необходимо обновить OpenLDAP.

domain

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

Домен, в котором выполняется поиск пароля LAPS.

Это может быть имя домена Windows, доступное управляющему узлу Ansible через DNS, или полное доменное имя конкретного контроллера домена.

Поддерживается как простое имя домена/узла, так и явный URI LDAP с указанным доменом/узлом.

Если задан URI, параметры port и scheme игнорируются.

password

string

Пароль для username.

Обязателен, если задан username.

port

integer

Порт LDAP для обмена данными.

Если kdc уже является URI LDAP, этот параметр игнорируется.

scheme

string

Используемая схема LDAP.

При использовании ldap рекомендуется задать auth=gssapi или start_tls=yes, иначе трафик будет передаваться в открытом виде.

Чтобы использовать ldaps, на узле Active Directory необходимо настроить сертификат.

Если kdc уже является URI LDAP, этот параметр игнорируется.

Варианты:

  • "ldap" ← (по умолчанию)
  • "ldaps"

search_base

string

Изменяет базу поиска, используемую для поиска узла в Active Directory.

По умолчанию поиск выполняется в defaultNamingContext сервера Active Directory.

Если найдено несколько совпадений, необходимо указать более точную search_base, чтобы найден был только один узел.

При поиске в большой базе данных Active Directory рекомендуется сузить search_base для повышения производительности.

start_tls

boolean

Если задано значение scheme=ldap, для шифрования передаваемого по сети трафика используется расширение StartTLS.

Для этого в Active Directory должен быть установлен сертификат с поддержкой StartTLS.

Этот параметр игнорируется при scheme=ldaps, поскольку трафик уже зашифрован.

Варианты:

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

username

string

Обязателен при использовании auth=simple.

Имя пользователя для аутентификации.

Рекомендуется использовать имя пользователя в формате UPN, например username@DOMAIN.COM.

Обязателен, если задан auth=simple, и не поддерживается при auth=gssapi.

Если требуется auth=gssapi, вызовите kinit вне Ansible.

validate_certs

string

При использовании scheme=ldaps или start_tls=yes этот параметр определяет поведение проверки сертификатов.

При значении demand выполнение завершится ошибкой, если сертификат не предоставлен или недействителен.

При значении try выполнение завершится ошибкой при недействительном сертификате, но продолжится, если сертификат не предоставлен.

При значении allow сертификат будет запрошен и проверен, но выполнение продолжится, даже если он недействителен.

При значении never сертификат у сервера запрашиваться не будет, поэтому проверка не выполняется.

Варианты:

  • "never"
  • "allow"
  • "try"
  • "demand" ← (по умолчанию)

Примечания

Примечание

  • При совместном использовании позиционных и именованных параметров позиционные параметры должны указываться перед именованными: lookup('community.windows.laps_password', term1, term2, key1=value1, key2=value2) и query('community.windows.laps_password', term1, term2, key1=value1, key2=value2)
  • Если узел найден, но у него отсутствует атрибут пароля LAPS ms-Mcs-AdmPwd, поиск завершится ошибкой.
  • Учитывая чувствительный характер данных, передаваемых по сети, настоятельно рекомендуется запускать с параметром auth=gssapi, scheme=ldaps или start_tls=yes.
  • Если запускать без одного из указанных выше параметров, учетные данные учетной записи и пароль LAPS будут передаваться в открытом виде.
  • Некоторые сценарии могут не работать на узлах со старой версией OpenLDAP, например в MacOS. Рекомендуется установить последнюю версию OpenLDAP и собрать python-ldap с ее использованием. Дополнительные сведения см. на странице https://keathmilligan.net/python-ldap-and-macos.

Примеры

# This isn't mandatory but it is a way to call kinit from within Ansible before calling the lookup
- name: call kinit to retrieve Kerberos token
  expect:
    command: kinit username@ANSIBLE.COM
    responses:
      (?i)password: SecretPass1
  no_log: true

- name: Get the LAPS password using Kerberos auth, relies on kinit already being called
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'SERVER', domain='dc01.ansible.com') }}"

- name: Specific the domain host using an explicit LDAP URI
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'SERVER', domain='ldap://ansible.com:389') }}"

- name: Use Simple auth over LDAPS
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'server',
                                 domain='dc01.ansible.com',
                                 auth='simple',
                                 scheme='ldaps',
                                 username='username@ANSIBLE.COM',
                                 password='SuperSecret123') }}"

- name: Use Simple auth with LDAP and StartTLS
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'app01',
                                 domain='dc01.ansible.com',
                                 auth='simple',
                                 start_tls=True,
                                 username='username@ANSIBLE.COM',
                                 password='SuperSecret123') }}"

- name: Narrow down the search base to a an OU
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'sql10',
                                 domain='dc01.ansible.com',
                                 search_base='OU=Databases,DC=ansible,DC=com') }}"

- name: Set certificate file to use when validating the TLS certificate
  set_fact:
    ansible_password: "{{ lookup('community.windows.laps_password', 'windows-pc',
                                 domain='dc01.ansible.com',
                                 start_tls=True,
                                 ca_cert='/usr/local/share/certs/ad.pem') }}"

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

Ключ

Описание

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

string

Пароли LAPS для запрошенных узлов.

Возвращается: при успешном выполнении

Статус

  • Этот плагин поиска будет удален в версии 4.0.0. [устарело]
  • Дополнительные сведения см. в разделе УСТАРЕЛО.

Авторы

  • Jordan Borean (@jborean93)

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

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Связь

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

Spec-Zone.ru

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