fortinet.fortimanager.fmgr_firewall_service_custom_obj (1.0.5) — module

Configure custom services.

| "added in version" 2.10 of fortinet.fortimanager"

Authors: Frank Shen (@fshen01), Link Zheng (@zhengl)

preview | supported by community

Install collection

Install with ansible-galaxy collection install fortinet.fortimanager:==1.0.5


Add to requirements.yml

  collections:
    - name: fortinet.fortimanager
      version: 1.0.5

Description

This module is able to configure a FortiManager device by allowing the user to [ clone delete get move set update ] the following apis.

/pm/config/adom/{adom}/obj/firewall/service/custom/{custom}

/pm/config/global/obj/firewall/service/custom/{custom}

Examples include all parameters and values need to be adjusted to data sources before usage.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
 - 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: REQUESTING /PM/CONFIG/OBJ/FIREWALL/SERVICE/CUSTOM/{CUSTOM}
      fmgr_firewall_service_custom_obj:
         loose_validation: False
         workspace_locking_adom: <value in [global, custom adom]>
         workspace_locking_timeout: 300
         method: <value in [clone, set, update]>
         url_params:
            adom: <value in [none, global, custom dom]>
            custom: <value of string>
         params:
            -
               data:
                  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]>

    - name: REQUESTING /PM/CONFIG/OBJ/FIREWALL/SERVICE/CUSTOM/{CUSTOM}
      fmgr_firewall_service_custom_obj:
         loose_validation: False
         workspace_locking_adom: <value in [global, custom adom]>
         workspace_locking_timeout: 300
         method: <value in [get]>
         url_params:
            adom: <value in [none, global, custom dom]>
            custom: <value of string>
         params:
            -
               option: <value in [object member, chksum, datasrc]>

    - name: REQUESTING /PM/CONFIG/OBJ/FIREWALL/SERVICE/CUSTOM/{CUSTOM}
      fmgr_firewall_service_custom_obj:
         loose_validation: False
         workspace_locking_adom: <value in [global, custom adom]>
         workspace_locking_timeout: 300
         method: <value in [move]>
         url_params:
            adom: <value in [none, global, custom dom]>
            custom: <value of string>
         params:
            -
               option: <value in [before, after]>
               target: <value of string>

Inputs

    
method:
    choices:
    - clone
    - delete
    - get
    - move
    - set
    - update
    description:
    - The method in request
    required: true
    type: str

params:
    description:
    - The parameters for each method
    - See full parameters list in https://ansible-galaxy-fortimanager-docs.readthedocs.io/en/latest
    required: false
    type: list

url_params:
    description:
    - The parameters for each API request URL
    - Also see full URL parameters in https://ansible-galaxy-fortimanager-docs.readthedocs.io/en/latest
    required: false
    type: dict

loose_validation:
    description:
    - Do parameter validation in a loose way
    required: false
    type: bool

workspace_locking_adom:
    description:
    - the adom name to lock in case FortiManager running in workspace mode
    - it can be global or any other custom adom names
    required: false
    type: str

workspace_locking_timeout:
    default: 300
    description:
    - the maximum time in seconds to wait for other user to release the workspace lock
    required: false
    type: int

Outputs

data:
  description: The payload returned in the request
  returned: always
  type: dict
status:
  description: The status of api request
  returned: always
  type: dict
url:
  description: The full url requested
  returned: always
  sample: /sys/login/user
  type: str