Spec-Zone.ru › Ansible

community.windows.laps_password lookup – Извлекает пароль LAPS для сервера.

Примечание

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

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

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

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

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

Описание

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

Требования

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

  • python-ldap

Параметры

Параметр

Комментарии

Название хоста

строка / обязательный

Имя хоста, для которого требуется получить пароль 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, чтобы обеспечить шифрование трафика.

Выбоpы:

  • 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.

Выбоpы:

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

ca_cert

aliases: cacert_file

string

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

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

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

domain

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

Домен для поиска пароля LAPS.

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

Поддерживает имя домена/хоста или явную LDAP-URI с уже заполненным домен/хост.

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

password

string

Пароль для username.

Обязательно, если установлен username.

port

integer

Порт LDAP для связи.

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

scheme

string

Схема LDAP для использования.

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

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

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

Выбоpы:

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

search_base

string

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

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

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

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

start_tls

boolean

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

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

Игнорируется, когда scheme=ldaps, так как трафик уже зашифрован.

Выбоpы:

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

username

string

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

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

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

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

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

validate_certs

string

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

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

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

allow запросит и проверит сертификат, но продолжит работу даже в случае его недействительности.

never не запросит сертификат от сервера, поэтому проверка не выполняется.

Выбоpы:

  • "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') }}"

Значение возврата

Ключ

Описание

Значение возврата

строка

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

Возвращено: успех

Авторы

  • Jordan Borean (@jborean93)

Подсказка

Элементы конфигурации для каждого типа записи имеют порядок приоритета снизу вверх. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше.

Ссылки на сборку

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

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/windows/laps_password_lookup.html

Spec-Zone.ru

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