user - Управление учетными записями пользователей
Обзор
- Управление учетными записями пользователей и атрибутами пользователей.
- Для целевых систем Windows используйте модуль win_user.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| append |
| Если yes, добавить пользователя в группы, указанные в groups.Если no, пользователь будет добавлен только в группы, указанные в groups, удалив его из всех остальных групп. |
| comment | Необязательно задает описание (также известное как GECOS) учетной записи пользователя. | |
| create_home |
| Если не установлено значение no, домашний каталог для пользователя будет создан при создании учетной записи или если домашний каталог не существует.Изменено с createhome на create_home в версии 2.5.псевдонимы: createhome |
| expires (добавлено в 1.9) | Время истечения срока действия учетной записи пользователя в эпохе, оно будет проигнорировано на платформах, которые не поддерживают это. В настоящее время поддерживается в Linux, FreeBSD и DragonFlyBSD. | |
| force |
| При использовании с state=absent, поведение такое же, как с userdel --force. |
| generate_ssh_key |
| Создавать ли SSH-ключ для данного пользователя. Это не перезапишет существующий SSH-ключ. |
| group | Необязательно задает основную группу пользователя (принимает имя группы). | |
| groups | Список групп, в которые будет добавлен пользователь. Если значение установлено в пустую строку '', null, или ~, пользователь удаляется из всех групп, кроме основной группы. (~ означает null в YAML)До версии 2.3 единственный допустимый формат ввода — строка, разделенная запятыми. Теперь этот параметр принимает и список, и строку, разделенную запятыми. | |
| home | Необязательно задает домашний каталог пользователя. | |
| local (добавлено в 2.4) |
| Принудительно использует альтернативы команды "local" на платформах, которые их реализуют. Это полезно в средах с централизованной аутентификацией, когда вы хотите управлять локальными пользователями. Т.е. использует `luseradd` вместо `useradd`. Это требует, чтобы эти команды существовали на целевом узле, в противном случае будет ошибка. |
| login_class | Необязательно задает класс входа пользователя для систем FreeBSD, DragonFlyBSD, OpenBSD и NetBSD. | |
| move_home |
| Если установлено значение yes при использовании с home=, попытаться переместить домашний каталог пользователя в указанный каталог, если он там еще не находится. |
| name обязательно | Имя пользователя, для создания, удаления или изменения. псевдонимы: user | |
| non_unique |
| Необязательно, при использовании с опцией -u, эта опция позволяет изменить идентификатор пользователя на не уникальное значение. |
| password | Необязательно устанавливает пароль пользователя на это зашифрованное значение. В системах Darwin/OS X это значение должно быть открытым текстом. Будьте осторожны с проблемами безопасности. См. http://docs.ansible.com/ansible/faq.html#how-do-i-generate-crypted-passwords-for-the-user-module для получения подробной информации о различных способах генерации этих значений паролей. | |
| remove |
| При использовании с state=absent, поведение такое же, как с userdel --remove. |
| seuser (добавлено в 2.1) | Необязательно задает тип seuser (user_u) в системах с включенным selinux. | |
| shell | Необязательно задает оболочку пользователя. В Mac OS X до версии 2.5, стандартная оболочка для несистемных пользователей была /usr/bin/false. С версии 2.5 стандартная оболочка для несистемных пользователей в Mac OS X — /bin/bash. | |
| skeleton (добавлено в 2.0) | Необязательно задает домашний шаблонный каталог. Требуется параметр create_home! | |
| ssh_key_bits | По умолчанию: значение, установленное ssh-keygen по умолчанию | Необязательно указывает количество бит в создаваемом SSH-ключе. |
| ssh_key_comment | По умолчанию: ansible-generated on $HOSTNAME | Необязательно определяет комментарий к SSH-ключу. |
| ssh_key_file | По умолчанию: .ssh/id_rsa | Необязательно указывает имя файла SSH-ключа. Если это имя файла относительно, то оно будет относиться к домашнему каталогу пользователя. |
| ssh_key_passphrase | Установите пароль для SSH-ключа. Если пароль не задан, SSH-ключ будет без пароля по умолчанию. | |
| ssh_key_type | По умолчанию: rsa | Необязательно указывает тип генерируемого SSH-ключа. Доступные типы SSH-ключей зависят от реализации на целевом узле. |
| state |
| Указывает, должна ли учетная запись существовать или нет, выполняя действие, если состояние отличается от указанного. |
| system |
| При создании учетной записи установка этого значения в yes делает пользователя системным пользователем. Это значение нельзя изменить для существующих пользователей. |
| uid | Необязательно устанавливает UID пользователя. | |
| update_password (добавлено в 1.3) |
| always обновит пароли, если они отличаются. on_create будет устанавливать пароль только для вновь созданных пользователей. |
Примечания
Примечание
- Существуют определенные требования к платформам по средствам управления пользователями. Однако, они обычно предварительно установлены в системе, и Ansible потребует, чтобы они были доступны во время выполнения. Если их нет, будет показано описательное сообщение об ошибке.
- Для целевых систем Windows используйте модуль win_user.
Примеры
- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
user:
name: johnd
comment: John Doe
uid: 1040
group: admin
- name: Add the user 'james' with a bash shell, appending the group 'admins' and 'developers' to the user's groups
user:
name: james
shell: /bin/bash
groups: admins,developers
append: yes
- name: Remove the user 'johnd'
user:
name: johnd
state: absent
remove: yes
- name: Create a 2048-bit SSH key for user jsmith in ~jsmith/.ssh/id_rsa
user:
name: jsmith
generate_ssh_key: yes
ssh_key_bits: 2048
ssh_key_file: .ssh/id_rsa
- name: Added a consultant whose account you want to expire
user:
name: james18
shell: /bin/zsh
groups: developers
expires: 1422403387
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| append bool | Когда состояние равно 'present' и пользователь существует | Добавлять ли пользователя в группы Пример: True |
| comment string | Когда пользователь существует | Раздел комментариев из файла passwd, обычно имя пользователя Пример: Agent Smith |
| create_home bool | Когда пользователя не существует и режим проверки не используется | Создавать ли домашний каталог Пример: True |
| force bool | Когда состояние равно 'absent' и пользователь существует | Была ли учетная запись пользователя удалена принудительно |
| group int | Когда пользователь существует | Идентификатор основной группы пользователя Пример: 1001 |
| groups string | Когда groups не пусто и state равно 'present' | Список групп, членами которых является пользователь Пример: chrony,apache |
| home string | Когда state равно 'present' | Путь к домашнему каталогу пользователя Пример: /home/asmith |
| move_home bool | Когда state равно 'present' и пользователь существует | Переместить ли существующий домашний каталог |
| name string | всегда | Имя учетной записи пользователя Пример: asmith |
| password string | Когда state равно 'present' и password не пусто | Замаскированное значение пароля Пример: NOT_LOGGING_PASSWORD |
| remove bool | Когда state равно 'absent' и пользователь существует | Удалить ли учетную запись пользователя Пример: True |
| shell string | Когда state равно 'present' | Оболочка входа пользователя Пример: /bin/bash |
| ssh_fingerprint string | Когда generate_ssh_key равно True
| Отпечаток сгенерированного ключа SSH Пример: 2048 SHA256:aYNHYcyVm87Igh0IMEDMbvW0QDlRQfE0aJugp684ko8 ansible-generated on host (RSA) |
| ssh_key_file string | Когда generate_ssh_key равно True
| Путь к сгенерированному публичному ключу SSH Пример: /home/asmith/.ssh/id_rsa |
| ssh_public_key string | Когда generate_ssh_key равно True
| Сгенерированный публичный ключ SSH Пример: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC95opt4SPEC06tOYsJQJIuN23BbLMGmYo8ysVZQc4h2DZE9ugbjWWGS1/pweUGjVstgzMkBEeBCByaEf/RJKNecKRPeGd2Bw9DCj/bn5Z6rGfNENKBmo 618mUJBvdlEgea96QGjOwSB7/gmonduC7gsWDMNcOdSE3wJMTim4lddiBx4RgC9yXsJ6Tkz9BHD73MXPpT5ETnse+A3fw3IGVSjaueVnlUyUmOBf7fzmZbhlFVXf2Zi2rFTXqvbdGHKkzpw1U8eB8xFPP7y d5u1u0e6Acju/8aZ/l17IDFiLke5IzlqIMRTEbDwLNeO84YQKWTm9fODHzhYe0yvxqLiK07 ansible-generated on host' |
| stderr string | Когда stderr возвращается командой, которая выполняется | Стандартная ошибка от выполнения команд Пример: Группа wheels не существует |
| stdout string | Когда стандартный вывод возвращается командой, которая выполняется | Стандартный вывод от выполнения команд |
| system bool | Когда system передаётся модулю, и учетная запись не существует | Является ли учетная запись системной Пример: True |
| uid int | Когда UID передаётся модулю | Идентификатор пользователя учетной записи Пример: 1044 |
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют, что не будут внесены несовместимые с предыдущими версиями изменения интерфейса.
Поддержка
Дополнительную информацию о поддержке данного модуля компанией Red Hat см. в этой статье базы знаний
Автор
- Stephen Fromm (@sfromm)
Подсказка
Если вы обнаружите какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/user_module.html