junos_user — Управление локальными учетными записями пользователей на устройствах Juniper JUNOS
Новая версия 2.3.
Обзор
- Этот модуль управляет локально настроенными учетными записями пользователей на удалённых сетевых устройствах, работающих под управлением операционной системы JUNOS. Он предоставляет набор аргументов для создания, удаления и обновления локально определённых учётных записей.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- ncclient (>=v0.5.2)
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| active (добавлено в 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. Объект словаря, содержащий данные подключения. | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| host требуется | Указывает имя хоста DNS или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это путь к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout | Значение по умолчанию: 10 | Указывает время ожидания в секундах для связи с сетевым устройством при подключении или отправке команд. Если время ожидания истечёт до завершения операции, модуль выдаст ошибку. | |
| password | Значение по умолчанию: Нет | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD. | |
| port | Значение по умолчанию: 22 | Указывает порт для создания подключения к удалённому устройству. Значение порта по умолчанию — хорошо известный SSH-порт 22 (для transport=cli) или порт 830 (для transport=netconf) устройства. | |
| purge | Значение по умолчанию: нет | Аргумент 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. - Для получения информации об использовании CLI и 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 только чтение; + } |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратной совместимости.
Поддержка
Для получения дополнительной информации о поддержке этого модуля 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.5/modules/junos_user_module.html