cisco.mso.ndo_macsec_policy module – Manage MACsec Policies on Cisco Nexus Dashboard Orchestrator (NDO).
Note
This module is part of the cisco.mso collection (version 2.10.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install cisco.mso
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: cisco.mso.ndo_macsec_policy
.
Synopsis
Manage MACsec Policies on Cisco Nexus Dashboard Orchestrator (NDO).
This module is only supported on ND v3.1 (NDO v4.3) and later.
Requirements
The below requirements are needed on the host that executes this module.
Multi Site Orchestrator v2.1 or newer
Parameters
Parameter |
Comments |
---|---|
The administrative state of the MACsec Policy. (Enables or disables the policy) The default value is Choices:
|
|
The cipher suite to be used for encryption. The default value is Choices:
|
|
The confidentiality offset for the MACsec Policy. The default value is 0. This parameter is only available for type Choices:
|
|
The description of the MACsec Policy. |
|
IP Address or hostname of the ACI Multi Site Orchestrator host. If the value is not specified in the task, the value of environment variable |
|
The type of the interfaces this policy will be applied to. Choices:
|
|
The key server priority for the MACsec Policy. The value must be between 0 and 255. The default value 16 for type This parameter is only available for type |
|
The login domain name to use for authentication. The default value is Local. If the value is not specified in the task, the value of environment variable When using a HTTPAPI connection plugin the inventory variable |
|
List of the MACsec Keys. Providing an empty list will remove the The old |
|
The end time for the MACsec Key. The date time format - YYYY-MM-DD HH:MM:SS or ‘infinite’ The default value is |
|
The name of the MACsec Key. Key Name has to be Hex chars [0-9a-fA-F] |
|
The Pre-Shared Key (PSK) for the MACsec Key. PSK has to be 64 chars long if cipher suite is PSK has to be 32 chars long if cipher suite is PSK has to be Hex chars [0-9a-fA-F] |
|
The start time for the MACsec Key. The date time format - YYYY-MM-DD HH:MM:SS or ‘now’ The start time for each key_name should be unique. The default value is |
|
The name of the MACsec Policy. |
|
The UUID of the MACsec Policy. This parameter is required when the |
|
Influence the output of this MSO module.
If the value is not specified in the task, the value of environment variable Choices:
|
|
The password to use for authentication. If the value is not specified in the task, the value of environment variables |
|
Port number to be used for the REST connection. The default value depends on parameter `use_ssl`. If the value is not specified in the task, the value of environment variable |
|
The expiry time for the Security Association Key (SAK) for the MACsec Policy. The value must be 0 or between 60 and 2592000. The default value is 0. |
|
The security policy to allow traffic on the link for the MACsec Policy. The default value is Choices:
|
|
Use Use Use Choices:
|
|
The name of the template. The template must be a fabric policy template. |
|
The socket level timeout in seconds. The default value is 30 seconds. If the value is not specified in the task, the value of environment variable |
|
If If the value is not specified in the task, the value of environment variable The default is Choices:
|
|
If If the value is not specified in the task, the value of environment variable When using a HTTPAPI connection plugin the inventory variable The default is Choices:
|
|
The username to use for authentication. If the value is not specified in the task, the value of environment variables |
|
If This should only set to If the value is not specified in the task, the value of environment variable The default is Choices:
|
|
The window size defines the maximum number of frames that can be received out of order before a replay attack is detected. The value must be between 0 and 4294967295. The default value is 0 for type |
Notes
Note
This module was written to support Multi Site Orchestrator v2.1 or newer. Some or all functionality may not work on earlier versions.
Examples
- name: Create a new MACsec Policy of interface_type fabric
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy: ansible_test_macsec_policy
description: "Ansible Test MACsec Policy"
state: present
- name: Create a new MACsec Policy of interface_type access
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy: ansible_test_macsec_policy
description: "Ansible Test MACsec Policy"
macsec_keys:
- key_name: ansible_test_key
psk: 'AA111111111111111111111111111111111111111111111111111111111111aa'
start_time: '2029-12-11 11:12:13'
end_time: 'infinite'
state: present
- name: Query a MACsec Policy with macsec_policy name
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy: ansible_test_macsec_policy
state: query
register: query_one
- name: Query all MACsec Policies
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
state: query
register: query_all
- name: Query a MACsec Policy with macsec_policy UUID
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy_uuid: ansible_test_macsec_policy_uuid
state: query
register: query_uuid
- name: Delete a MACsec Policy with name
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy: ansible_test_macsec_policy
state: absent
- name: Delete a MACsec Policy with UUID
cisco.mso.ndo_macsec_policy:
host: mso_host
username: admin
password: SomeSecretPassword
template: ansible_test_template
macsec_policy_uuid: ansible_test_macsec_policy_uuid
state: absent