# fortios_firewall_proxy_address – Web proxy address configuration in Fortinet’s FortiOS and FortiGate

New in version 2.8.

- Synopsis

- Requirements

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- 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.5

## Requirements

The below requirements are needed on the host that executes this module.

- fortiosapi>=0.9.8

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
firewall_proxy_address dictionary | Default: null | Web proxy address configuration.

case_sensitivity
string

Choices:
- disable
- enable

Enable to make the pattern case sensitive.

| category list |  | FortiGuard category ID.
|  | id integer / required |  | Fortiguard category id.
| color integer |  | Integer value to determine the color of the icon in the GUI (1 - 32).
| comment string |  | Optional comments.
| header string |  | HTTP header name as a regular expression.
| header_group list |  | HTTP header group.

case_sensitivity
string

Choices:
- disable
- enable

Case sensitivity in pattern.

|  | header string |  | HTTP header regular expression.
|  | header_name string |  | HTTP header.
|  | id integer / required |  | ID.
| header_name string |  | Name of HTTP header.
| host string |  | Address object for the host. Source firewall.address.name firewall.addrgrp.name firewall.proxy-address.name.
| host_regex string |  | Host name as a regular expression.

method
string

Choices:
- get
- post
- put
- head
- connect
- trace
- options
- delete

HTTP request methods to be used.

| name string / required |  | Address name.
| path string |  | URL path as a regular expression.
| query string |  | Match the query part of the URL as a regular expression.

referrer
string

Choices:
- enable
- disable

Enable/disable use of referrer field in the HTTP header to match the address.

state
string

Choices:
- present
- absent

Deprecated
Starting with Ansible 2.9 we recommend using the top-level 'state' parameter.

Indicates whether to create or remove the object.

| tagging list |  | Config object tagging.
|  | category string |  | Tag category. Source system.object-tagging.category.
|  | name string / required |  | Tagging entry name.
|  | tags list |  | Tags.
|  |  | name string / required |  | Tag name. Source system.object-tagging.tags.name.

type
string

Choices:
- host-regex
- url
- category
- method
- ua
- header
- src-advanced
- dst-advanced

Proxy address type.

ua
string

Choices:
- chrome
- ms
- firefox
- safari
- other

Names of browsers to be used as user agent.

| uuid string |  | Universally Unique Identifier (UUID; automatically assigned but can be manually reset).

visibility
string

Choices:
- enable
- disable

Enable/disable visibility of the object in the GUI.

host string |  | FortiOS or FortiGate IP address.

https
boolean

Choices:
- no
- yes ←

Indicates if the requests towards FortiGate must use HTTPS protocol.

password string | Default: "" | FortiOS or FortiGate password.

ssl_verify
boolean
added in 2.9

Choices:
- no
- yes ←

Ensures FortiGate certificate must be verified by a proper CA.

state
string
added in 2.9

Choices:
- present
- absent

Indicates whether to create or remove the object. This attribute was present already in previous version in a deeper level. It has been moved out to this outer level.

username string |  | FortiOS or FortiGate username.
vdom string | Default: "root" | 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.

## Notes

Note

- Requires fortiosapi library developed by Fortinet

- Run as a local_action in your playbook

## Examples

    - hosts: localhost
      vars:
       host: "192.168.122.40"
       username: "admin"
       password: ""
       vdom: "root"
       ssl_verify: "False"
      tasks:
      - name: Web proxy address configuration.
        fortios_firewall_proxy_address:
          host:  "{{ host }}"
          username: "{{ username }}"
          password: "{{ password }}"
          vdom:  "{{ vdom }}"
          https: "False"
          state: "present"
          firewall_proxy_address:
            case_sensitivity: "disable"
            category:
             -
                id:  "5"
            color: "6"
            comment: "Optional comments."
            header: "<your_own_value>"
            header_group:
             -
                case_sensitivity: "disable"
                header: "<your_own_value>"
                header_name: "<your_own_value>"
                id:  "13"
            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_18"
            path: "<your_own_value>"
            query: "<your_own_value>"
            referrer: "enable"
            tagging:
             -
                category: "<your_own_value> (source system.object-tagging.category)"
                name: "default_name_24"
                tags:
                 -
                    name: "default_name_26 (source system.object-tagging.tags.name)"
            type: "host-regex"
            ua: "chrome"
            uuid: "<your_own_value>"
            visibility: "enable"

## Return Values

Common return values are documented here, the following are the fields unique to this module:

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

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Miguel Angel Munoz (@mamunozgonzalez)

- Nicolas Thomas (@thomnico)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.