fmgr_firewall_address – Configure IPv4 addresses.¶
New in version 2.10.
Synopsis¶
- This module is able to configure a FortiManager device.
- Examples include all parameters and values need to be adjusted to data sources before usage.
Requirements¶
The below requirements are needed on the host that executes this module.
- ansible>=2.9.0
FortiManager Version Compatibility¶
6.0.0 |
6.2.1 |
6.2.3 |
6.2.5 |
6.4.0 |
6.4.2 |
6.4.5 |
7.0.0 |
7.2.0 |
|
| firewall_address | yes | yes | yes | yes | yes | yes | yes | yes | yes |
Parameters¶
- enable_log - Enable/Disable logging for task type: bool required: false default: False
- forticloud_access_token - Access token of forticloud managed API users, this option is available with FortiManager later than 6.4.0 type: str required: false
- proposed_method - The overridden method for the underlying Json RPC request type: str required: false choices: set, update, add
- bypass_validation - Only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters type: bool required: false default: False
- workspace_locking_adom - Acquire the workspace lock if FortiManager is running in workspace mode type: str required: false choices: global, custom adom including root
- workspace_locking_timeout - The maximum time in seconds to wait for other users to release workspace lock type: integer required: false default: 300
- rc_succeeded - The rc codes list with which the conditions to succeed will be overriden type: list required: false
- rc_failed - The rc codes list with which the conditions to fail will be overriden type: list required: false
- state - The directive to create, update or delete an object type: str required: true choices: present, absent
- adom - The parameter in requested url type: str required: true
- firewall_address - no description type: dict
- allow-routing - Enable/disable use of this address in the static route configuration. type: str choices: [disable, enable] more...
- associated-interface - Network interface associated with address. type: str more...
- cache-ttl - Defines the minimal TTL of individual IP addresses in FQDN cache measured in seconds. type: int more...
- color - Color of icon on the GUI. type: int more...
- comment - No description for the parameter type: str
- country - IP addresses associated to a specific country. type: str more...
- dynamic_mapping - Dynamic_Mapping. type: array
more...
- _scope - _Scope. type: array more...
- allow-routing - Enable/disable use of this address in the static route configuration. type: str choices: [disable, enable] more...
- associated-interface - Network interface associated with address. type: str more...
- cache-ttl - Defines the minimal TTL of individual IP addresses in FQDN cache measured in seconds. type: int more...
- color - Color of icon on the GUI. type: int more...
- comment - No description for the parameter type: str
- country - IP addresses associated to a specific country. type: str more...
- end-ip - Final IP address (inclusive) in the range for the address. type: str more...
- end-mac - Last MAC address in the range. type: str more...
- epg-name - Endpoint group name. type: str more...
- filter - Match criteria filter. type: str more...
- fqdn - Fully Qualified Domain Name address. type: str more...
- interface - Name of interface whose IP address is to be used. type: str more...
- obj-id - Object ID for NSX. type: str more...
- organization - Organization domain name (Syntax: organization/domain). type: str more...
- policy-group - Policy group name. type: str more...
- sdn - SDN. type: str choices: [aci, aws, nsx, nuage, azure, gcp, oci, openstack] more...
- sdn-addr-type - Type of addresses to collect. type: str choices: [private, public, all] more...
- sdn-tag - SDN Tag. type: str more...
- start-ip - First IP address (inclusive) in the range for the address. type: str more...
- start-mac - First MAC address in the range. type: str more...
- subnet - IP address and subnet mask of address. type: str more...
- subnet-name - Subnet name. type: str more...
- tags - Tags. type: str more...
- tenant - Tenant. type: str more...
- type - Type of address. type: str choices: [ipmask, iprange, fqdn, wildcard, geography, wildcard-fqdn, dynamic]
- url - Url. type: str more...
- uuid - Universally Unique Identifier (UUID; automatically assigned but can be manually reset). type: str more...
- visibility - Enable/disable address visibility in the GUI. type: str choices: [disable, enable] more...
- wildcard - IP address and wildcard netmask. type: str more...
- wildcard-fqdn - Fully Qualified Domain Name with wildcard characters. type: str more...
- _image-base64 - _Image-Base64. type: str more...
- clearpass-spt - SPT (System Posture Token) value. type: str choices: [unknown, healthy, quarantine, checkup, transition, infected, transient] more...
- fsso-group - FSSO group(s). type: str more...
- sub-type - Sub-type of address. type: str choices: [sdn, clearpass-spt, fsso, ems-tag, swc-tag, fortivoice-tag, fortinac-tag] more...
- global-object - Global-Object. type: int more...
- obj-tag - Obj-Tag. type: str more...
- obj-type - Obj-Type. type: str choices: [ip, mac] more...
- fabric-object - Security Fabric global object setting. type: str choices: [disable, enable] more...
- macaddr - Macaddr. type: str more...
- node-ip-only - Enable/disable collection of node addresses only in Kubernetes. type: str choices: [disable, enable] more...
- dirty - To be deleted address. type: str choices: [dirty, clean] more...
- pattern-end - No description for the parameter type: int more...
- pattern-start - No description for the parameter type: int more...
- tag-detection-level - Tag detection level of dynamic address object. type: str more...
- tag-type - Tag type of dynamic address object. type: str more...
- end-ip - Final IP address (inclusive) in the range for the address. type: str more...
- epg-name - Endpoint group name. type: str more...
- filter - Match criteria filter. type: str more...
- fqdn - Fully Qualified Domain Name address. type: str more...
- list - List. type: array more...
- name - Address name. type: str more...
- obj-id - Object ID for NSX. type: str more...
- organization - Organization domain name (Syntax: organization/domain). type: str more...
- policy-group - Policy group name. type: str more...
- sdn - SDN. type: str choices: [aci, aws, nsx, nuage, azure, gcp, oci, openstack] more...
- sdn-tag - SDN Tag. type: str more...
- start-ip - First IP address (inclusive) in the range for the address. type: str more...
- subnet - IP address and subnet mask of address. type: str more...
- subnet-name - Subnet name. type: str more...
- tagging - Tagging. type: array more...
- tenant - Tenant. type: str more...
- type - Type of address. type: str choices: [ipmask, iprange, fqdn, wildcard, geography, wildcard-fqdn, dynamic]
- uuid - Universally Unique Identifier (UUID; automatically assigned but can be manually reset). type: str more...
- visibility - Enable/disable address visibility in the GUI. type: str choices: [disable, enable] more...
- wildcard - IP address and wildcard netmask. type: str more...
- wildcard-fqdn - Fully Qualified Domain Name with wildcard characters. type: str more...
- end-mac - Last MAC address in the range. type: str more...
- interface - Name of interface whose IP address is to be used. type: str more...
- sdn-addr-type - Type of addresses to collect. type: str choices: [private, public, all] more...
- start-mac - First MAC address in the range. type: str more...
- _image-base64 - _Image-Base64. type: str more...
- clearpass-spt - SPT (System Posture Token) value. type: str choices: [unknown, healthy, quarantine, checkup, transition, infected, transient] more...
- fsso-group - FSSO group(s). type: str more...
- sub-type - Sub-type of address. type: str choices: [sdn, clearpass-spt, fsso, ems-tag, swc-tag, fortivoice-tag, fortinac-tag] more...
- global-object - Global Object. type: int more...
- obj-tag - Tag of dynamic address object. type: str more...
- obj-type - Object type. type: str choices: [ip, mac] more...
- fabric-object - Security Fabric global object setting. type: str choices: [disable, enable] more...
- macaddr - Multiple MAC address ranges. type: str more...
- node-ip-only - Enable/disable collection of node addresses only in Kubernetes. type: str choices: [disable, enable] more...
- dirty - To be deleted address. type: str choices: [dirty, clean] more...
- tag-detection-level - Tag detection level of dynamic address object. type: str more...
- tag-type - Tag type of dynamic address object. type: str more...
Notes¶
Note
- Running in workspace locking mode is supported in this FortiManager module, the top level parameters workspace_locking_adom and workspace_locking_timeout help do the work.
- To create or update an object, use state: present directive.
- To delete an object, use state: absent directive
- Normally, running one module can fail when a non-zero rc is returned. you can also override the conditions to fail or succeed with parameters rc_failed and rc_succeeded
Examples¶
- name: gathering fortimanager facts
hosts: fortimanager00
gather_facts: no
connection: httpapi
collections:
- fortinet.fortimanager
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: retrieve all the IPv4 addresses
fmgr_fact:
facts:
selector: 'firewall_address'
params:
adom: 'ansible'
address: 'your_value'
- hosts: fortimanager00
collections:
- fortinet.fortimanager
connection: httpapi
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: Configure IPv4 addresses.
fmgr_firewall_address:
bypass_validation: False
adom: ansible
state: present
firewall_address:
allow-routing: disable
associated-interface: any
name: 'ansible-test1'
visibility: disable
- hosts: fortimanager00
collections:
- fortinet.fortimanager
connection: httpapi
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: Configure IPv4 addresses.
fmgr_firewall_address:
bypass_validation: False
adom: root
state: present
firewall_address:
allow-routing: disable
associated-interface: any
name: 'address-orignal'
visibility: enable
- name: rename the firewall addressobject
fmgr_rename:
rename:
selector: 'firewall_address'
self:
adom: 'root'
address: 'address-orignal'
target:
name: 'address-new'
- name: delete renamed object
fmgr_firewall_address:
adom: 'root'
state: absent
firewall_address:
name: 'address-new'
- hosts: fortimanager00
collections:
- fortinet.fortimanager
connection: httpapi
vars:
ansible_httpapi_use_ssl: True
ansible_httpapi_validate_certs: False
ansible_httpapi_port: 443
tasks:
- name: create IPv4 addresses.
fmgr_firewall_address:
adom: root
state: present
firewall_address:
allow-routing: disable
associated-interface: any
name: 'fooaddress'
visibility: disable
register: info
failed_when: info.rc != 0
- name: create IPv4 addresses.
fmgr_firewall_address:
adom: root
state: present
firewall_address:
allow-routing: disable
associated-interface: any
name: 'fooaddress'
visibility: disable
register: info
failed_when: info.message != 'Object update skipped!'
- name: delete created address
fmgr_firewall_address:
adom: root
state: absent
firewall_address:
name: 'fooaddress'
Return Values¶
Common return values are documented: https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values, the following are the fields unique to this module:
- request_url - The full url requested returned: always type: str sample: /sys/login/user
- response_code - The status of api request returned: always type: int sample: 0
- response_message - The descriptive message of the api response returned: always type: str sample: OK
- response_data - The data body of the api response returned: optional type: list or dict