cisco.dnac.user_role_workflow_manager 模块 – 用于管理 Cisco Catalyst Center 中用户和角色的资源模块。

注意

此模块是 cisco.dnac 集合(版本 6.25.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install cisco.dnac。您需要进一步的要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 playbook 中使用它,请指定:cisco.dnac.user_role_workflow_manager

cisco.dnac 6.17.0 中的新增功能

概要

  • 管理在 Cisco Catalyst Center 中创建、更新和删除用户和角色的操作。

  • 提供用于创建、更新和删除用户和角色的 API。

要求

在执行此模块的主机上需要满足以下要求。

  • dnacentersdk >= 2.7.2

  • python >= 3.9.19

参数

参数

注释

config

字典 / 必需

一个包含用户或角色配置详细信息的字典。

role_details

列表 / 元素=字典

管理角色的配置详细信息。

assurance

字符串

通过对网络各个方面的完整可见性来确保一致的服务水平。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

monitoring_and_troubleshooting

字符串

监控和管理网络运行状况、排除问题并执行修复。

包括主动网络监控和 AI 驱动的见解。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

monitoring_settings

字符串

配置和管理网络、客户端和应用程序的运行状况阈值。

对于监控和故障排除,至少需要“读取”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数设置相同的访问级别。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

troubleshooting_tools

字符串

创建和管理传感器测试。

为排除客户端故障计划按需取证数据包捕获(智能捕获)。

对于监控和故障排除,至少需要“读取”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

description

字符串

对角色目的和范围的简要描述。

network_analytics

字符串

管理与网络分析相关的组件。

data_access

字符串

启用对查询引擎 API 的访问。

管理全局搜索、恶意管理和 aWIPS 等功能。

将此设置为“拒绝”会影响搜索和保证功能。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数设置相同的访问级别。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_design

字符串

设置网络层次结构、更新软件映像库以及配置网络配置文件和设置以管理站点和网络设备。

advanced_network_settings

字符串

更新网络设置,包括全局设备凭据、身份验证和策略服务器、证书、信任池、云访问密钥、隐形监视、Umbrella 和数据匿名化。

导出设备清单及其凭据。

至少需要网络设置的“读取”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

image_repository

字符串

管理软件映像并促进物理和虚拟网络实体上的升级和更新

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_hierarchy

字符串

根据地理位置定义和创建站点、建筑物、楼层和区域的网络层次结构。

network_profiles

字符串

为路由、交换和无线创建网络配置文件。将配置文件分配给站点。

包括模板编辑器、标记、模型配置编辑器和身份验证模板等角色。

要创建 SSID,需要网络设置的“写入”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_settings

字符串

管理常见的站点范围网络设置,例如 AAA、NTP、DHCP、DNS、Syslog、SNMP 和遥测。

此角色中的用户可以添加 SFTP 服务器并调整在“系统”>“设置”下找到的网络重新同步间隔。

要创建无线配置文件,需要网络配置文件的“写入”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数设置相同的访问级别。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

virtual_network

字符串

管理虚拟网络 (VN)。将物理网络分段为多个逻辑网络,以实现流量隔离和受控的 VN 间通信。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_provision

字符串

配置、升级、调配和管理网络设备。

compliance

字符串

管理合规性调配。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

exo

字符串

扫描网络,查找硬件和软件的生命周期结束、销售结束或支持结束信息。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

image_update

字符串

在完成完整的升级生命周期后,在与黄金映像设置不匹配的设备上升级软件映像。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

inventory_management

列表 / 元素=字典

在管理设备属性和配置属性的同时,发现、添加、替换或删除设备。

要更换设备,需要网络调配下 pnp 的“写入”权限。

device_configuration

字符串

显示设备的正在运行的配置。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

discovery

字符串

发现网络上的新设备。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_device

字符串

从清单中添加设备、查看设备详细信息并执行设备级操作。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

port_management

字符串

允许对设备执行端口操作。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

topology

字符串

显示网络设备和链路连接。

管理设备角色、标记设备、自定义显示以及保存自定义拓扑布局。

要查看 SD-Access Fabric 窗口,至少需要“网络配置 > 库存管理 > 拓扑”的“读取”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

license

字符串

统一查看与许可证使用和合规性相关的软件和网络资产。

还控制 cisco.com 和 Smart 账户的权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_telemetry

字符串

启用或禁用从设备收集应用程序遥测数据。

配置已分配站点的遥测设置。

配置其他设置,例如无线服务保证和控制器证书。

要启用或禁用网络遥测,需要对 Provision 拥有“写入”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

pnp

字符串

自动载入新设备,将它们分配到站点,并使用站点特定设置进行配置。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

provision

字符串

使用站点特定设置和网络策略配置设备。

包括 Fabric、应用程序策略、应用程序可见性、云、站点到站点 VPN、网络/应用程序遥测、Stealthwatch、同步启动与运行配置以及 Umbrella 配置等角色。

在针对恶意设备和 aWIPS 的主仪表板上,可以启用或禁用某些操作,包括恶意设备遏制。

要配置设备,需要对网络设计和网络配置拥有“写入”权限。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_services

字符串

在基本网络连接和访问之外配置网络的其他功能。

默认值: "read"

app_hosting

字符串

部署、管理和监控在网络设备上运行的虚拟化和基于容器的应用程序。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

bonjour

字符串

启用广域 Bonjour 服务,以促进网络中的基于策略的服务发现。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

stealthwatch

字符串

配置网络元素以将数据发送到 Cisco Stealthwatch 以进行威胁检测和缓解,包括加密流量。

要配置 Stealthwatch,以下组件需要“写入”权限。

网络设计 > 网络设置。

网络配置 > 配置。

网络服务 > Stealthwatch。

网络设计 > 高级设置。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

umbrella

字符串

配置网络元素以使用 Cisco Umbrella 作为抵御网络安全威胁的第一道防线。

要配置 Umbrella,以下组件需要“写入”权限。

网络设计 > 网络设置。

网络配置 > 配置。

网络配置 > 计划程序。

网络服务 > Umbrella。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

platform

字符串

用于可访问的、基于意图的工作流、数据交换、通知和第三方应用程序集成的开放平台。

默认值: "deny"

apis

字符串

通过 REST API 访问 Cisco Catalyst Center 以驱动价值。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

bundles

字符串

通过配置和激活用于 ITSM 集成的预配置捆绑包来提高生产力。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

events

字符串

订阅网络和系统感兴趣事件的近实时通知。

在“系统”>“设置”>“目标”中配置电子邮件和系统日志。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

reports

字符串

使用预定义模板为网络的各个方面生成报告。

为恶意设备和 aWIPS 生成报告。

在“系统”>“设置”>“目标”中配置 Webhook。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

role_name

字符串

要管理的角色名称。

security

字符串

管理和控制对网络的安全访问。

默认值: "read"

group_based_policy

字符串

管理基于组的网络策略,该策略根据 Cisco 安全组标签强制实施分段和访问控制。

此角色包括端点分析。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

ip_based_access_control

字符串

管理基于 IP 的访问控制列表,该列表根据 IP 地址强制实施网络分段。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

security_advisories

字符串

扫描网络是否存在安全公告。查看并了解已发布的 Cisco 安全公告的影响。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

system

字符串

Cisco Catalyst Center 的集中管理,包括配置管理、网络连接、软件升级等。

默认值: "read"

machine_reasoning

字符串

配置对机器推理知识库的自动更新,以快速识别安全漏洞并改进自动化问题分析。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

system_management

字符串

管理核心系统功能和连接设置、用户角色和外部身份验证。

此角色包括 Cisco 凭据、完整性验证、设备 EULA、HA、集成设置、灾难恢复、调试日志、遥测收集、系统 EULA、IPAM、vManage 服务器、Cisco AI 分析、备份和恢复以及数据平台。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

utilities

字符串

用于最常用的故障排除工具和服务的便捷资源。

audit_log

字符串

通过 UI 或 API 接口对网络设备或 Cisco Catalyst Center 所做更改的详细日志。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

event_viewer

字符串

查看网络设备和客户端事件以进行故障排除。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

network_reasoner

字符串

允许 Cisco 支持团队远程排除由 Cisco Catalyst Center 管理的网络设备的故障。

使 Cisco 技术支持中心 (TAC) 的工程师能够远程连接到客户的 Cisco Catalyst Center 设置以进行故障排除。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

overall

字符串

为所有子参数提供相同的选择。

选择

  • "deny"(拒绝)

  • "read"

  • "write"(写入)

remote_device_support

字符串

允许 Cisco 支持团队远程排除由 Cisco Catalyst Center 管理的任何网络设备的故障。

选择

  • "deny" ← (默认)

  • "read"

  • "write"(写入)

scheduler

字符串

运行、计划和监控网络任务和活动,例如部署策略、配置或升级网络,并与其他后端服务集成。

选择

  • "deny"(拒绝)

  • "read"

  • "write" ← (默认)

字符串

在 Cisco Catalyst Center 中搜索各种对象,包括站点、网络设备、客户端、应用程序、策略、设置、标签、菜单项等。

选择

  • "deny"(拒绝)

  • "read"(读取) ← (默认)

  • "write"(写入)

user_details

列表 / 元素=字典

管理用户帐户的配置详细信息。

email

字符串

用户的电子邮件地址(例如,syedkhadeerahmed@example.com)。

如果忘记了“用户名”,则用于检索用户数据。

如果忘记了“用户名”,则删除用户时需要此项。

first_name

字符串

用户的名字。

last_name

字符串

用户的姓氏。

password

字符串

用户帐户的密码,必须符合指定的复杂性要求。

必须包含至少一个特殊字符、一个大写字母、一个小写字母,且最小长度为 8 个字符。

创建新用户帐户时需要此项。

password_update

字符串

指示是否应更新密码。

设置为 `true` 以触发密码更新。

如果需要更改密码,则必须明确设置为 `true` 才能启动更新过程。

如果不需要更新,则省略此参数或将其设置为 `false`。

请确保正确设置此参数,以避免不必要的更新或错误。

role_list

list / elements=string

要分配给用户的角色名称列表。如果未指定角色,则默认角色将为“OBSERVER-ROLE”。

角色名称必须与 Cisco Catalyst Center 中定义的名称匹配。

Cisco Catalyst Center 中存在的默认角色为“SUPER-ADMIN-ROLE”、“NETWORK-ADMIN-ROLE”、“OBSERVER-ROLE”。

SUPER-ADMIN-ROLE 授予完全访问权限,包括用户管理。

NETWORK-ADMIN-ROLE 授予完全网络访问权限,但不包括系统功能。

OBSERVER-ROLE 授予只读访问权限,不包括配置或控制功能。

username

字符串

与用户帐户关联的“用户名”。

用户创建、更新和删除操作时需要此项。

config_verify

boolean

设置为 True 以在应用 playbook 配置后验证 Cisco Catalyst Center。

选择

  • false ← (默认)

  • true

dnac_api_task_timeout

integer

定义 API 调用以检索任务详细信息的超时时间(以秒为单位)。如果在此期限内未收到任务详细信息,则该过程将结束,并且将记录超时通知。

默认值: 1200

dnac_debug

boolean

指示是否在 Cisco Catalyst Center SDK 中启用了调试。

选择

  • false ← (默认)

  • true

dnac_host

string / required

Cisco Catalyst Center 的主机名。

dnac_log

boolean

用于启用/禁用 playbook 执行日志记录的标志。

当为 true 并且提供了 dnac_log_file_path 时,- 在执行位置使用指定名称创建日志文件。

当为 true 并且未提供 dnac_log_file_path 时,- 在执行位置使用名称“dnac.log”创建日志文件。

当为 false 时,- 禁用日志记录。

如果日志文件不存在,- 则根据“dnac_log_append”标志以追加或写入模式创建日志文件。

如果日志文件存在,- 则根据“dnac_log_append”标志覆盖或追加日志文件。

选择

  • false ← (默认)

  • true

dnac_log_append

boolean

确定文件的模式。设置为 True 表示“追加”模式。设置为 False 表示“写入”模式。

选择

  • false

  • true ← (默认)

dnac_log_file_path

字符串

控制日志记录。如果 dnac_log 为 True,则记录日志。

如果未指定路径,- 当“dnac_log_append”为 True 时,会在当前的 Ansible 目录中生成“dnac.log”;日志将追加。- 当“dnac_log_append”为 False 时,将生成“dnac.log”;日志将被覆盖。

如果指定了路径,- 当“dnac_log_append”为 True 时,该文件将以追加模式打开。- 当“dnac_log_append”为 False 时,该文件将以写入 (w) 模式打开。- 在共享文件场景中,如果没有追加模式,则每次模块执行后都会覆盖内容。- 对于共享日志文件,请将第一个模块的追加设置为 False(以覆盖);对于后续模块,请将追加设置为 True。

默认值: "dnac.log"

dnac_log_level

字符串

设置日志级别的阈值。将记录级别等于或高于此级别的消息。级别按严重性顺序排列 [CRITICAL, ERROR, WARNING, INFO, DEBUG]。

CRITICAL 指示会停止程序的严重错误。仅显示 CRITICAL 消息。

ERROR 表示阻止功能的问题。显示 ERROR 和 CRITICAL 消息。

WARNING 表示潜在的未来问题。显示 WARNING、ERROR 和 CRITICAL 消息。

INFO 跟踪正常操作。显示 INFO、WARNING、ERROR 和 CRITICAL 消息。

DEBUG 提供详细的诊断信息。显示所有日志消息。

默认值: "WARNING"

dnac_password

字符串

用于在 Cisco Catalyst Center 进行身份验证的密码。

dnac_port

字符串

指定与 Cisco Catalyst Center 关联的端口号。

默认值: "443"

dnac_task_poll_interval

integer

指定连续调用 API 以检索任务详细信息的时间间隔(以秒为单位)。

默认值: 2

dnac_username

别名:user

字符串

用于在 Cisco Catalyst Center 进行身份验证的用户名。

默认值: "admin"

dnac_verify

boolean

用于启用或禁用 SSL 证书验证的标志。

选择

  • false

  • true ← (默认)

dnac_version

字符串

指定 SDK 应使用的 Cisco Catalyst Center 的版本。

默认值: "2.2.3.3"

state

字符串

模块完成后 Cisco Catalyst Center 的状态。

选择

  • "merged" ← (默认)

  • "deleted"

validate_response_schema

boolean

Cisco Catalyst Center SDK 的标志,用于启用针对 JSON 模式验证请求正文。

选择

  • false

  • true ← (默认)

注释

注意

  • 使用的 SDK 方法 - user_and_roles.UserandRoles.get_user_api - user_and_roles.UserandRoles.add_user_api - user_and_roles.UserandRoles.update_user_api - user_and_roles.UserandRoles.delete_user_api

  • 使用的路径 - get /dna/system/api/v1/user - post /dna/system/api/v1/user - put /dna/system/api/v1/user - delete /dna/system/api/v1/user/{userId}

  • 不支持 check_mode

  • 该插件在控制节点上运行,不使用任何 ansible 连接插件,而是使用 Cisco Catalyst Center SDK 中的嵌入式连接管理器

  • 以 dnac_ 开头的参数由 Cisco Catalyst Center Python SDK 用于建立连接

示例

---
- name: Create a user
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: merged
    config:
      user_details:
        - username: "ajithandrewj"
          first_name: "ajith"
          last_name: "andrew"
          email: "[email protected]"
          password: "Example@0101"
          role_list: ["SUPER-ADMIN-ROLE"]

- name: Update a user for first name, last name, email, and role list
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: merged
    config:
      user_details:
        - username: "ajithandrewj"
          first_name: "ajith"
          last_name: "andrew"
          email: "[email protected]"
          role_list: ["SUPER-ADMIN-ROLE"]

- name: Update a user for role list
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: merged
    config:
      user_details:
        - username: "ajithandrewj"
          role_list: ["NETWORK-ADMIN-ROLE"]

- name: Update the user password
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: merged
    config:
      user_details:
        - username: "ajithandrewj"
          password: "Example@010101"
          password_update: True

- name: Delete a user using username or email address
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: deleted
    config:
      user_details:
        username: "ajithandrewj"

- name: Create a role with all params
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    config:
      role_details:
        - role_name: "role_name"
          description: "role_description"
          assurance:
            - monitoring_and_troubleshooting: "write"
              monitoring_settings: "read"
              troubleshooting_tools: "deny"
          network_analytics:
            - data_access: "write"
          network_design:
            - advanced_network_settings: "deny"
              image_repository: "deny"
              network_hierarchy: "deny"
              network_profiles: "write"
              network_settings: "write"
              virtual_network: "read"
          network_provision:
            - compliance: "deny"
              eox: "read"
              image_update: "write"
              inventory_management:
                - device_configuration: "write"
                  discovery: "deny"
                  network_device: "read"
                  port_management: "write"
                  topology: "write"
              license: "write"
              network_telemetry: "write"
              pnp: "deny"
              provision: "read"
          network_services:
            - app_hosting: "deny"
              bonjour: "write"
              stealthwatch: "read"
              umbrella: "deny"
          platform:
            - apis: "write"
              bundles: "write"
              events: "write"
              reports: "read"
          security:
            - group_based_policy: "read"
              ip_based_access_control: "write"
              security_advisories: "write"
          system:
            - machine_reasoning: "read"
              system_management: "write"
          utilities:
            - audit_log: "read"
              event_viewer: "deny"
              network_reasoner: "write"
              remote_device_support: "read"
              scheduler: "read"
              search: "write"

- name: Create a role for assurance
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    config:
      role_details:
        - role_name: "role_name"
          description: "role_description"
          assurance:
            - overall: "write"
              monitoring_and_troubleshooting: "read"

- name: Create a role for network provision
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    config:
      role_details:
        - role_name: "role_name"
          description: "role_description"
          network_provision:
            - compliance: "deny"
              image_update: "write"
              inventory_management:
                - overall: "read"
                  device_configuration: "write"
              license: "write"
              network_telemetry: "write"
              pnp: "deny"
              provision: "read"

- name: Update a role for assurance and platform
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    config:
      role_details:
        - role_name: "role_name"
          assurance:
            - overall: "deny"
          platform:
            - apis: "write"
              bundles: "write"
              events: "write"
              reports: "read"

- name: Delete a role
  cisco.dnac.user_role_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_port: "{{ dnac_port }}"
    dnac_version: "{{ dnac_version }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: DEBUG
    config_verify: True
    dnac_api_task_timeout: 1000
    dnac_task_poll_interval: 1
    state: deleted
    config:
      role_details:
        - rolename: "role_name"

返回值

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

描述

response_1

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string", "userId": "string"}}

response_10

字典

一个字典,其中包含 API 执行的详细信息和错误信息。

返回值: 总是

示例: {"response": {"msg": "创建、更新或删除角色时出错。"}}

response_11

字典

一个字典,指示在删除操作期间未找到角色。

返回值: 总是

示例: {"response": {"msg": "未找到角色。"}}

response_2

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string"}}

response_3

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string"}}

response_4

字典

一个字典,其中包含现有用户详细信息,指示不需要更新。

返回值: 总是

示例: {"msg": "用户已存在,无需更新。", "response": {"type": "string", "user": {"email": "[email protected]", "first_name": "John", "last_name": "Doe", "role_list": ["NETWORK-ADMIN-ROLE"], "username": "johndoe"}, "userId": "string"}}

response_5

字典

一个字典,其中包含 API 执行的详细信息和错误信息。

返回值: 总是

示例: {"response": {"msg": "创建、更新或删除用户时出错。"}}

response_6

字典

一个字典,指示在删除操作期间未找到用户。

返回值: 总是

示例: {"response": {"msg": "未找到用户。"}}

response_7

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string", "roleid": "string"}}

response_8

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string", "roleId": "string"}}

response_9

字典

一个字典,其中包含来自 Cisco Catalyst Center 的 API 执行详细信息。

返回值: 总是

示例: {"response": {"message": "string"}}

作者

  • Ajith Andrew J (@ajithandrewj)

  • Syed Khadeer Ahmed (@syed-khadeerahmed)

  • Rangaprabhu Deenadayalu (@rangaprabha-d)

  • Madhan Sankaranarayanan (@madhansansel)