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 boolean |
| Устаревший Начиная с 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 boolean |
| Определяет имя пользователя без присвоения пароля. Это позволит пользователю войти в систему без аутентификации паролем. | |
| privilege - | Аргумент privilege настраивает уровень привилегий пользователя при входе в систему. Этот аргумент принимает целочисленные значения в диапазоне от 1 до 15. | ||
| provider - | Устаревший Начиная с Ansible 2.5 рекомендуется использовать connection: network_cli.Для получения дополнительной информации обратитесь к руководству IOS Platform Options. Объект словаря, содержащий данные подключения. | ||
| auth_pass - | Указывает пароль для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, этот аргумент ничего не делает. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTH_PASS. | ||
| authorize boolean |
| Инструктирует модуль войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_AUTHORIZE. | |
| host - / обязательно | Указывает имя хоста DNS или адрес для подключения к удалённому устройству по указанному транспорту. Значение host используется в качестве адреса назначения для транспорта. | ||
| password - | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_PASSWORD. | ||
| port - | Значение по умолчанию: 22 | Указывает порт, используемый при построении подключения к удалённому устройству. | |
| ssh_keyfile - | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout - | Значение по умолчанию: 10 | Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут превышен до завершения операции, модуль выдаст ошибку. | |
| username - | Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сессии SSH. Если значение не указано в задаче, используется значение переменной среды ANSIBLE_NET_USERNAME. | ||
| purge boolean |
| Инструктирует модуль рассматривать определение ресурса как абсолютное. Он удалит все ранее настроенные имена пользователей на устройстве, за исключением пользователя `admin` (текущий набор определённых пользователей). | |
| sshkey - добавлен в 2.7 | Указывает открытый SSH-ключ для настройки для данного имени пользователя. Этот аргумент принимает допустимое значение SSH-ключа. | ||
| 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
sshkey: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
state: present
- name: remove all users except admin
ios_user:
purge: yes
- name: remove all users except admin and these listed users
ios_user:
aggregate:
- name: testuser1
- name: testuser2
- name: testuser3
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. [сеть]
Поддержка Red Hat
Дополнительную информацию о поддержке этого модуля Red Hat см. в этой статье базы знаний 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.7/modules/ios_user_module.html