Spec-Zone.ru › Ansible 2.6

htpasswd - управление файлами пользователей для аутентификации по протоколу Basic

Новое в версии 1.3.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус
  • Обслуживание
    • Автор

Описание

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

Требования

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

  • passlib>=1.6

Параметры

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

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

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

псевдонимы: dest, destfile
selevel По умолчанию:
"s0"
Часть контекста файла SELinux. Это атрибут MLS/MCS, иногда известный как range. Функция _default работает так же, как для seuser.
serole
Часть контекста файла SELinux, роль. Функция _default работает так же, как для seuser.
setype
Часть контекста файла SELinux, тип. Функция _default работает так же, как для seuser.
seuser
Часть контекста файла SELinux, пользователь. Будет использовать политику системы по умолчанию, если применимо. Если установлено значение _default, будет использоваться часть политики user, если она доступна.
state
    Варианты:
  • present ←
  • absent
Нужно ли наличие записи пользователя
unsafe_writes
bool

(добавлен в 2.2)
    Варианты:
  • нет ←
  • да
Обычно этот модуль использует атомарные операции, чтобы предотвратить повреждение данных или несогласованные чтения из целевых файлов. Иногда системы настроены или просто неисправны таким образом, что это предотвращено. Один пример - файлы, смонтированные в docker, они не могут быть обновлены атомарно и могут быть обновлены только небезопасным способом.
Этот булевый параметр позволяет Ansible перейти к небезопасным методам обновления файлов в тех случаях, когда у вас нет другого выбора. Имейте в виду, что это подвержено гонкам и может привести к повреждению данных.

Примечания

Примечание

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

Примеры

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

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

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

Статус

Этот модуль помечен как preview, что означает, что его интерфейс не гарантируется обратной совместимостью.

Обслуживание

Этот модуль помечен как community, что означает, что он поддерживается сообществом Ansible. Подробности см. в разделе Обслуживание и поддержка модулей.

Список других модулей, поддерживаемых сообществом Ansible, см. здесь.

Автор

  • Команда Ansible Core

Подсказка

Если вы обнаружили проблемы в этом документе, вы можете отредактировать его, чтобы улучшить его.

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

Spec-Zone.ru

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