cisco.dnac.device_credential_workflow_manager (6.13.3) — module

Resource module for Global Device Credentials and Assigning Credentials to sites.

| "added in version" 6.7.0 of cisco.dnac"

Authors: Muthu Rakesh (@MUTHU-RAKESH-27) Madhan Sankaranarayanan (@madhansansel)

Install collection

Install with ansible-galaxy collection install cisco.dnac:==6.13.3


Add to requirements.yml

  collections:
    - name: cisco.dnac
      version: 6.13.3

Description

Manage operations on Global Device Credentials and Assigning Credentials to sites.

API to create global device credentials.

API to update global device credentials.

API to delete global device credentials.

API to assign the device credential to the site.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
---
  - name: Create Credentials and assign it to a site.
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - global_credential_details:
        cli_credential:
        - description: string
          username: string
          password: string
          enable_password: string
        snmp_v2c_read:
        - description: string
          read_community: string
        snmp_v2c_write:
        - description: string
          write_community: string
        snmp_v3:
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
        https_read:
        - description: string
          username: string
          password: string
          port: 443
        https_write:
        - description: string
          username: string
          password: string
          port: 443
      assign_credentials_to_site:
        cli_credential:
          id: string
        snmp_v2c_read:
          id: string
        snmp_v2c_write:
          id: string
        snmp_v3:
          id: string
        https_read:
          id: string
        https_write:
           id: string
        site_name:
        - string
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Create Multiple Credentials.
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - global_credential_details:
        cli_credential:
        - description: string
          username: string
          password: string
          enable_password: string
        - description: string
          username: string
          password: string
          enable_password: string
        snmp_v2c_read:
        - description: string
          read_community: string
        - description: string
          read_community: string
        snmp_v2c_write:
        - description: string
          write_community: string
        - description: string
          write_community: string
        snmp_v3:
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
        https_read:
        - description: string
          username: string
          password: string
          port: 443
        - description: string
          username: string
          password: string
          port: 443
        https_write:
        - description: string
          username: string
          password: string
          port: 443
        - description: string
          username: string
          password: string
          port: 443
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update global device credentials using id
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - global_credential_details:
        cli_credential:
        - description: string
          username: string
          password: string
          enable_password: string
          id: string
        snmp_v2c_read:
        - description: string
          read_community: string
          id: string
        snmp_v2c_write:
        - description: string
          write_community: string
          id: string
        snmp_v3:
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
          id: string
        https_read:
        - description: string
          username: string
          password: string
          port: 443
          id: string
        https_write:
        - description: string
          username: string
          password: string
          port: 443
          id: string
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update multiple global device credentials using id
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - global_credential_details:
        cli_credential:
        - description: string
          username: string
          password: string
          enable_password: string
          id: string
        - description: string
          username: string
          password: string
          enable_password: string
          id: string
        snmp_v2c_read:
        - description: string
          read_community: string
          id: string
        - description: string
          read_community: string
          id: string
        snmp_v2c_write:
        - description: string
          write_community: string
          id: string
        - description: string
          write_community: string
          id: string
        snmp_v3:
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
          id: string
        - auth_password: string
          auth_type: SHA
          snmp_mode: AUTHPRIV
          privacy_password: string
          privacy_type: AES128
          username: string
          description: string
          id: string
        https_read:
        - description: string
          username: string
          password: string
          port: 443
          id: string
        - description: string
          username: string
          password: string
          port: 443
          id: string
        https_write:
        - description: string
          username: string
          password: string
          port: 443
          id: string
        - description: string
          username: string
          password: string
          port: 443
          id: string
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update global device credential name/description using old name and description.
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - global_credential_details:
        cli_credential:
        - description: string
          username: string
          password: string
          enable_password: string
          old_description: string
          old_username: string
        snmp_v2c_read:
        - description: string
          read_community: string
          old_description: string
        snmp_v2c_write:
        - description: string
          write_community: string
          old_description: string
        snmp_v3:
        - auth_password: string
          auth_type: string
          snmp_mode: string
          privacy_password: string
          privacy_type: string
          username: string
          description: string
        https_read:
        - description: string
          username: string
          password: string
          port: string
          old_description: string
          old_username: string
        https_write:
        - description: string
          username: string
          password: string
          port: string
          old_description: string
          old_username: string
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Assign Credentials to sites using old description and username.
    cisco.dnac.device_credential_workflow_manager:
    dnac_host: "{{ dnac_host }}"
    dnac_port: "{{ dnac_port }}"
    dnac_username: "{{ dnac_username }}"
    dnac_password: "{{ dnac_password }}"
    dnac_verify: "{{ dnac_verify }}"
    dnac_debug: "{{ dnac_debug }}"
    dnac_log: True
    dnac_log_level: "{{ dnac_log_level }}"
    state: merged
    config_verify: True
    config:
    - assign_credentials_to_site:
        cli_credential:
          description: string
          username: string
        snmp_v2c_read:
          description: string
        snmp_v2c_write:
          description: string
        snmp_v3:
          description: string
        https_read:
          description: string
          username: string
        https_write:
          description: string
          username: string
        site_name:
        - string
        - string

Inputs

    
state:
    choices:
    - merged
    - deleted
    default: merged
    description: The state of Cisco Catalyst Center after module completion.
    type: str

config:
    description:
    - List of details of global device credentials and site names.
    elements: dict
    required: true
    suboptions:
      assign_credentials_to_site:
        description: Assign Device Credentials to Site.
        suboptions:
          cli_credential:
            description: CLI Credential.
            suboptions:
              description:
                description: CLI Credential Description.
                type: str
              id:
                description: CLI Credential Id. Use (Description, Username) or Id.
                type: str
              username:
                description: CLI Credential Username.
                type: str
            type: dict
          https_read:
            description: HTTP(S) Read Credential
            suboptions:
              description:
                description: HTTP(S) Read Credential Description.
                type: str
              id:
                description: HTTP(S) Read Credential Id. Use (Description, Username) or
                  Id.
                type: str
              username:
                description: HTTP(S) Read Credential Username.
                type: str
            type: dict
          https_write:
            description: HTTP(S) Write Credential
            suboptions:
              description:
                description: HTTP(S) Write Credential Description.
                type: str
              id:
                description: HTTP(S) Write Credential Id. Use (Description, Username)
                  or Id.
                type: str
              username:
                description: HTTP(S) Write Credential Username.
                type: str
            type: dict
          site_name:
            description: Site Name to assign credential.
            elements: str
            type: list
          snmp_v2c_read:
            description: SNMPv2c Read Credential
            suboptions:
              description:
                description: SNMPv2c Read Credential Description.
                type: str
              id:
                description: SNMPv2c Read Credential Id. Use Description or Id.
                type: str
            type: dict
          snmp_v2c_write:
            description: SNMPv2c Write Credential
            suboptions:
              description:
                description: SNMPv2c Write Credential Description.
                type: str
              id:
                description: SNMPv2c Write Credential Id. Use Description or Id.
                type: str
            type: dict
          snmp_v3:
            description: snmp_v3 Credential
            suboptions:
              description:
                description: snmp_v3 Credential Description.
                type: str
              id:
                description: snmp_v3 Credential Id. Use Description or Id.
                type: str
            type: dict
        type: dict
      global_credential_details:
        description: Manages global device credentials
        suboptions:
          cli_credential:
            description: Global Credential V2's cliCredential.
            elements: dict
            suboptions:
              description:
                description: Description. Required for creating the credential.
                type: str
              enable_password:
                description:
                - cli_credential credential Enable Password.
                - Password cannot contain spaces or angle brackets (< >)
                type: str
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description/Username.
                type: str
              old_username:
                description: Old Username. Use this for updating the description/Username.
                type: str
              password:
                description:
                - cli_credential credential Password.
                - Required for creating/updating the credential.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
              username:
                description:
                - cli_credential credential Username.
                - Username cannot contain spaces or angle brackets (< >).
                type: str
            type: list
          https_read:
            description: Global Credential V2's httpsRead.
            elements: dict
            suboptions:
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              name:
                description: Name. Required for creating the credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description/Username.
                type: str
              old_username:
                description: Old Username. Use this for updating the description/Username.
                type: str
              password:
                description:
                - https_read credential Password.
                - Required for creating/updating the credential.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
              port:
                description: Port. Default port is 443.
                type: int
              username:
                description:
                - https_read credential Username.
                - Username cannot contain spaces or angle brackets (< >).
                type: str
            type: list
          https_write:
            description: Global Credential V2's httpsWrite.
            elements: dict
            suboptions:
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              name:
                description: Name. Required for creating the credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description/Username.
                type: str
              old_username:
                description: Old Username. Use this for updating the description/Username.
                type: str
              password:
                description:
                - https_write credential Password.
                - Required for creating/updating the credential.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
              port:
                description: Port. Default port is 443.
                type: int
              username:
                description:
                - https_write credential Username.
                - Username cannot contain spaces or angle brackets (< >).
                type: str
            type: list
          snmp_v2c_read:
            description: Global Credential V2's snmpV2cRead.
            elements: dict
            suboptions:
              description:
                description: Description. Required for creating the credential.
                type: str
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description.
                type: str
              read_community:
                description:
                - snmp_v2c_read Read Community.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
            type: list
          snmp_v2c_write:
            description: Global Credential V2's snmpV2cWrite.
            elements: dict
            suboptions:
              description:
                description: Description. Required for creating the credential.
                type: str
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description.
                type: str
              write_community:
                description:
                - snmp_v2c_write Write Community.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
            type: list
          snmp_v3:
            description: Global Credential V2's snmpV3.
            elements: dict
            suboptions:
              auth_password:
                description:
                - snmp_v3 Auth Password.
                - Password must contain minimum 8 characters.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
              auth_type:
                description: Auth Type. ["SHA", "MD5"].
                type: str
              description:
                description:
                - snmp_v3 Description.
                - Should be unique from other snmp_v3 credentials.
                type: str
              id:
                description: Credential Id. Use this for updating the device credential.
                type: str
              old_description:
                description: Old Description. Use this for updating the description.
                type: str
              privacy_password:
                description:
                - snmp_v3 Privacy Password.
                - Password must contain minimum 8 characters.
                - Password cannot contain spaces or angle brackets (< >).
                type: str
              privacy_type:
                description: Privacy Type. ["AES128", "AES192", "AES256"].
                type: str
              snmp_mode:
                description: Snmp Mode. ["AUTHPRIV", "AUTHNOPRIV", "NOAUTHNOPRIV"].
                type: str
              username:
                description:
                - snmp_v3 credential Username.
                - Username cannot contain spaces or angle brackets (< >).
                type: str
            type: list
        type: dict
    type: list

dnac_log:
    default: false
    description:
    - Flag to enable/disable playbook execution logging.
    - When true and dnac_log_file_path is provided, - Create the log file at the execution
      location with the specified name.
    - When true and dnac_log_file_path is not provided, - Create the log file at the execution
      location with the name 'dnac.log'.
    - When false, - Logging is disabled.
    - If the log file doesn't exist, - It is created in append or write mode based on
      the "dnac_log_append" flag.
    - If the log file exists, - It is overwritten or appended based on the "dnac_log_append"
      flag.
    type: bool

dnac_host:
    description:
    - The hostname of the Cisco Catalyst Center.
    required: true
    type: str

dnac_port:
    default: '443'
    description:
    - Specifies the port number associated with the Cisco Catalyst Center.
    type: str

dnac_debug:
    default: false
    description:
    - Indicates whether debugging is enabled in the Cisco Catalyst Center SDK.
    type: bool

dnac_verify:
    default: true
    description:
    - Flag to enable or disable SSL certificate verification.
    type: bool

dnac_version:
    default: 2.2.3.3
    description:
    - Specifies the version of the Cisco Catalyst Center that the SDK should use.
    type: str

config_verify:
    default: false
    description: Set to True to verify the Cisco Catalyst Center after applying the playbook
      config.
    type: bool

dnac_password:
    description:
    - The password for authentication at the Cisco Catalyst Center.
    type: str

dnac_username:
    aliases:
    - user
    default: admin
    description:
    - The username for authentication at the Cisco Catalyst Center.
    type: str

dnac_log_level:
    default: WARNING
    description:
    - Sets the threshold for log level. Messages with a level equal to or higher than
      this will be logged. Levels are listed in order of severity [CRITICAL, ERROR, WARNING,
      INFO, DEBUG].
    - CRITICAL indicates serious errors halting the program. Displays only CRITICAL messages.
    - ERROR indicates problems preventing a function. Displays ERROR and CRITICAL messages.
    - WARNING indicates potential future issues. Displays WARNING, ERROR, CRITICAL messages.
    - INFO tracks normal operation. Displays INFO, WARNING, ERROR, CRITICAL messages.
    - DEBUG provides detailed diagnostic info. Displays all log messages.
    type: str

dnac_log_append:
    default: true
    description: Determines the mode of the file. Set to True for 'append' mode. Set to
      False for 'write' mode.
    type: bool

dnac_log_file_path:
    default: dnac.log
    description:
    - Governs logging. Logs are recorded if dnac_log is True.
    - If path is not specified, - When 'dnac_log_append' is True, 'dnac.log' is generated
      in the current Ansible directory; logs are appended. - When 'dnac_log_append' is
      False, 'dnac.log' is generated; logs are overwritten.
    - If path is specified, - When 'dnac_log_append' is True, the file opens in append
      mode. - When 'dnac_log_append' is False, the file opens in write (w) mode. - In
      shared file scenarios, without append mode, content is overwritten after each module
      execution. - For a shared log file, set append to False for the 1st module (to overwrite);
      for subsequent modules, set append to True.
    type: str

dnac_api_task_timeout:
    default: 1200
    description: Defines the timeout in seconds for API calls to retrieve task details.
      If the task details are not received within this period, the process will end, and
      a timeout notification will be logged.
    type: int

dnac_task_poll_interval:
    default: 2
    description: Specifies the interval in seconds between successive calls to the API
      to retrieve task details.
    type: int

validate_response_schema:
    default: true
    description:
    - Flag for Cisco Catalyst Center SDK to enable the validation of request bodies against
      a JSON schema.
    type: bool

Outputs

dnac_response1:
  description: A dictionary or list with the response returned by the Cisco Catalyst
    Center Python SDK
  returned: always
  sample: "{\n  \"response\": {\n    \"taskId\": \"string\",\n    \"url\": \"string\"\
    \n  },\n  \"version\": \"string\"\n}\n"
  type: dict
dnac_response2:
  description: A dictionary or list with the response returned by the Cisco Catalyst
    Center Python SDK
  returned: always
  sample: "{\n  \"response\": {\n    \"taskId\": \"string\",\n    \"url\": \"string\"\
    \n  },\n  \"version\": \"string\"\n}\n"
  type: dict

See also