# ce_acl_interface – Manages applying ACLs to interfaces on HUAWEI CloudEngine switches

New in version 2.4.

- Synopsis

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- Manages applying ACLs to interfaces on HUAWEI CloudEngine switches.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
acl_name - / required |  | ACL number or name. For a numbered rule group, the value ranging from 2000 to 4999. For a named rule group, the value is a string of 1 to 32 case-sensitive characters starting with a letter, spaces not supported.

direction
- / required

Choices:
- inbound
- outbound

Direction ACL to be applied in on the interface.

interface - / required |  | Interface name. Only support interface full name, such as "40GE2/0/1".

state
-

Choices:
- present ←
- absent

Determines whether the config should be present or not on the device.

## Notes

Note

- Recommended connection is `network_cli`.

- This module also works with `local` connections for legacy playbooks.

## Examples

    - name: CloudEngine acl interface test
      hosts: cloudengine
      connection: local
      gather_facts: no
      vars:
        cli:
          host: "{{ inventory_hostname }}"
          port: "{{ ansible_ssh_port }}"
          username: "{{ username }}"
          password: "{{ password }}"
          transport: cli

      tasks:

      - name: "Apply acl to interface"
        ce_acl_interface:
          state: present
          acl_name: 2000
          interface: 40GE1/0/1
          direction: outbound
          provider: "{{ cli }}"

      - name: "Undo acl from interface"
        ce_acl_interface:
          state: absent
          acl_name: 2000
          interface: 40GE1/0/1
          direction: outbound
          provider: "{{ cli }}"

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
changed boolean | always | check to see if a change was made on the device Sample: True
end_state dictionary | always | k/v pairs of aaa params after module execution Sample: {'acl interface': ['traffic-filter acl lb inbound', 'traffic-filter acl 2000 outbound']}
existing dictionary | always | k/v pairs of existing aaa server Sample: {'acl interface': 'traffic-filter acl lb inbound'}
proposed dictionary | always | k/v pairs of parameters passed into module Sample: {'acl_name': '2000', 'direction': 'outbound', 'interface': '40GE2/0/1', 'state': 'present'}
updates list | always | command sent to the device Sample: ['interface 40ge2/0/1', 'traffic-filter acl 2000 outbound']

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- wangdezhuang (@QijunPan)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.