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

注意

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

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

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

要在 playbook 中使用它,请指定: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 响应。

选择

  • “禁用”

  • “启用”

204_size_limit

别名:204-size-limit

整数

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

chunk_encap

别名:chunk-encap

字符串

启用/禁用分块封装

选择

  • “禁用”

  • “启用”

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 日志

选择

  • “禁用”

  • “启用”

icap_headers

别名:icap-headers

列表 / 元素=字典

Icap 标头。

base64_encoding

别名:base64-encoding

字符串

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

选择

  • “禁用”

  • “启用”

content

字符串

HTTP 标头内容。

id

整数

HTTP 转发的标头 ID。

name

字符串

HTTP 转发的标头名称。

methods

列表 / 元素=字符串

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

选择

  • “delete”

  • “get”

  • “head”

  • “options”

  • “post”

  • “put”

  • “trace”

  • “other”

  • “connect”

name

字符串 / 必填

ICAP 配置文件名称。

preview

字符串

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

选择

  • “禁用”

  • “启用”

preview_data_length

别名:preview-data-length

整数

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

replacemsg_group

别名:replacemsg-group

字符串

替换消息组。

request

字符串

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

选择

  • “禁用”

  • “启用”

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

字符串

启用/禁用匹配标头时的大小写敏感性。

选择

  • “禁用”

  • “启用”

header

字符串

HTTP 标头正则表达式。

header_name

别名:header-name

字符串

HTTP 标头。

id

整数

ID。

host

字符串

主机的地址对象。

http_resp_status_code

别名:http-resp-status-code

any

(列表) HTTP 响应状态代码。

name

字符串

地址名称。

response

字符串

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

选择

  • “禁用”

  • “启用”

response_failure

别名:response-failure

字符串

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

选择

  • “error”

  • “bypass”

response_path

别名:response-path

字符串

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

response_req_hdr

别名:response-req-hdr

字符串

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

选择

  • “禁用”

  • “启用”

response_server

别名:response-server

字符串

用于 HTTP 响应的 ICAP 服务器。

scan_progress_interval

别名:scan-progress-interval

整数

扫描进度间隔值。

streaming_content_bypass

别名:streaming-content-bypass

字符串

启用/禁用跳过流内容的 ICAP 服务器。

选择

  • “禁用”

  • “启用”

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)