arista.eos.eos_user 模块 – 管理 EOS 设备上的本地用户集合

注意

此模块是 arista.eos 集合 (版本 10.0.1) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install arista.eos

要在 playbook 中使用它,请指定: arista.eos.eos_user

arista.eos 1.0.0 中的新增功能

概要

  • 此模块提供对在 Arista EOS 设备上配置的本地用户名进行声明式管理。它允许 playbook 管理单个用户名或当前运行配置中的用户名集合。它还支持从配置中清除未明确定义的用户名。

参数

参数

注释

aggregate

别名:users, collection

列表 / 元素=字典

要在远程 Arista EOS 设备上配置的用户名对象集合。列表条目可以是用户名,也可以是用户名和属性的哈希值。此参数与 username 参数互斥。

configured_password

字符串

要在远程 Arista EOS 设备上配置的密码。密码需要以明文形式提供,并在设备上进行加密。

name

字符串

要在远程 Arista EOS 设备上配置的用户名。此参数接受字符串值,并且与 aggregate 参数互斥。

nopassword

布尔值

定义用户名而不分配密码。这将允许用户登录系统而无需密码身份验证。

选项

  • false

  • true

privilege

整数

privilege 参数配置用户登录系统时的权限级别。此参数接受 1 到 15 范围内的整数值。

role

字符串

在设备运行配置中为用户名配置角色。此参数接受定义角色名称的字符串值。此参数不检查角色是否已在设备上配置。

sshkey

字符串

指定要为给定用户名配置的 SSH 公钥。此参数接受有效的 SSH 密钥值。

state

字符串

配置用户名定义与其相关的设备操作配置的状态。设置为 *present* 时,用户名应在设备活动配置中配置;设置为 *absent* 时,用户名不应在设备活动配置中。

选项

  • "present"

  • "absent"

update_password

字符串

由于密码在设备运行配置中已加密,因此此参数将指示模块何时更改密码。设置为 always 时,密码将始终在设备中更新;设置为 on_create 时,只有在创建用户名时才会更新密码。

选项

  • "on_create"

  • "always"

configured_password

字符串

要在远程 Arista EOS 设备上配置的密码。密码需要以明文形式提供,并在设备上进行加密。

name

字符串

要在远程 Arista EOS 设备上配置的用户名。此参数接受字符串值,并且与 aggregate 参数互斥。

nopassword

布尔值

定义用户名而不分配密码。这将允许用户登录系统而无需密码身份验证。

选项

  • false

  • true

privilege

整数

privilege 参数配置用户登录系统时的权限级别。此参数接受 1 到 15 范围内的整数值。

purge

布尔值

指示模块将资源定义视为绝对值。它将删除设备上以前配置的任何用户名,但 EOS 约束不允许删除的 `admin` 用户除外。

选项

  • false ← (默认)

  • true

role

字符串

在设备运行配置中为用户名配置角色。此参数接受定义角色名称的字符串值。此参数不检查角色是否已在设备上配置。

sshkey

字符串

指定要为给定用户名配置的 SSH 公钥。此参数接受有效的 SSH 密钥值。

state

字符串

配置用户名定义与其相关的设备操作配置的状态。设置为 *present* 时,用户名应在设备活动配置中配置;设置为 *absent* 时,用户名不应在设备活动配置中。

选项

  • "present" ← (默认)

  • "absent"

update_password

字符串

由于密码在设备运行配置中已加密,因此此参数将指示模块何时更改密码。设置为 always 时,密码将始终在设备中更新;设置为 on_create 时,只有在创建用户名时才会更新密码。

选项

  • "on_create"

  • "always" ← (默认)

备注

注意

  • 针对 Arista EOS 4.24.6F 测试

示例

- name: create a new user
  arista.eos.eos_user:
    name: ansible
    sshkey: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
    state: present

- name: remove all users except admin
  arista.eos.eos_user:
    purge: true

- name: set multiple users to privilege level 15
  arista.eos.eos_user:
    aggregate:
      - name: netop
      - name: netend
    privilege: 15
    state: present

- name: Change Password for User netop
  arista.eos.eos_user:
    username: netop
    configured_password: '{{ new_password }}'
    update_password: always
    state: present

返回值

常见的返回值已在此处记录 此处,以下是此模块特有的字段

描述

commands

列表 / 元素=字符串

要发送到设备的配置模式命令列表

返回:始终

示例: ["name ansible secret password", "name admin secret admin"]

session_name

字符串

用于加载配置的 EOS 配置会话名称。

返回:当 changed 为 True 时

示例: "ansible_1479315771"

作者

  • Peter Sprygada (@privateip)