fortinet.fortimanager.fmgr_webproxy_profile 模块 – 配置 Web 代理配置文件。

注意

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

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

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

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

fortinet.fortimanager 1.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 客户端。

proposed_method

字符串

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

选项

  • "update"

  • "set"

  • "add"

rc_failed

列表 / 元素=整数

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

rc_succeeded

列表 / 元素=整数

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

state

字符串 / 必需

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

选项

  • "present"

  • "absent"

webproxy_profile

字典

设置的顶级参数。

header_client_ip

别名:header-client-ip

字符串

对转发请求中 HTTP client-IP 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_front_end_https

别名:header-front-end-https

字符串

对转发请求中 HTTP front-end-HTTPS 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_via_request

别名:header-via-request

字符串

对转发请求中 HTTP via 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_via_response

别名:header-via-response

字符串

对转发响应中 HTTP via 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_x_authenticated_groups

别名:header-x-authenticated-groups

字符串

对转发请求中 HTTP x-authenticated-groups 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_x_authenticated_user

别名:header-x-authenticated-user

字符串

对转发请求中 HTTP x-authenticated-user 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_x_forwarded_client_cert

别名:header-x-forwarded-client-cert

字符串

对转发请求中 HTTP x-forwarded-client-cert 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

header_x_forwarded_for

别名:header-x-forwarded-for

字符串

对转发请求中 HTTP x-forwarded-for 头采取的操作

选项

  • "pass"

  • "add"

  • "remove"

headers

列表 / 元素=字典

HTTP 头。

action

字符串

转发 HTTP 头时的操作。

选项

  • "add-to-request"

  • "add-to-response"

  • "remove-from-request"

  • "remove-from-response"

  • "monitor-request"

  • "monitor-response"

add_option

别名:add-option

字符串

配置选项以将内容附加到现有 HTTP 头或添加新的 HTTP 头。

选项

  • "append"

  • "new-on-not-found"

  • "new"

base64_encoding

别名:base64-encoding

字符串

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

选项

  • "disable"

  • "enable"

content

字符串

HTTP 头内容。

dstaddr

任意

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

dstaddr6

任意

(列表或字符串) 目标地址和地址组名称

id

整数

HTTP 转发头 ID。

name

字符串

HTTP 转发头名称。

protocol

列表 / 元素=字符串

配置协议

选项

  • "https"

  • "http"

log_header_change

别名:log-header-change

字符串

启用/禁用 HTTP 头更改日志记录。

选项

  • "disable"

  • "enable"

name

字符串 / 必需

配置文件名称。

strip_encoding

别名:strip-encoding

字符串

启用/禁用从请求头中去除不受支持的编码。

选项

  • "disable"

  • "enable"

workspace_locking_adom

字符串

在工作区模式下运行 FortiManager 时要锁定的 adom,值可以是全局的和其他值,包括 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 web proxy profiles.
      fortinet.fortimanager.fmgr_webproxy_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]>
        webproxy_profile:
          header_client_ip: <value in [pass, add, remove]>
          header_front_end_https: <value in [pass, add, remove]>
          header_via_request: <value in [pass, add, remove]>
          header_via_response: <value in [pass, add, remove]>
          header_x_authenticated_groups: <value in [pass, add, remove]>
          header_x_authenticated_user: <value in [pass, add, remove]>
          header_x_forwarded_for: <value in [pass, add, remove]>
          headers:
            -
              action: <value in [add-to-request, add-to-response, remove-from-request, ...]>
              content: <string>
              id: <integer>
              name: <string>
              add_option: <value in [append, new-on-not-found, new]>
              base64_encoding: <value in [disable, enable]>
              dstaddr: <list or string>
              dstaddr6: <list or string>
              protocol:
                - "https"
                - "http"
          log_header_change: <value in [disable, enable]>
          name: <string>
          strip_encoding: <value in [disable, enable]>
          header_x_forwarded_client_cert: <value in [pass, add, remove]>

返回值

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

描述

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)