fortinet.fortimanager.fmgr_pkg_firewall_shapingpolicy 模块 – 配置整形策略。

注意

此模块是 fortinet.fortimanager 集合 (版本 2.8.2) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install fortinet.fortimanager

要在 playbook 中使用它,请指定:fortinet.fortimanager.fmgr_pkg_firewall_shapingpolicy

fortinet.fortimanager 2.0.0 中的新增功能

概要

  • 此模块能够配置 FortiManager 设备。

  • 示例包括所有需要在使用前调整为数据源的参数和值。

参数

参数

注释

access_token

字符串

无需使用用户名和密码即可访问 FortiManager 的令牌。

adom

字符串 / 必需

请求 URL 中的参数 (adom)。

bypass_validation

布尔值

仅当模块模式与 FortiManager API 结构不同时设置为 True,模块将继续执行而无需验证参数。

选项

  • false ← (默认)

  • true

enable_log

布尔值

启用/禁用任务的日志记录。

选项

  • false ← (默认)

  • true

forticloud_access_token

字符串

使用 forticloud API 访问令牌对 Ansible 客户端进行身份验证。

pkg

字符串 / 必需

请求 URL 中的参数 (pkg)。

pkg_firewall_shapingpolicy

字典

设置的顶级参数。

app_category

别名:app-category

任意

(列表或字符串) 此整形器应用应用控制流量整形的一个或多个应用程序类别的 ID。

app_group

别名:app-group

任意

(列表或字符串) 一个或多个应用程序组名称。

application

任意

(列表) 此整形器应用应用控制流量整形的一个或多个应用程序的 ID。

class_id

别名:class-id

任意

(整数或字符串) 流量类别 ID。

comment

字符串

注释。

cos

字符串

VLAN CoS 位模式。

cos_mask

别名:cos-mask

字符串

VLAN CoS 已评估位。

diffserv_forward

别名:diffserv-forward

字符串

启用将数据包 DiffServ 值更改为指定的 diffservcode-forward 值。

选项

  • "disable"

  • "enable"

diffserv_reverse

别名:diffserv-reverse

字符串

启用更改数据包的反向。

选项

  • "disable"

  • "enable"

diffservcode_forward

别名:diffservcode-forward

字符串

将数据包 DiffServ 更改为此值。

diffservcode_rev

别名:diffservcode-rev

字符串

更改数据包的反向。

dstaddr

任意

(列表或字符串) IPv4 目的地址和地址组名称。

dstaddr6

任意

(列表或字符串) IPv6 目的地址和地址组名称。

dstintf

任意

(列表或字符串) 一个或多个出站。

groups

任意

(列表或字符串) 将此流量整形策略应用于已通过 FortiGate 进行身份验证的用户组。

id

整数 / 必需

整形策略 ID。

internet_service

别名:internet-service

字符串

启用/禁用为此策略使用互联网服务。

选项

  • "disable"

  • "enable"

internet_service_custom

别名:internet-service-custom

任意

(列表或字符串) 自定义互联网服务名称。

internet_service_custom_group

别名:internet-service-custom-group

任意

(列表或字符串) 自定义互联网服务组名称。

internet_service_group

别名:internet-service-group

任意

(列表或字符串) 互联网服务组名称。

internet_service_id

别名:internet-service-id

任意

(列表或字符串) 互联网服务 ID。

internet_service_name

别名:internet-service-name

任意

(列表或字符串) 互联网服务 ID。

internet_service_src

别名:internet-service-src

字符串

启用/禁用为此策略在源中使用互联网服务。

选项

  • "disable"

  • "enable"

internet_service_src_custom

别名:internet-service-src-custom

任意

(列表或字符串) 自定义互联网服务源名称。

internet_service_src_custom_group

别名:internet-service-src-custom-group

任意

(列表或字符串) 自定义互联网服务源组名称。

internet_service_src_group

别名:internet-service-src-group

任意

(列表或字符串) 互联网服务源组名称。

internet_service_src_id

别名:internet-service-src-id

任意

(列表或字符串) Internet 服务源 ID。

internet_service_src_name

别名: internet-service-src-name

任意

(列表或字符串) Internet 服务源名称。

ip_version

别名: ip-version

字符串

将此流量整形策略应用于 IPv4 或 IPv6 流量。

选项

  • "4"

  • "6"

name

字符串

整形策略名称。

per_ip_shaper

别名: per-ip-shaper

字符串

要与此策略一起应用的每个 IP 流量整形器。

schedule

字符串

调度名称。

service

任意

(列表或字符串) 服务和服务组名称。

srcaddr

任意

(列表或字符串) IPv4 源地址和地址组名称。

srcaddr6

任意

(列表或字符串) IPv6 源地址和地址组名称。

srcintf

任意

(列表或字符串) 一个或多个传入

status

字符串

启用/禁用此流量整形策略。

选项

  • "disable"

  • "enable"

tos

字符串

ToS

tos_mask

别名: tos-mask

字符串

非零位用于比较,而零位被忽略。

tos_negate

别名: tos-negate

字符串

启用否定的 TOS 匹配。

选项

  • "disable"

  • "enable"

traffic_shaper

别名: traffic-shaper

字符串

要应用于防火墙策略转发流量的流量整形器。

traffic_shaper_reverse

别名: traffic-shaper-reverse

字符串

要应用于防火墙策略接收的响应流量的流量整形器。

traffic_type

别名: traffic-type

字符串

流量类型。

选项

  • "forwarding"

  • "local-in"

  • "local-out"

url_category

别名: url-category

任意

(列表或字符串) 此整形器应用流量整形的一个或多个 FortiGuard Web 过滤类别 ID。

users

任意

(列表或字符串) 将此流量整形策略应用于已通过 FortiGate 身份验证的单个用户。

uuid

字符串

通用唯一标识符

proposed_method

字符串

底层 Json RPC 请求的覆盖方法。

选项

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

将覆盖失败条件的 rc 代码列表。

rc_succeeded

列表 / 元素=整数

将覆盖成功条件的 rc 代码列表。

state

字符串 / 必需

创建、更新或删除对象的指令。

选项

  • "present"

  • "absent"

workspace_locking_adom

字符串

在工作区模式下运行 FortiManager 的 adom 锁定,值可以是 global 和其他值,包括 root。

workspace_locking_timeout

整数

等待其他用户释放工作区锁的最大时间(秒)。

默认值: 300

备注

注意

  • 从 2.4.0 版本开始,所有输入参数都使用下划线命名约定 (snake_case)。请将诸如“var-name”之类的参数更改为“var_name”。旧的参数名称仍然可用,但您会收到弃用警告。您可以在 ansible.cfg 中设置 deprecation_warnings=False 来忽略此警告。

  • 此 FortiManager 模块支持在工作区锁定模式下运行,顶级参数 workspace_locking_adom 和 workspace_locking_timeout 有助于完成此工作。

  • 要创建或更新对象,请使用 state present 指令。

  • 要删除对象,请使用 state absent 指令。

  • 通常,当返回非零 rc 时,运行一个模块可能会失败。您还可以使用参数 rc_failed 和 rc_succeeded 覆盖失败或成功的条件。

示例

- name: Example playbook
  hosts: fortimanagers
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Configure shaping policies.
      fortinet.fortimanager.fmgr_pkg_firewall_shapingpolicy:
        bypass_validation: false
        adom: ansible
        pkg: ansible # package name
        state: present
        pkg_firewall_shapingpolicy:
          dstaddr: all
          dstintf: any
          id: 1
          ip-version: 4 # <value in [4, 6]>
          schedule: always
          service: ALL
          srcaddr: all
          status: disable

- name: Gathering fortimanager facts
  hosts: fortimanagers
  gather_facts: false
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Retrieve all the shaping policies
      fortinet.fortimanager.fmgr_fact:
        facts:
          selector: "pkg_firewall_shapingpolicy"
          params:
            adom: "ansible"
            pkg: "ansible" # package name
            shaping-policy: "your_value"

返回值

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

描述

meta

字典

请求的结果。

返回: 始终

request_url

字符串

请求的完整 URL。

返回: 始终

示例: "/sys/login/user"

response_code

整数

api 请求的状态。

返回: 始终

示例: 0

response_data

列表 / 元素=字符串

api 响应。

返回: 始终

response_message

字符串

api 响应的描述性消息。

返回: 始终

示例: "OK."

system_information

字典

目标系统的信息。

返回: 始终

rc

整数

请求的状态。

返回: 始终

示例: 0

version_check_warning

列表 / 元素=字符串

如果剧本中使用的参数不受当前 FortiManager 版本支持,则会发出警告。

返回: 复杂类型

作者

  • 杜欣伟 (@dux-fortinet)

  • 李兴 (@lix-fortinet)

  • 薛杰 (@JieX19)

  • 郑麟 (@chillancezen)

  • 沈方 (@fshen01)

  • 陆洪斌 (@fgtdev-hblu)