fortinet.fortimanager.fmgr_icap_profile 模块 – 配置 ICAP 配置文件。

注意

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

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

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

要在剧本中使用它,请指定:fortinet.fortimanager.fmgr_icap_profile

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 客户端。

icap_profile

字典

设置的顶层参数。

204_response

别名:204-response

字符串

启用/禁用允许来自 ICAP 服务器的 204 响应。

选项

  • "disable"

  • "enable"

204_size_limit

别名:204-size-limit

整数

ICAP 客户端要保存的 204 响应大小限制(以兆字节为单位)

chunk_encap

别名:chunk-encap

字符串

启用/禁用分块封装

选项

  • "disable"

  • "enable"

comment

字符串

注释。

extension_feature

别名:extension-feature

列表 / 元素=字符串

启用/禁用 ICAP 扩展功能。

选项

  • "scan-progress"

file_transfer

别名:file-transfer

列表 / 元素=字符串

配置文件传输协议,以将传输的文件作为 REQMOD 传递到 ICAP 服务器。

选项

  • "ssh"

  • "ftp"

file_transfer_failure

别名:file-transfer-failure

字符串

当处理文件传输时无法联系 ICAP 服务器时要采取的操作。

选项

  • "error"

  • "bypass"

file_transfer_path

别名:file-transfer-path

字符串

ICAP URI 的路径组件,用于标识文件传输处理服务。

file_transfer_server

别名:file-transfer-server

字符串

用于文件传输的 ICAP 服务器。

icap_block_log

别名:icap-block-log

字符串

发现感染时启用/禁用 UTM 日志

选项

  • "disable"

  • "enable"

icap_headers

别名:icap-headers

列表 / 元素=字典

Icap 标头。

base64_encoding

别名:base64-encoding

字符串

启用/禁用 HTTP 内容的 base64 编码的使用。

选项

  • "disable"

  • "enable"

content

字符串

HTTP 标头内容。

id

整数

HTTP 转发标头 ID。

name

字符串

HTTP 转发标头名称。

methods

列表 / 元素=字符串

将发送到 ICAP 服务器进行进一步处理的允许的 HTTP 方法。

选项

  • "delete"

  • "get"

  • "head"

  • "options"

  • "post"

  • "put"

  • "trace"

  • "other"

  • "connect"

name

字符串 / 必需

ICAP 配置文件名称。

preview

字符串

启用/禁用向 ICAP 服务器预览数据。

选项

  • "disable"

  • "enable"

preview_data_length

别名:preview-data-length

整数

要发送到 ICAP 服务器的预览数据长度。

replacemsg_group

别名:replacemsg-group

字符串

替换消息组。

request

字符串

启用/禁用是否将 HTTP 请求传递到 ICAP 服务器。

选项

  • "disable"

  • "enable"

request_failure

别名:request-failure

字符串

当处理 HTTP 请求时无法联系 ICAP 服务器时要采取的操作。

选项

  • "error"

  • "bypass"

request_path

别名:request-path

字符串

ICAP URI 的路径组件,用于标识 HTTP 请求处理服务。

request_server

别名:request-server

字符串

用于 HTTP 请求的 ICAP 服务器。

respmod_default_action

别名:respmod-default-action

字符串

对 ICAP 响应修改的默认操作

选项

  • "bypass"

  • "forward"

respmod_forward_rules

别名:respmod-forward-rules

列表 / 元素=字典

Respmod 转发规则。

action

字符串

要对 ICAP 服务器执行的操作。

选项

  • "bypass"

  • "forward"

header_group

别名:header-group

列表 / 元素=字典

标头组。

case_sensitivity

别名:case-sensitivity

字符串

匹配标头时启用/禁用区分大小写。

选项

  • "disable"

  • "enable"

header

字符串

HTTP 标头正则表达式。

header_name

别名:header-name

字符串

HTTP 标头。

id

整数

ID。

host

字符串

主机的地址对象。

http_resp_status_code

别名: http-resp-status-code

任意

(列表) HTTP 响应状态码。

name

字符串

地址名称。

response

字符串

启用/禁用是否将 HTTP 响应传递给 ICAP 服务器。

选项

  • "disable"

  • "enable"

response_failure

别名: response-failure

字符串

在处理 HTTP 响应时,如果无法联系 ICAP 服务器,则采取的操作。

选项

  • "error"

  • "bypass"

response_path

别名: response-path

字符串

ICAP URI 的路径组件,用于标识 HTTP 响应处理服务。

response_req_hdr

别名: response-req-hdr

字符串

启用/禁用为 ICAP 响应修改添加 req-hdr

选项

  • "disable"

  • "enable"

response_server

别名: response-server

字符串

用于 HTTP 响应的 ICAP 服务器。

scan_progress_interval

别名: scan-progress-interval

整数

扫描进度间隔值。

streaming_content_bypass

别名: streaming-content-bypass

字符串

启用/禁用绕过 ICAP 服务器以进行流媒体内容。

选项

  • "disable"

  • "enable"

timeout

整数

时间

proposed_method

字符串

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

选项

  • "update"

  • "set"

  • "add"

rc_failed

list / elements=integer

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

rc_succeeded

list / elements=integer

将覆盖成功条件的 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 (generated based on argument schema)
  hosts: fortimanagers
  connection: httpapi
  vars:
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_httpapi_port: 443
  tasks:
    - name: Configure ICAP profiles.
      fortinet.fortimanager.fmgr_icap_profile:
        # bypass_validation: false
        workspace_locking_adom: <value in [global, custom adom including root]>
        workspace_locking_timeout: 300
        # rc_succeeded: [0, -2, -3, ...]
        # rc_failed: [-2, -3, ...]
        adom: <your own value>
        state: present # <value in [present, absent]>
        icap_profile:
          methods:
            - "delete"
            - "get"
            - "head"
            - "options"
            - "post"
            - "put"
            - "trace"
            - "other"
            - "connect"
          name: <string>
          replacemsg_group: <string>
          request: <value in [disable, enable]>
          request_failure: <value in [error, bypass]>
          request_path: <string>
          request_server: <string>
          response: <value in [disable, enable]>
          response_failure: <value in [error, bypass]>
          response_path: <string>
          response_server: <string>
          streaming_content_bypass: <value in [disable, enable]>
          icap_headers:
            -
              base64_encoding: <value in [disable, enable]>
              content: <string>
              id: <integer>
              name: <string>
          preview: <value in [disable, enable]>
          preview_data_length: <integer>
          response_req_hdr: <value in [disable, enable]>
          respmod_default_action: <value in [bypass, forward]>
          respmod_forward_rules:
            -
              action: <value in [bypass, forward]>
              header_group:
                -
                  case_sensitivity: <value in [disable, enable]>
                  header: <string>
                  header_name: <string>
                  id: <integer>
              host: <string>
              http_resp_status_code: <list or integer>
              name: <string>
          204_response: <value in [disable, enable]>
          204_size_limit: <integer>
          chunk_encap: <value in [disable, enable]>
          extension_feature:
            - "scan-progress"
          file_transfer:
            - "ssh"
            - "ftp"
          file_transfer_failure: <value in [error, bypass]>
          file_transfer_path: <string>
          file_transfer_server: <string>
          icap_block_log: <value in [disable, enable]>
          scan_progress_interval: <integer>
          timeout: <integer>
          comment: <string>

返回值

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

描述

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

列表 / 元素=字符串

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

返回值: 复杂

作者

  • Xinwei Du (@dux-fortinet)

  • Xing Li (@lix-fortinet)

  • Jie Xue (@JieX19)

  • Link Zheng (@chillancezen)

  • Frank Shen (@fshen01)

  • Hongbin Lu (@fgtdev-hblu)