On this page
fortinet.fortimanager.fmgr_firewall_service_custom – Configure custom services.
Note
This plugin is part of the fortinet.fortimanager collection (version 2.1.3).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install fortinet.fortimanager.
To use it in a playbook, specify: fortinet.fortimanager.fmgr_firewall_service_custom.
New in version 2.10: of fortinet.fortimanager
Synopsis
- This module is able to configure a FortiManager device.
 - Examples include all parameters and values which need to be adjusted to data sources before usage.
 
Parameters
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| adom
        
        string / required
         | 
      
        
        the parameter (adom) in requested url
         | 
     ||
| bypass_validation
        
        boolean
         | 
      
       
  | 
      
        
        only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters
         | 
     |
| enable_log
        
        boolean
         | 
      
       
  | 
      
        
        Enable/Disable logging for task
         | 
     |
| firewall_service_custom
        
        dictionary
         | 
      
        
        the top level parameters set
         | 
     ||
| app-category
        
        integer
         | 
      
        
        no description
         | 
     ||
| app-service-type
        
        string
         | 
      
       
  | 
      
        
        Application service type.
         | 
     |
| application
        
        integer
         | 
      
        
        no description
         | 
     ||
| category
        
        string
         | 
      
        
        Service category.
         | 
     ||
| check-reset-range
        
        string
         | 
      
       
  | 
      
        
        Configure the type of ICMP error message verification.
         | 
     |
| color
        
        integer
         | 
      
        
        Color of icon on the GUI.
         | 
     ||
| comment
        
        string
         | 
      
        
        no description
         | 
     ||
| fabric-object
        
        string
         | 
      
       
  | 
      
        
        Security Fabric global object setting.
         | 
     |
| fqdn
        
        string
         | 
      
        
        Fully qualified domain name.
         | 
     ||
| global-object
        
        integer
         | 
      
        
        Global Object.
         | 
     ||
| helper
        
        string
         | 
      
       
  | 
      
        
        Helper name.
         | 
     |
| icmpcode
        
        integer
         | 
      
        
        ICMP code.
         | 
     ||
| icmptype
        
        integer
         | 
      
        
        ICMP type.
         | 
     ||
| iprange
        
        string
         | 
      
        
        Start and end of the IP range associated with service.
         | 
     ||
| name
        
        string
         | 
      
        
        Custom service name.
         | 
     ||
| protocol
        
        string
         | 
      
       
  | 
      
        
        Protocol type based on IANA numbers.
         | 
     |
| protocol-number
        
        integer
         | 
      
        
        IP protocol number.
         | 
     ||
| proxy
        
        string
         | 
      
       
  | 
      
        
        Enable/disable web proxy service.
         | 
     |
| sctp-portrange
        
        string
         | 
      
        
        Multiple SCTP port ranges.
         | 
     ||
| session-ttl
        
        integer
         | 
      
        
        Session TTL (300 - 604800, 0 = default).
         | 
     ||
| tcp-halfclose-timer
        
        integer
         | 
      
        
        Wait time to close a TCP session waiting for an unanswered FIN packet (1 - 86400 sec, 0 = default).
         | 
     ||
| tcp-halfopen-timer
        
        integer
         | 
      
        
        Wait time to close a TCP session waiting for an unanswered open session packet (1 - 86400 sec, 0 = default).
         | 
     ||
| tcp-portrange
        
        string
         | 
      
        
        Multiple TCP port ranges.
         | 
     ||
| tcp-rst-timer
        
        integer
         | 
      
        
        Set the length of the TCP CLOSE state in seconds (5 - 300 sec, 0 = default).
         | 
     ||
| tcp-timewait-timer
        
        integer
         | 
      
        
        Set the length of the TCP TIME-WAIT state in seconds (1 - 300 sec, 0 = default).
         | 
     ||
| udp-idle-timer
        
        integer
         | 
      
        
        UDP half close timeout (0 - 86400 sec, 0 = default).
         | 
     ||
| udp-portrange
        
        string
         | 
      
        
        Multiple UDP port ranges.
         | 
     ||
| visibility
        
        string
         | 
      
       
  | 
      
        
        Enable/disable the visibility of the service on the GUI.
         | 
     |
| proposed_method
        
        string
         | 
      
       
  | 
      
        
        The overridden method for the underlying Json RPC request
         | 
     |
| rc_failed
        
        list / elements=string
         | 
      
        
        the rc codes list with which the conditions to fail will be overriden
         | 
     ||
| rc_succeeded
        
        list / elements=string
         | 
      
        
        the rc codes list with which the conditions to succeed will be overriden
         | 
     ||
| state
        
        string / required
         | 
      
       
  | 
      
        
        the directive to create, update or delete an object
         | 
     |
| workspace_locking_adom
        
        string
         | 
      
        
        the adom to lock for FortiManager running in workspace mode, the value can be global and others including root
         | 
     ||
| workspace_locking_timeout
        
        integer
         | 
      Default: 
        300
         | 
      
        
        the maximum time in seconds to wait for other user to release the workspace lock
         | 
     |
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
- hosts: fortimanager-inventory
  collections:
    - fortinet.fortimanager
  connection: httpapi
  vars:
     ansible_httpapi_use_ssl: True
     ansible_httpapi_validate_certs: False
     ansible_httpapi_port: 443
  tasks:
   - name: Configure custom services.
     fmgr_firewall_service_custom:
        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: <value in [present, absent]>
        firewall_service_custom:
           app-category: <value of integer>
           app-service-type: <value in [disable, app-id, app-category]>
           application: <value of integer>
           category: <value of string>
           check-reset-range: <value in [disable, default, strict]>
           color: <value of integer>
           comment: <value of string>
           fqdn: <value of string>
           helper: <value in [disable, auto, ftp, ...]>
           icmpcode: <value of integer>
           icmptype: <value of integer>
           iprange: <value of string>
           name: <value of string>
           protocol: <value in [ICMP, IP, TCP/UDP/SCTP, ...]>
           protocol-number: <value of integer>
           proxy: <value in [disable, enable]>
           sctp-portrange: <value of string>
           session-ttl: <value of integer>
           tcp-halfclose-timer: <value of integer>
           tcp-halfopen-timer: <value of integer>
           tcp-portrange: <value of string>
           tcp-timewait-timer: <value of integer>
           udp-idle-timer: <value of integer>
           udp-portrange: <value of string>
           visibility: <value in [disable, enable]>
           global-object: <value of integer>
           fabric-object: <value in [disable, enable]>
           tcp-rst-timer: <value of integer>
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| request_url
        
        string
         | 
      always | 
        
        The full url requested
         Sample:
        
       
        /sys/login/user
         | 
     
| response_code
        
        integer
         | 
      always | 
        
        The status of api request
          | 
     
| response_message
        
        string
         | 
      always | 
        
        The descriptive message of the api response
         Sample:
        
       
        OK.
         | 
     
Authors
- Link Zheng (@chillancezen)
 - Jie Xue (@JieX19)
 - Frank Shen (@fshen01)
 - Hongbin Lu (@fgtdev-hblu)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/fortinet/fortimanager/fmgr_firewall_service_custom_module.html