community.general.hwc_vpc_security_group_rule 模块 – 在华为云中创建 Vpc/SecurityGroupRule 资源

注意

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

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

要安装它,请使用: ansible-galaxy collection install community.general。您需要更多要求才能使用此模块,请参阅 要求 获取详细信息。

要在 playbook 中使用它,请指定: community.general.hwc_vpc_security_group_rule

community.general 0.2.0 中的新增功能

概要

  • vpc 安全组管理。

要求

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

  • keystoneauth1 >= 3.6.0

参数

参数

注释

description

字符串

提供有关安全组规则的补充信息。该值是一个不超过 255 个字符的字符串,可以包含字母和数字。

direction

字符串 / 必填

指定访问控制的方向。该值可以是 egress 或 ingress。

domain

字符串 / 必填

要作用域到的域的名称(Identity v3)。

目前仅支持域名,不支持域 ID。

ethertype

字符串

指定 IP 协议版本。该值可以是 IPv4 或 IPv6。如果未设置此参数,则默认使用 IPv4。

id

字符串

要管理的资源的 ID。

identity_endpoint

字符串 / 必填

身份验证 URL。

password

字符串 / 必填

用于登录的密码。

port_range_max

整数

指定结束端口号。该值的范围为 1 到 65535。如果协议不是 icmp,则该值不能小于 port_range_min 值。空值表示所有端口。

port_range_min

整数

指定起始端口号。该值的范围为 1 到 65535。该值不能大于 port_range_max 值。空值表示所有端口。

project

字符串 / 必填

租户(Identity v2)或项目(Identity v3)的名称。

目前仅支持项目名称,不支持项目 ID。

protocol

字符串

指定协议类型。该值可以是 icmp、tcp 或 udp。如果参数留空,则安全组支持所有协议。

region

字符串

项目所属的区域。

remote_group_id

字符串

指定对等安全组的 ID。该值与参数 remote_ip_prefix 互斥。

remote_ip_prefix

字符串

指定远程 IP 地址。如果访问控制方向设置为 egress,则此参数指定源 IP 地址。如果访问控制方向设置为 ingress,则此参数指定目标 IP 地址。该值可以是 CIDR 格式或 IP 地址。该参数与参数 remote_group_id 互斥。

security_group_id

字符串 / 必填

指定安全组规则 ID,该 ID 唯一标识安全组规则。

state

字符串

给定对象是否应存在于华为云中。

选项

  • "present" ← (默认)

  • "absent"

user

字符串 / 必填

用于登录的用户名。

目前仅支持用户名,不支持用户 ID。

属性

属性

支持

描述

check_mode

支持:完全

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

diff_mode

支持:

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

注释

注意

  • 如果提供了 id 选项,则在选择安全组规则时,它将优先于 security_group_id

  • security_group_id 用于选择安全组规则。如果存在多个具有此选项的安全组规则,则执行将中止。

  • 不支持更新参数。如果其中一个选项被更改,该模块将创建一个新资源。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_IDENTITY_ENDPOINT 环境变量设置 identity_endpoint。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_USER 环境变量设置用户。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_PASSWORD 环境变量设置密码。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_DOMAIN 环境变量设置域。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_PROJECT 环境变量设置项目。

  • 对于身份验证,您可以使用 ANSIBLE_HWC_REGION 环境变量设置区域。

  • 只有在 playbook 值未设置的情况下才会使用环境变量值。

示例

# create a security group rule
- name: Create a security group
  hwc_vpc_security_group:
    name: "ansible_network_security_group_test"
  register: sg
- name: Create a security group rule
  community.general.hwc_vpc_security_group_rule:
    direction: "ingress"
    protocol: "tcp"
    ethertype: "IPv4"
    port_range_max: 22
    security_group_id: "{{ sg.id }}"
    port_range_min: 22
    remote_ip_prefix: "0.0.0.0/0"

返回值

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

描述

description

字符串

提供有关安全组规则的补充信息。该值是一个不超过 255 个字符的字符串,可以包含字母和数字。

返回: 成功

direction

字符串

指定访问控制的方向。该值可以是 egress 或 ingress。

返回: 成功

ethertype

字符串

指定 IP 协议版本。该值可以是 IPv4 或 IPv6。如果未设置此参数,则默认使用 IPv4。

返回: 成功

port_range_max

整数

指定结束端口号。该值的范围为 1 到 65535。如果协议不是 icmp,则该值不能小于 port_range_min 值。空值表示所有端口。

返回: 成功

port_range_min

整数

指定起始端口号。该值的范围为 1 到 65535。该值不能大于 port_range_max 值。空值表示所有端口。

返回: 成功

protocol

字符串

指定协议类型。该值可以是 icmp、tcp 或 udp。如果参数留空,则安全组支持所有协议。

返回: 成功

remote_group_id

字符串

指定对等安全组的 ID。该值与参数 remote_ip_prefix 互斥。

返回: 成功

remote_ip_prefix

字符串

指定远程 IP 地址。如果访问控制方向设置为 egress,则此参数指定源 IP 地址。如果访问控制方向设置为 ingress,则此参数指定目标 IP 地址。该值可以是 CIDR 格式或 IP 地址。该参数与参数 remote_group_id 互斥。

返回: 成功

security_group_id

字符串

指定安全组规则 ID,该 ID 唯一标识安全组规则。

返回: 成功

作者

  • 华为公司 (@huaweicloud)