fortinet.fortimanager.fmgr_system_sql – SQL settings.

Note

This plugin is part of the fortinet.fortimanager collection (version 2.1.4).

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

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
bypass_validation
boolean
    Choices:
  • no ←
  • yes
only set to True when module schema diffs with FortiManager API structure, module continues to execute without validating parameters
enable_log
boolean
    Choices:
  • no ←
  • yes
Enable/Disable logging for task
proposed_method
string
    Choices:
  • update
  • set
  • add
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
    Choices:
  • present
  • absent
the directive to create, update or delete an object
system_sql
dictionary
the top level parameters set
background-rebuild
string
    Choices:
  • disable
  • enable ←
Disable/Enable rebuild SQL database in the background.
disable - Rebuild SQL database not in the background.
enable - Rebuild SQL database in the background.
compress-table-min-age
integer
Default:
7
Minimum age in days for SQL tables to be compressed.
custom-index
list / elements=string
Custom-Index.
case-sensitive
string
    Choices:
  • disable ←
  • enable
Disable/Enable case sensitive index.
disable - Build a case insensitive index.
enable - Build a case sensitive index.
device-type
string
    Choices:
  • FortiGate ←
  • FortiManager
  • FortiClient
  • FortiMail
  • FortiWeb
  • FortiCache
  • FortiSandbox
  • FortiDDoS
  • FortiAuthenticator
  • FortiProxy
Device type.
FortiGate - Device type to FortiGate.
FortiManager - Set device type to FortiManager
FortiClient - Set device type to FortiClient
FortiMail - Device type to FortiMail.
FortiWeb - Device type to FortiWeb.
FortiCache - Set device type to FortiCache
FortiSandbox - Set device type to FortiSandbox
FortiDDoS - Set device type to FortiDDoS
FortiAuthenticator - Set device type to FortiAuthenticator
FortiProxy - Set device type to FortiProxy
id
integer
Default:
0
Add or Edit log index fields.
index-field
string
Log field name to be indexed.
log-type
string
    Choices:
  • none
  • app-ctrl
  • attack
  • content
  • dlp
  • emailfilter
  • event
  • generic
  • history
  • traffic ←
  • virus
  • voip
  • webfilter
  • netscan
  • fct-event
  • fct-traffic
  • fct-netscan
  • waf
  • gtp
  • dns
  • ssh
  • ssl
  • file-filter
  • asset
  • protocol
  • siem
Log type.
none - none
app-ctrl
attack
content
dlp
emailfilter
event
generic
history
traffic
virus
voip
webfilter
netscan
fct-event
fct-traffic
fct-netscan
waf
gtp
dns
ssh
ssl
custom-skipidx
list / elements=string
Custom-Skipidx.
device-type
string
    Choices:
  • FortiGate ←
  • FortiManager
  • FortiClient
  • FortiMail
  • FortiWeb
  • FortiSandbox
  • FortiProxy
Device type.
FortiGate - Set device type to FortiGate.
FortiManager - Set device type to FortiManager
FortiClient - Set device type to FortiClient.
FortiMail - Set device type to FortiMail.
FortiWeb - Set device type to FortiWeb.
FortiSandbox - Set device type to FortiSandbox
FortiProxy - Set device type to FortiProxy
id
integer
Default:
0
Add or Edit log index fields.
index-field
string
Field to be added to skip index.
log-type
string
    Choices:
  • app-ctrl ←
  • attack
  • content
  • dlp
  • emailfilter
  • event
  • generic
  • history
  • traffic
  • virus
  • voip
  • webfilter
  • netscan
  • fct-event
  • fct-traffic
  • fct-netscan
  • waf
  • gtp
  • dns
  • ssh
  • ssl
  • file-filter
  • asset
  • protocol
  • siem
Log type.
app-ctrl
attack
content
dlp
emailfilter
event
generic
history
traffic
virus
voip
webfilter
netscan
fct-event
fct-traffic
fct-netscan
waf
gtp
dns
ssh
ssl
file-filter
asset
database-name
string
Database name.
database-type
string
    Choices:
  • mysql
  • postgres ←
Database type.
mysql - MySQL database.
postgres - PostgreSQL local database.
device-count-high
string
    Choices:
  • disable ←
  • enable
Must set to enable if the count of registered devices is greater than 8000.
disable - Set to disable if device count is less than 8000.
enable - Set to enable if device count is equal to or greater than 8000.
event-table-partition-time
integer
Default:
0
Maximum SQL database table partitioning time range in minute (0 for unlimited) for event logs.
fct-table-partition-time
integer
Default:
240
Maximum SQL database table partitioning time range in minute (0 for unlimited) for FortiClient logs.
logtype
list / elements=string
    Choices:
  • none
  • app-ctrl
  • attack
  • content
  • dlp
  • emailfilter
  • event
  • generic
  • history
  • traffic
  • virus
  • voip
  • webfilter
  • netscan
  • fct-event
  • fct-traffic
  • fct-netscan
  • waf
  • gtp
  • dns
  • ssh
  • ssl
  • file-filter
  • asset
  • protocol
  • siem
Log type.
password
string
Password for login remote database.
prompt-sql-upgrade
string
    Choices:
  • disable
  • enable ←
Prompt to convert log database into SQL database at start time on GUI.
disable - Do not prompt to upgrade log database to SQL database at start time on GUI.
enable - Prompt to upgrade log database to SQL database at start time on GUI.
rebuild-event
string
    Choices:
  • disable
  • enable ←
Disable/Enable rebuild event during SQL database rebuilding.
disable - Do not rebuild event during SQL database rebuilding.
enable - Rebuild event during SQL database rebuilding.
rebuild-event-start-time
string
Rebuild event starting date and time <hh:mm yyyy/mm/dd>.
server
string
Database IP or hostname.
start-time
string
Start date and time <hh:mm yyyy/mm/dd>.
status
string
    Choices:
  • disable
  • local ←
SQL database status.
disable - Disable SQL database.
local - Enable local database.
text-search-index
string
    Choices:
  • disable ←
  • enable
Disable/Enable text search index.
disable - Do not create text search index.
enable - Create text search index.
traffic-table-partition-time
integer
Default:
0
Maximum SQL database table partitioning time range in minute (0 for unlimited) for traffic logs.
ts-index-field
list / elements=string
Ts-Index-Field.
category
string
Category of text search index fields.
value
string
Fields of text search index.
username
string
User name for login remote database.
utm-table-partition-time
integer
Default:
0
Maximum SQL database table partitioning time range in minute (0 for unlimited) for UTM logs.
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: SQL settings.
     fmgr_system_sql:
        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, ...]
        system_sql:
           background-rebuild: <value in [disable, enable]>
           custom-index:
             -
                 case-sensitive: <value in [disable, enable]>
                 device-type: <value in [FortiGate, FortiManager, FortiClient, ...]>
                 id: <value of integer>
                 index-field: <value of string>
                 log-type: <value in [none, app-ctrl, attack, ...]>
           database-name: <value of string>
           database-type: <value in [mysql, postgres]>
           device-count-high: <value in [disable, enable]>
           event-table-partition-time: <value of integer>
           fct-table-partition-time: <value of integer>
           logtype:
             - none
             - app-ctrl
             - attack
             - content
             - dlp
             - emailfilter
             - event
             - generic
             - history
             - traffic
             - virus
             - voip
             - webfilter
             - netscan
             - fct-event
             - fct-traffic
             - fct-netscan
             - waf
             - gtp
             - dns
             - ssh
             - ssl
             - file-filter
             - asset
             - protocol
             - siem
           password: <value of string>
           prompt-sql-upgrade: <value in [disable, enable]>
           rebuild-event: <value in [disable, enable]>
           rebuild-event-start-time: <value of string>
           server: <value of string>
           start-time: <value of string>
           status: <value in [disable, local]>
           text-search-index: <value in [disable, enable]>
           traffic-table-partition-time: <value of integer>
           ts-index-field:
             -
                 category: <value of string>
                 value: <value of string>
           username: <value of string>
           utm-table-partition-time: <value of integer>
           custom-skipidx:
             -
                 device-type: <value in [FortiGate, FortiManager, FortiClient, ...]>
                 id: <value of integer>
                 index-field: <value of string>
                 log-type: <value in [app-ctrl, attack, content, ...]>
           compress-table-min-age: <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)