Spec-Zone.ru › Ansible 2.10

community.general.htpasswd – управление файлами пользователей для аутентификации по протоколу basic

Примечание

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

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

Для использования в книге задач укажите: community.general.htpasswd

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

Обзор

  • Добавление и удаление записей имя пользователя/пароль в файле паролей с помощью htpasswd.
  • Используется веб-серверами, такими как Apache и Nginx, для аутентификации по протоколу basic.

Требования

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

  • passlib>=1.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attributes
строка
добавлен в версии 2.3 ansible.builtin
Атрибуты, которые должен иметь получившийся файл или директория.
Для получения поддерживаемых флагов см. страницу справки для chattr на целевой системе.
Эта строка должна содержать атрибуты в том же порядке, что и в выводе lsattr.
Оператор = предполагается по умолчанию, в противном случае операторы + или - должны быть включены в строку.

псевдонимы: attr
create
логическое
    Варианты:
  • нет
  • да ←
Используется с state=present. Если указано, файл будет создан, если он ещё не существует. Если установлено в "нет", произойдёт ошибка, если файла не существует.
crypt_scheme
строка
Значение по умолчанию:
"apr_md5_crypt"
Схема шифрования, которая должна быть использована. Помимо четырёх вариантов, перечисленных здесь, вы также можете использовать любой другой хеш, поддерживаемый passlib, например, md5_crypt и sha256_crypt, которые являются хэшами linux passwd. В этом случае файл паролей не будет совместим с Apache или Nginx
Некоторые из доступных вариантов: apr_md5_crypt, des_crypt, ldap_sha1, plaintext
group
строка
Имя группы, которая должна владеть файлом/директорией, как это передаётся в chown.
mode
сырой
Разрешения, которые должен иметь получившийся файл или директория.
Для тех, кто знаком с /usr/bin/chmod, помните, что режимы фактически представляют собой восьмеричные числа. Вы должны либо добавить ведущую ноль, чтобы парсер YAML Ansible понял, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '1777') так, чтобы Ansible получил строку и смог самостоятельно преобразовать её из строки в число.
Передача Ansible числа без соблюдения одного из этих правил приведёт к десятичному числу, что даст непредсказуемые результаты.
Начиная с Ansible 1.8, режим может быть задан как символьный режим (например, u+rwx или u=rw,g=r,o=r).
name
строка / обязательно
Имя пользователя для добавления или удаления

псевдонимы: username
owner
строка
Имя пользователя, который должен владеть файлом/директорией, как это передаётся в chown.
password
строка
Пароль, связанный с пользователем.
Должен быть указан, если пользователь ещё не существует.
path
путь / обязательно
Путь к файлу, содержащему имена пользователей и пароли

псевдонимы: dest, destfile
selevel
строка
Часть уровня контекста файла SELinux.
Это атрибут MLS/MCS, иногда известный как range.
При установке значения в _default, будет использоваться часть политики level, если она доступна.
serole
строка
Часть роли контекста файла SELinux.
При установке значения в _default, будет использоваться часть политики role, если она доступна.
setype
строка
Часть типа контекста файла SELinux.
При установке значения в _default, будет использоваться часть политики type, если она доступна.
seuser
строка
Часть пользователя контекста файла SELinux.
По умолчанию используется политика system, где это применимо.
При установке значения в _default, будет использоваться часть политики user, если она доступна.
state
строка
    Варианты:
  • наличие ←
  • отсутствие
Необходимо ли наличие записи пользователя
unsafe_writes
логическое
добавлен в 2.2 ansible.builtin
    Варианты:
  • нет ←
  • да
Влияние на то, когда использовать атомарную операцию для предотвращения повреждения данных или несогласованных чтений из целевого файла.
По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых файлов, но иногда системы настроены или просто не работают так, что это невозможно. Примером являются файлы, смонтированные в docker, которые не могут обновляться атомарно изнутри контейнера и могут записываться только небезопасным способом.
Этот параметр позволяет Ansible использовать небезопасные методы обновления файлов в случае, если атомарные операции завершаются ошибкой (хотя он не заставляет Ansible выполнять небезопасные записи).
ВАЖНО! Небезопасные записи подвержены проблемам гонок и могут привести к повреждению данных.

Примечания

Примечание

  • Этот модуль зависит от Python-библиотеки passlib, которую необходимо установить на все целевые системы.
  • В Debian, Ubuntu или Fedora: установите python-passlib.
  • В RHEL или CentOS: включите EPEL, затем установите python-passlib.

Примеры

- name: Add a user to a password file and ensure permissions are set
  community.general.htpasswd:
    path: /etc/nginx/passwdfile
    name: janedoe
    password: '9s36?;fyNp'
    owner: root
    group: www-data
    mode: 0640

- name: Remove a user from a password file
  community.general.htpasswd:
    path: /etc/apache2/passwdfile
    name: foobar
    state: absent

- name: Add a user to a password file suitable for use by libpam-pwdfile
  community.general.htpasswd:
    path: /etc/mail/passwords
    name: alex
    password: oedu2eGh
    crypt_scheme: md5_crypt

Авторы

  • Команда разработчиков Ansible

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

Spec-Zone.ru

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