fortinet.fortios.fortios_firewall_proxy_address (2.3.6) — module

Configure web proxy address in Fortinet's FortiOS and FortiGate.

| "added in version" 2.0.0 of fortinet.fortios"

Authors: Link Zheng (@chillancezen), Jie Xue (@JieX19), Hongbin Lu (@fgtdev-hblu), Frank Shen (@frankshen01), Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install collection

Install with ansible-galaxy collection install fortinet.fortios:==2.3.6


Add to requirements.yml

  collections:
    - name: fortinet.fortios
      version: 2.3.6

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify firewall feature and proxy_address category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Configure web proxy address.
  fortinet.fortios.fortios_firewall_proxy_address:
      vdom: "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      firewall_proxy_address:
          application:
              -
                  name: "default_name_4"
          case_sensitivity: "disable"
          category:
              -
                  id: "7"
          color: "0"
          comment: "Optional comments."
          header: "<your_own_value>"
          header_group:
              -
                  case_sensitivity: "disable"
                  header: "<your_own_value>"
                  header_name: "<your_own_value>"
                  id: "15"
          header_name: "<your_own_value>"
          host: "myhostname (source firewall.address.name firewall.addrgrp.name firewall.proxy-address.name)"
          host_regex: "myhostname"
          method: "get"
          name: "default_name_20"
          path: "<your_own_value>"
          query: "<your_own_value>"
          referrer: "enable"
          tagging:
              -
                  category: "<your_own_value> (source system.object-tagging.category)"
                  name: "default_name_26"
                  tags:
                      -
                          name: "default_name_28 (source system.object-tagging.tags.name)"
          type: "host-regex"
          ua: "chrome"
          ua_max_ver: "<your_own_value>"
          ua_min_ver: "<your_own_value>"
          uuid: "<your_own_value>"
          visibility: "enable"

Inputs

    
vdom:
    default: root
    description:
    - Virtual domain, among those defined previously. A vdom is a virtual instance of
      the FortiGate that can be configured and used as a different unit.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - Indicates whether to create or remove the object.
    required: true
    type: str

enable_log:
    default: false
    description:
    - Enable/Disable logging for task.
    required: false
    type: bool

member_path:
    description:
    - Member attribute path to operate on.
    - Delimited by a slash character if there are more than one attribute.
    - Parameter marked with member_path is legitimate for doing member operation.
    type: str

access_token:
    description:
    - Token-based authentication. Generated from GUI of Fortigate.
    required: false
    type: str

member_state:
    choices:
    - present
    - absent
    description:
    - Add or delete a member under specified attribute path.
    - When member_state is specified, the state option is ignored.
    type: str

firewall_proxy_address:
    default: null
    description:
    - Configure web proxy address.
    suboptions:
      application:
        description:
        - SaaS application.
        elements: dict
        suboptions:
          name:
            description:
            - SaaS application name.
            required: true
            type: str
        type: list
      case_sensitivity:
        choices:
        - disable
        - enable
        description:
        - Enable to make the pattern case sensitive.
        type: str
      category:
        description:
        - FortiGuard category ID.
        elements: dict
        suboptions:
          id:
            description:
            - FortiGuard category ID. see <a href='#notes'>Notes</a>.
            required: true
            type: int
        type: list
      color:
        description:
        - Integer value to determine the color of the icon in the GUI (1 - 32).
        type: int
      comment:
        description:
        - Optional comments.
        type: str
      header:
        description:
        - HTTP header name as a regular expression.
        type: str
      header_group:
        description:
        - HTTP header group.
        elements: dict
        suboptions:
          case_sensitivity:
            choices:
            - disable
            - enable
            description:
            - Case sensitivity in pattern.
            type: str
          header:
            description:
            - HTTP header regular expression.
            type: str
          header_name:
            description:
            - HTTP header.
            type: str
          id:
            description:
            - ID. see <a href='#notes'>Notes</a>.
            required: true
            type: int
        type: list
      header_name:
        description:
        - Name of HTTP header.
        type: str
      host:
        description:
        - Address object for the host. Source firewall.address.name firewall.addrgrp.name
          firewall.proxy-address.name.
        type: str
      host_regex:
        description:
        - Host name as a regular expression.
        type: str
      method:
        choices:
        - get
        - post
        - put
        - head
        - connect
        - trace
        - options
        - delete
        description:
        - HTTP request methods to be used.
        elements: str
        type: list
      name:
        description:
        - Address name.
        required: true
        type: str
      path:
        description:
        - URL path as a regular expression.
        type: str
      query:
        description:
        - Match the query part of the URL as a regular expression.
        type: str
      referrer:
        choices:
        - enable
        - disable
        description:
        - Enable/disable use of referrer field in the HTTP header to match the address.
        type: str
      tagging:
        description:
        - Config object tagging.
        elements: dict
        suboptions:
          category:
            description:
            - Tag category. Source system.object-tagging.category.
            type: str
          name:
            description:
            - Tagging entry name.
            required: true
            type: str
          tags:
            description:
            - Tags.
            elements: dict
            suboptions:
              name:
                description:
                - Tag name. Source system.object-tagging.tags.name.
                required: true
                type: str
            type: list
        type: list
      type:
        choices:
        - host-regex
        - url
        - category
        - method
        - ua
        - header
        - src-advanced
        - dst-advanced
        - saas
        description:
        - Proxy address type.
        type: str
      ua:
        choices:
        - chrome
        - ms
        - firefox
        - safari
        - ie
        - edge
        - other
        description:
        - Names of browsers to be used as user agent.
        elements: str
        type: list
      ua_max_ver:
        description:
        - Maximum version of the user agent specified in dotted notation. For example,
          use 120 with the ua field set to "chrome" to require Google Chrome"s maximum
          version must be 120.
        type: str
      ua_min_ver:
        description:
        - Minimum version of the user agent specified in dotted notation. For example,
          use 90.0.1 with the ua field set to "chrome" to require Google Chrome"s minimum
          version must be 90.0.1.
        type: str
      uuid:
        description:
        - Universally Unique Identifier (UUID; automatically assigned but can be manually
          reset).
        type: str
      visibility:
        choices:
        - enable
        - disable
        description:
        - Enable/disable visibility of the object in the GUI.
        type: str
    type: dict

Outputs

build:
  description: Build number of the fortigate image
  returned: always
  sample: '1547'
  type: str
http_method:
  description: Last method used to provision the content into FortiGate
  returned: always
  sample: PUT
  type: str
http_status:
  description: Last result given by FortiGate on last operation applied
  returned: always
  sample: '200'
  type: str
mkey:
  description: Master key (id) used in the last call to FortiGate
  returned: success
  sample: id
  type: str
name:
  description: Name of the table used to fulfill the request
  returned: always
  sample: urlfilter
  type: str
path:
  description: Path of the table used to fulfill the request
  returned: always
  sample: webfilter
  type: str
revision:
  description: Internal revision number
  returned: always
  sample: 17.0.2.10658
  type: str
serial:
  description: Serial number of the unit
  returned: always
  sample: FGVMEVYYQT3AB5352
  type: str
status:
  description: Indication of the operation's result
  returned: always
  sample: success
  type: str
vdom:
  description: Virtual domain used
  returned: always
  sample: root
  type: str
version:
  description: Version of the FortiGate
  returned: always
  sample: v5.6.3
  type: str