Spec-Zone.ru › Ansible 2.11

cisco.iosxr.iosxr_user – Управление совокупностью локальных пользователей на устройстве Cisco IOS XR

Примечание

Этот плагин является частью коллекции cisco.iosxr (версия 1.2.1).

Для его установки используйте: ansible-galaxy collection install cisco.iosxr.

Для использования в книге задач укажите: cisco.iosxr.iosxr_user.

Новое в версии 1.0.0: of cisco.iosxr

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Этот модуль обеспечивает декларативное управление локальными именами пользователей, настроенными на сетевых устройствах. Он позволяет книгам задач управлять либо отдельными именами пользователей, либо совокупностью имён пользователей в текущей рабочей конфигурации. Он также поддерживает удаление имён пользователей из конфигурации, которые не определены явно.

Примечание

У этого модуля есть соответствующий плагин действий.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • ncclient >= 0.5.3 при использовании netconf
  • lxml >= 4.1.1 при использовании netconf
  • base64 при использовании public_key_contents или public_key
  • paramiko при использовании public_key_contents или public_key

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
admin
boolean
    Варианты:
  • нет ←
  • да
Переходит в режим администрирования для внесения изменений в конфигурацию устройства.
Применимо только при использовании транспорта network_cli
aggregate
список / элементы=словарь
Набор объектов имен пользователей, которые необходимо настроить на удалённом устройстве Cisco IOS XR. Элементы списка могут быть именем пользователя или хешем из имени пользователя и свойств. Этот аргумент взаимоисключающий с аргументом name.

Псевдонимы: users, collection
admin
boolean
    Варианты:
  • нет
  • да
Переходит в режим администрирования для внесения изменений в конфигурацию устройства.
Применимо только при использовании транспорта network_cli
configured_password
строка
Пароль, который необходимо настроить на устройстве Cisco IOS XR. Пароль должен быть предоставлен в открытом виде. Пароль шифруется на устройстве при использовании cli и Ansible при использовании netconf с использованием той же техники хеширования MD5 с размером соли 3. Обратите внимание, что этот параметр отличается от provider password.
group
строка
Настраивает группу для имени пользователя в рабочей конфигурации устройства. Аргумент принимает строковое значение, определяющее имя группы. Этот аргумент не проверяет, была ли группа настроена на устройстве.

Псевдонимы: role
groups
список / элементы=строка
Настраивает группы для имени пользователя в рабочей конфигурации устройства. Аргумент принимает список имён групп. Этот аргумент не проверяет, была ли группа настроена на устройстве. Он похож на команду aggregate для имён пользователей, но позволяет настраивать несколько групп для пользователя(ей).
name
строка / обязательно
Имя пользователя, которое необходимо настроить на устройстве Cisco IOS XR. Этот аргумент принимает строковое значение и взаимоисключающий с аргументом aggregate . Обратите внимание, что этот параметр отличается от provider username.
public_key
строка
Настраивает содержимое файла открытого ключа для загрузки на узел IOS-XR. Это позволяет пользователям входить в систему с помощью соответствующего закрытого ключа. IOS-XR принимает только файлы, декодированные в base64, поэтому они будут декодированы и загружены на узел. Обратите внимание, что это требует файла открытого ключа OpenSSL, сгенерированные PuTTy файлы не подойдут! Взаимоисключающий с public_key_contents. Если используется с несколькими пользователями в агрегатах, то один и тот же файл ключа используется для всех пользователей.
public_key_contents
строка
Настраивает содержимое файла открытого ключа для загрузки на узел IOS-XR. Это позволяет пользователям входить в систему с помощью соответствующего закрытого ключа. IOS-XR принимает только файлы, декодированные в base64, поэтому они будут декодированы и загружены на узел. Обратите внимание, что это требует файла открытого ключа OpenSSL, сгенерированные PuTTy файлы не подойдут! Взаимоисключающий с public_key. Если используется с несколькими пользователями в агрегатах, то один и тот же файл ключа используется для всех пользователей.
state
строка
    Варианты:
  • present
  • absent
Настраивает состояние определения имени пользователя, связанное с рабочей конфигурацией устройства. При значении present имя пользователя(ей) должно быть настроено в активной конфигурации устройства, а при значении absent имя пользователя(ей) не должно быть в активной конфигурации устройства.
update_password
строка
    Варианты:
  • on_create
  • always
Поскольку пароли зашифрованы в конфигурации устройства, этот аргумент указывает модулю, когда нужно изменить пароль. При значении always, пароль всегда будет обновлён на устройстве, а при значении on_create, пароль будет обновлён только в случае создания имени пользователя.
configured_password
строка
Пароль, который необходимо настроить на устройстве Cisco IOS XR. Пароль должен быть предоставлен в открытом виде. Пароль шифруется на устройстве при использовании cli и Ansible при использовании netconf с использованием той же техники хеширования MD5 с размером соли 3. Обратите внимание, что этот параметр отличается от provider password.
group
строка
Настраивает группу для имени пользователя в рабочей конфигурации устройства. Аргумент принимает строковое значение, определяющее имя группы. Этот аргумент не проверяет, была ли группа настроена на устройстве.

Псевдонимы: role
groups
список / элементы=строка
Настраивает группы для имени пользователя в рабочей конфигурации устройства. Аргумент принимает список имён групп. Этот аргумент не проверяет, была ли группа настроена на устройстве. Он похож на команду aggregate для имён пользователей, но позволяет настраивать несколько групп для пользователя(ей).
name
строка
Имя пользователя, которое необходимо настроить на устройстве Cisco IOS XR. Этот аргумент принимает строковое значение и взаимоисключающий с аргументом aggregate . Обратите внимание, что этот параметр отличается от provider username.
provider
словарь
Устаревший
Начиная с Ansible 2.5, рекомендуем использовать connection: network_cli.
Для получения дополнительной информации, обратитесь к Руководству по сети.
Объект словаря, содержащий детали подключения.
host
строка
Указывает имя или адрес DNS хоста для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта.
password
строка
Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_PASSWORD.
port
целое число
Указывает порт для создания соединения с удалённым устройством.
ssh_keyfile
путь
Указывает SSH ключ для аутентификации подключения к удалённому устройству. Это значение является путём к ключу, используемому для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_SSH_KEYFILE.
timeout
целое число
Указывает таймаут в секундах для связи с сетевым устройством для подключения или отправки команд. Если таймаут истечёт до завершения операции, модуль выдаст ошибку.
transport
строка
    Варианты:
  • cli ←
  • netconf
Указывает тип транспорта, используемого для соединения.
username
строка
Настраивает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации сеанса SSH. Если значение не указано в задаче, вместо него используется значение переменной окружения ANSIBLE_NET_USERNAME.
public_key
строка
Настраивает содержимое файла открытого ключа для загрузки на узел IOS-XR. Это позволяет пользователям входить в систему с помощью соответствующего закрытого ключа. IOS-XR принимает только файлы, декодированные в base64, поэтому они будут декодированы и загружены на узел. Обратите внимание, что это требует файла открытого ключа OpenSSL, сгенерированные PuTTy файлы не подойдут! Взаимоисключающий с public_key_contents. Если используется с несколькими пользователями в агрегатах, то один и тот же файл ключа используется для всех пользователей.
public_key_contents
строка
Настраивает содержимое файла открытого ключа для загрузки на узел IOS-XR. Это позволяет пользователям входить в систему с помощью соответствующего закрытого ключа. IOS-XR принимает только файлы, декодированные в base64, поэтому они будут декодированы и загружены на узел. Обратите внимание, что это требует файла открытого ключа OpenSSL, сгенерированные PuTTy файлы не подойдут! Взаимоисключающий с public_key. Если используется с несколькими пользователями в агрегатах, то один и тот же файл ключа используется для всех пользователей.
purge
boolean
    Варианты:
  • нет ←
  • да
Указывает модулю рассматривать определение ресурса как абсолютное. Он удалит все ранее настроенные имена пользователей на устройстве, за исключением пользователя `admin` и текущего набора пользователей.
state
строка
    Варианты:
  • present ←
  • absent
Настраивает состояние определения имени пользователя, связанное с рабочей конфигурацией устройства. При значении present имя пользователя(ей) должно быть настроено в активной конфигурации устройства, а при значении absent имя пользователя(ей) не должно быть в активной конфигурации устройства.
update_password
string
    Выбори:
  • on_create
  • always ←
Так как пароли зашифрованы в конфигурации устройства, этот аргумент укажет модулю, когда следует изменить пароль. При установке значения always, пароль всегда будет обновляться на устройстве, а при установке значения on_create, пароль будет обновлён только в том случае, если имя пользователя создано.

Примечания

Примечание

  • Этот модуль работает с подключением network_cli и netconf. См. параметры платформы IOS-XR.
  • Тестировалось на IOS XRv 6.1.3
  • Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в Руководстве по сетям Ansible
  • Дополнительную информацию об использовании Ansible для управления устройствами Cisco см. на странице интеграции Cisco.

Примеры

- name: create a new user
  cisco.iosxr.iosxr_user:
    name: ansible
    configured_password: mypassword
    state: present
- name: create a new user in admin configuration mode
  cisco.iosxr.iosxr_user:
    name: ansible
    configured_password: mypassword
    admin: true
    state: present
- name: remove all users except admin
  cisco.iosxr.iosxr_user:
    purge: true
- name: set multiple users to group sys-admin
  cisco.iosxr.iosxr_user:
    aggregate:
    - name: netop
    - name: netend
    group: sysadmin
    state: present
- name: set multiple users to multiple groups
  cisco.iosxr.iosxr_user:
    aggregate:
    - name: netop
    - name: netend
    groups:
    - sysadmin
    - root-system
    state: present
- name: Change Password for User netop
  cisco.iosxr.iosxr_user:
    name: netop
    configured_password: '{{ new_password }}'
    update_password: always
    state: present
- name: Add private key authentication for user netop
  cisco.iosxr.iosxr_user:
    name: netop
    state: present
    public_key_contents: "{{ lookup('file', '/home/netop/.ssh/id_rsa.pub' }}"

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:

Ключ Возвращаемое значение Описание
commands
список / элементы=строка
всегда
Список команд конфигурационного режима, которые необходимо отправить устройству

Пример:
['username ansible secret password group sysadmin', 'username admin secret admin']
xml
список / элементы=строка
всегда (пустой список, если нет xml rpc для отправки)
xml rpc NetConf, отправленные на устройство с транспортом netconf

Пример:
['<config xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0"> <aaa xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-lib-cfg"> <usernames xmlns="http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-locald-cfg"> <username xc:operation="merge"> <name>test7</name> <usergroup-under-usernames> <usergroup-under-username> <name>sysadmin</name> </usergroup-under-username> </usergroup-under-usernames> <secret>$1$ZsXC$zZ50wqhDC543ZWQkkAHLW0</secret> </username> </usernames> </aaa> </config>']


Авторы

  • Trishna Guha (@trishnaguha)
  • Sebastiaan van Doesselaar (@sebasdoes)
  • Kedar Kekan (@kedarX)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/iosxr/iosxr_user_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API