community.general.clc_firewall_policy 模块 – 创建/删除/更新防火墙策略

注意

此模块是 community.general 集合(版本 10.1.0)的一部分。

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

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

要在 Playbook 中使用它,请指定: community.general.clc_firewall_policy

概要

  • 在 CenturyLink Cloud 上创建、删除或更新防火墙策略

要求

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

  • python = 2.7

  • requests >= 2.5.0

  • clc-sdk

参数

参数

注释

destination

列表 / 元素=字符串

终止防火墙上的流量的目标地址列表。 当状态为“present”时,这是必需的

destination_account_alias

字符串

目标帐户的 CLC 别名

enabled

字符串

是否启用或禁用防火墙策略

选项

  • "True" ← (默认)

  • "False"

firewall_policy_id

字符串

防火墙策略的 ID。 这是更新或删除现有防火墙策略所必需的

location

字符串 / 必需

防火墙策略的目标数据中心

ports

列表 / 元素=字符串

与策略关联的端口列表。 TCP 和 UDP 可以接受单个端口或端口范围。

示例: ['any', 'icmp', 'TCP/123', 'UDP/123', 'TCP/123-456', 'UDP/123-456']

source

列表 / 元素=字符串

始发防火墙上的流量的源地址列表。 当状态为“present”时,这是必需的

source_account_alias

字符串 / 必需

源帐户的 CLC 别名

state

字符串

是否创建或删除防火墙策略

选项

  • "present" ← (默认)

  • "absent"

wait

字符串

是否在返回之前等待配置任务完成。

默认值: "True"

属性

属性

支持

描述

check_mode

支持:完全

可以在 check_mode 中运行,并返回更改状态预测,而无需修改目标。

diff_mode

支持:

当处于 diff 模式时,将返回已更改的内容(或可能需要在 check_mode 中更改的内容)的详细信息。

备注

注意

  • 要使用此模块,需要设置以下环境变量,这允许访问 CenturyLink Cloud - CLC_V2_API_USERNAME,世纪互联云的帐户登录 ID - CLC_V2_API_PASSWORD,世纪互联云的帐户密码

  • 或者,该模块接受 API 令牌和帐户别名。 可以使用 CLC 帐户登录名和密码通过 HTTP API 调用生成 API 令牌,地址为 https://api.ctl.io/v2/authentication/login - CLC_V2_API_TOKEN,从 https://api.ctl.io/v2/authentication/login 生成的 API 令牌 - CLC_ACCT_ALIAS,与世纪互联云关联的帐户别名

  • 用户可以设置 CLC_V2_API_URL 以指定指向不同 CLC 环境的端点。

示例

---
- name: Create Firewall Policy
  hosts: localhost
  gather_facts: false
  connection: local
  tasks:
    - name: Create / Verify an Firewall Policy at CenturyLink Cloud
      clc_firewall:
        source_account_alias: WFAD
        location: VA1
        state: present
        source: 10.128.216.0/24
        destination: 10.128.216.0/24
        ports: Any
        destination_account_alias: WFAD

- name: Delete Firewall Policy
  hosts: localhost
  gather_facts: false
  connection: local
  tasks:
    - name: Delete an Firewall Policy at CenturyLink Cloud
      clc_firewall:
        source_account_alias: WFAD
        location: VA1
        state: absent
        firewall_policy_id: c62105233d7a4231bd2e91b9c791e43e1

返回值

通用返回值记录在此处,以下是此模块特有的字段

描述

firewall_policy

字典

防火墙策略信息

返回:成功

示例: {"destination": ["10.1.1.0/24", "10.2.2.0/24"], "destinationAccount": "wfad", "enabled": true, "id": "fc36f1bfd47242e488a9c44346438c05", "links": [{"href": "http://api.ctl.io/v2-experimental/firewallPolicies/wfad/uc1/fc36f1bfd47242e488a9c44346438c05", "rel": "self", "verbs": ["GET", "PUT", "DELETE"]}], "ports": ["any"], "source": ["10.1.1.0/24", "10.2.2.0/24"], "status": "active"}

firewall_policy_id

字符串

防火墙策略ID

返回:成功

示例: "fc36f1bfd47242e488a9c44346438c05"

作者

  • CLC Runner (@clc-runner)