junos_user - Управление локальными учётными записями пользователей на устройствах Juniper JUNOS
Новое в версии 2.3.
Описание
- Этот модуль управляет локально настроенными учётными записями пользователей на удалённых сетевых устройствах, работающих под управлением операционной системы JUNOS. Он предоставляет набор аргументов для создания, удаления и обновления локально определённых учётных записей.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- ncclient (>=v0.5.2)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| active bool (добавлено в 2.4) |
| Указывает, активна или деактивирована конфигурация. | |
| aggregate (добавлено в 2.4) | Аргумент aggregate определяет список пользователей, которые должны быть настроены на удалённом устройстве. Список пользователей будет сравниваться с текущими пользователями, и только изменения будут добавлены или удалены из конфигурации устройства. Этот аргумент несовместим с аргументом name.псевдонимы: users, collection | ||
| full_name | Аргумент full_name предоставляет полное имя учётной записи пользователя, которое должно быть создано на удалённом устройстве. Этот аргумент принимает любое текстовое значение. | ||
| name | Аргумент name определяет имя пользователя, который должен быть создан в системе. Этот аргумент должен соответствовать соответствующим соглашениям об именовании пользователей для целевого устройства, работающего под управлением JUNOS. Этот аргумент несовместим с аргументом aggregate. | ||
| provider | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli или connection: netconf. Дополнительную информацию можно найти в руководстве Junos OS Platform Options. Объект типа dict, содержащий сведения о подключении. | ||
| host обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| port | По умолчанию: 22 | Указывает порт, используемый при построении подключения к удалённому устройству. Значение порта по умолчанию равно общеизвестному порту SSH 22 (для transport=cli) или порту 830 (для transport=netconf) устройства. | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| timeout | По умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение - путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| purge bool |
| Аргумент purge указывает модулю считать определение пользователей абсолютным. Он удалит всех ранее настроенных пользователей на устройстве за исключением текущего набора aggregate. | |
| role |
| Аргумент role определяет роль учётной записи пользователя в удалённой системе. Для учётных записей пользователей можно настроить несколько ролей. | |
| sshkey | Аргумент sshkey определяет открытый SSH-ключ, который должен быть настроен для учётной записи пользователя в удалённой системе. Этот аргумент должен быть допустимым SSH-ключом. | ||
| state |
| Аргумент state настраивает состояние определений пользователей в отношении рабочей конфигурации устройства. При установке в значение наличие пользователь должен быть настроен в активной конфигурации устройства, а при установке в значение отсутствует пользователь не должен быть в активной конфигурации устройства. | |
Примечания
Примечание
- Для работы этого модуля требуется, чтобы служба netconf системы была включена на удалённом управляемом устройстве.
- Проверено на vSRX JUNOS версии 15.1X49-D15.4, vqfx-10000 JUNOS версии 15.1X53-D60.4.
- Рекомендуемое подключение -
netconf. См. руководство по параметрам платформы Junos OS. - Этот модуль также работает с подключениями
localдля устаревших playbooks. - Сведения об использовании командной строки и netconf см. в руководстве по параметрам платформы Junos OS
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в руководстве по сетям Ansible
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами Juniper см. на сайте https://www.ansible.com/ansible-juniper.
Примеры
- name: create new user account
junos_user:
name: ansible
role: super-user
sshkey: "{{ lookup('file', '~/.ssh/ansible.pub') }}"
state: present
- name: remove a user account
junos_user:
name: ansible
state: absent
- name: remove all user accounts except ansible
junos_user:
aggregate:
- name: ansible
purge: yes
- name: Create list of users
junos_user:
aggregate:
- {name: test_user1, full_name: test_user2, role: operator, state: present}
- {name: test_user2, full_name: test_user2, role: read-only, state: present}
- name: Delete list of users
junos_user:
aggregate:
- {name: test_user1, full_name: test_user2, role: operator, state: absent}
- {name: test_user2, full_name: test_user2, role: read-only, state: absent}
Возвращаемые значения
Общие возвращаемые значения документированы здесь, ниже приведены поля, уникальные для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| diff.prepared строка | при изменении конфигурации и включённом параметре diff. | Разница в конфигурации до и после применения изменения. Пример: [edit system login] + user test-user { + uid 2005; + class только чтение; + } |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Техническое обслуживание
Этот модуль помечен как сетевой, что означает, что его поддерживает команда Ansible Network. См. поддержку и техническое обслуживание модулей для получения дополнительной информации.
Список других модулей, которые также поддерживаются командой Ansible Network, см. в этой ссылке.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этой статье базы знаний
Автор
- Peter Sprygada (@privateip)
Подсказка
Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать его, чтобы улучшить его.
© 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/junos_user_module.html