ios_user - Управление агрегированным списком локальных пользователей на устройстве Cisco IOS
Новая версия с 2.4.
Описание
- Этот модуль предоставляет декларативное управление локальными именами пользователей, настроенными на сетевых устройствах. Он позволяет плейбукам управлять либо отдельными именами пользователей, либо совокупностью имён в текущей рабочей конфигурации. Он также поддерживает удаление имён пользователей из конфигурации, которые не определены явно.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| aggregate | Набор объектов имён пользователей, которые должны быть настроены на удалённом устройстве Cisco IOS. Элементы списка могут быть либо именем пользователя, либо хешем имени пользователя и свойств. Этот аргумент взаимоисключающий с аргументом name. Псевдонимы: users, collection | ||
| auth_pass | Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli и become: yes с become_pass. Дополнительную информацию см. в руководстве IOS Platform Options. Указывает пароль для использования при входе в привилегированный режим на удалённом устройстве. Если authorize имеет значение false, то этот аргумент не оказывает никакого влияния. Если значение не указано в задаче, то используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize bool |
| Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli и become: yes. Дополнительную информацию см. в руководстве IOS Platform Options. Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, то используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| configured_password | Пароль, который должен быть настроен на устройстве Cisco IOS. Пароль должен быть в открытом виде, и он будет зашифрован на устройстве. Обратите внимание, что этот параметр отличается от provider password. | ||
| name | Имя пользователя, которое должно быть настроено на устройстве Cisco IOS. Этот аргумент принимает строковое значение и взаимоисключающий с аргументом aggregate. Обратите внимание, что этот параметр отличается от provider username. | ||
| nopassword bool |
| Определяет имя пользователя без присвоения пароля. Это позволит пользователю войти в систему без аутентификации по паролю. | |
| privilege | Аргумент privilege настраивает уровень привилегий пользователя при входе в систему. Этот аргумент принимает целочисленные значения в диапазоне от 1 до 15. | ||
| provider | Устарело Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli. Дополнительную информацию см. в руководстве IOS Platform Options. Объект типа dict, содержащий данные подключения. | ||
| host обязательно | Указывает имя DNS-хоста или адрес для подключения к удалённому устройству по указанному каналу передачи. Значение параметра host используется в качестве адреса назначения для канала передачи. | ||
| port | Значение по умолчанию: 22 | Указывает порт, который используется при построении подключения к удалённому устройству. | |
| username | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации SSH-сессии. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| password | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации SSH-сессии. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| timeout | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку. | |
| ssh_keyfile | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации SSH-сессии. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| authorize bool |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| auth_pass | Указывает пароль для использования при входе в привилегированный режим на удалённом устройстве. Если authorize имеет значение false, то этот аргумент не оказывает никакого влияния. Если значение не указано в задаче, то используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| purge bool |
| Инструктирует модуль рассматривать определение ресурса как абсолютное. Он удалит любые ранее настроенные имена пользователей на устройстве, за исключением пользователя `admin` (текущий набор определённых пользователей). | |
| state |
| Настраивает состояние определения имени пользователя по отношению к рабочей конфигурации устройства. При значении present имя пользователя(ей) должно быть настроено в активной конфигурации устройства, а при значении absent — нет. | |
| update_password |
| Поскольку пароли шифруются в рабочей конфигурации устройства, этот аргумент укажет модулю, когда следует изменить пароль. При значении always, пароль всегда будет обновлён на устройстве, а при значении on_create — только в случае создания имени пользователя. | |
| view | Настраивает представление для имени пользователя в рабочей конфигурации устройства. Аргумент принимает строковое значение, определяющее имя представления. Этот аргумент не проверяет, было ли представление настроено на устройстве. Псевдонимы: role | ||
Примечания
Примечание
- Проверено на IOS 15.6
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в Руководстве по сетям Ansible
- Дополнительную информацию об использовании Ansible для управления устройствами Cisco см. на странице интеграции Cisco.
Примеры
- name: create a new user
ios_user:
name: ansible
nopassword: True
state: present
- name: remove all users except admin
ios_user:
purge: yes
- name: set multiple users to privilege level 15
ios_user:
aggregate:
- name: netop
- name: netend
privilege: 15
state: present
- name: set user view/role
ios_user:
name: netop
view: network-operator
state: present
- name: Change Password for User netop
ios_user:
name: netop
configured_password: "{{ new_password }}"
update_password: always
state: present
- name: Aggregate of users
ios_user:
aggregate:
- name: ansibletest2
- name: ansibletest3
view: network-admin
- name: Delete users with aggregate
ios_user:
aggregate:
- name: ansibletest1
- name: ansibletest2
- name: ansibletest3
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны в разделе, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| commands список | всегда | Список команд конфигурации, которые необходимо отправить на устройство Пример: ['username ansible secret password', 'username admin secret admin'] |
Статус
Этот модуль помечен как экспериментальный, что означает, что интерфейс не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как сетевой, что означает, что он поддерживается командой Ansible Network Team. Подробнее см. поддержку модулей.
Список других модулей, также поддерживаемых командой Ansible Network Team, см. в этом разделе.
Поддержка
Для получения дополнительной информации о поддержке этого модуля Red Hat, обратитесь к этой статье базы знаний
Автор
- Trishna Guha (@trishnaguha)
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 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/ios_user_module.html