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