fortinet.fortimanager.fmgr_waf_profile модуль — Настройка межсетевого экрана веб-приложений.
Примечание
Этот модуль входит в коллекцию fortinet.fortimanager (версия 2.7.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install fortinet.fortimanager.
Чтобы использовать ее в книге задач, укажите: fortinet.fortimanager.fmgr_waf_profile.
Новый в fortinet.fortimanager 1.0.0
Обзор
- Этот модуль позволяет настроить устройство FortiManager.
- Примеры включают все параметры и значения, которые необходимо скорректировать в источниках данных перед использованием.
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен для доступа к FortiManager без использования имени пользователя и пароля. |
adom строка / обязательно | Параметр (adom) в запрошенном URL. |
bypass_validation логический тип | Устанавливается в значение True только при расхождениях схемы модуля со структурой API FortiManager, модуль продолжит выполнение без валидации параметров. Выбираемые значения:
|
enable_log логический тип | Включить/выключить логирование для задачи. Выбираемые значения:
|
forticloud_access_token строка | Авторизовать клиента Ansible с помощью токена доступа к API forticloud. |
proposed_method строка | Переопределенный метод для основного запроса Json RPC. Выбираемые значения:
|
rc_failed список / элементы=целое число | Список кодов rc, с которыми будут переопределены условия неудачи. |
rc_succeeded список / элементы=целое число | Список кодов rc, с которыми будут переопределены условия успеха. |
state строка / обязательно | Директива для создания, обновления или удаления объекта. Выбираемые значения:
|
waf_profile словарь | Настройка верхнего уровня параметров. |
|
address_list словарь |
Устарело, пожалуйста, переименуйте на address_list. Список адресов. |
|
blocked_address любой тип |
(список или строка) Устарело, пожалуйста, переименуйте на blocked_address. Заблокированный адрес. |
|
blocked_log строка |
Устарело, пожалуйста, переименуйте на blocked_log. Включить/выключить логирование заблокированных адресов. Выбираемые значения:
|
|
severity строка |
Уровень серьезности. Выбираемые значения:
|
|
status строка |
Статус. Выбираемые значения:
|
|
trusted_address любой тип |
(список или строка) Устарело, пожалуйста, переименуйте на trusted_address. Доверенный адрес. |
|
comment строка |
Комментарий. |
|
constraint словарь |
Ограничение. |
|
content_length словарь |
Устарело, пожалуйста, переименуйте на content_length. Длина содержимого. |
|
action строка |
Действие. Выбираемые значения:
|
|
length целое число |
Длина содержимого HTTP в байтах. |
|
log строка |
Включить/выключить логирование. Выбираемые значения:
|
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
exception list / elements=dictionary |
Исключение. |
|
address string |
IP-адрес хоста. |
|
content-length string |
Устарело, переименуйте в content_length. Длина HTTP-контента в запросе. Choices:
|
|
header-length string |
Устарело, переименуйте в header_length. Длина HTTP-заголовка в запросе. Choices:
|
|
hostname string |
Включить/выключить проверку имени хоста. Choices:
|
|
id integer |
ID исключения. |
|
line-length string |
Устарело, переименуйте в line_length. Длина HTTP-строки в запросе. Choices:
|
|
malformed string |
Включить/выключить проверку некорректных HTTP-запросов. Choices:
|
|
max-cookie string |
Устарело, переименуйте в max_cookie. Максимальное количество cookie в HTTP-запросе. Choices:
|
|
max-header-line string |
Устарело, переименуйте в max_header_line. Максимальное количество строк HTTP-заголовка. Choices:
|
|
max-range-segment string |
Устарело, переименуйте в max_range_segment. Максимальное количество сегментов диапазона в строке HTTP-диапазона. Choices:
|
|
max-url-param string |
Устарело, переименуйте в max_url_param. Максимальное количество параметров в URL. Choices:
|
|
method string |
Включить/выключить проверку HTTP-метода. Choices:
|
|
param-length string |
Устарело, переименуйте в param_length. Максимальная длина параметра в URL, HTTP POST запросе или HTT… Choices:
|
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/выключить сопоставление шаблонов на основе регулярных выражений. Choices:
|
|
url-param-length string |
Устарело, переименуйте в url_param_length. Максимальная длина параметра в URL. Choices:
|
|
version string |
Включить/выключить проверку версии HTTP. Choices:
|
|
header-length dictionary |
Устарело, пожалуйста, переименуйте в header_length. Длина заголовка. |
|
action string |
Действие. Choices:
|
|
length integer |
Длина HTTP-заголовка в байтах |
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
hostname dictionary |
Имя хоста. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
line-length dictionary |
Устарело, пожалуйста, переименуйте в line_length. Длина строки. |
|
action string |
Действие. Choices:
|
|
length integer |
Длина HTTP-строки в байтах |
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
malformed dictionary |
Некорректно сформированный запрос. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
max-cookie dictionary |
Устарело, переименуйте в max_cookie. Максимальное количество файлов cookie. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
max-cookie integer |
Устарело, переименуйте в max_cookie. Максимальное количество файлов cookie в HTTP-запросе |
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
max-header-line dictionary |
Устарело, переименуйте в max_header_line. Максимальная длина заголовка. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
max-header-line integer |
Устарело, переименуйте в max_header_line. Максимальное количество строк заголовка HTTP |
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
max-range-segment dictionary |
Устарело, переименуйте в max_range_segment. Максимальный сегмент диапазона. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить ведение журнала. Choices:
|
|
max-range-segment integer |
Устарело, переименуйте в max_range_segment. Максимальное количество сегментов диапазона в строке диапазона HTTP |
|
severity string |
Серьезность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
max-url-param dictionary |
Устарело, переименуйте в max_url_param. Максимальное количество параметров URL. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
max-url-param integer |
Устарело, переименуйте в max_url_param. Максимальное количество параметров в URL. |
|
severity string |
Серьезность. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
method dictionary |
Метод. |
|
action string |
Действие. Варианты:
|
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Серьезность. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
param-length dictionary |
Устарело, переименуйте в param_length. Длина параметра. |
|
action string |
Действие. Варианты:
|
|
length integer |
Максимальная длина параметра в URL, HTTP POST запросе или HTTP теле в байтах. |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Серьезность. Варианты:
|
|
status string |
Включить/отключить ограничение. Варианты:
|
|
url-param-length dictionary |
Устарело, переименуйте в url_param_length. Длина параметра URL. |
|
action string |
Действие. Варианты:
|
|
length integer |
Максимальная длина параметра URL в байтах. |
|
log string |
Включить/отключить ведение журнала. Варианты:
|
|
severity string |
Серьёзность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
version dictionary |
Версия. |
|
action string |
Действие. Choices:
|
|
log string |
Включить/выключить логирование. Choices:
|
|
severity string |
Серьёзность. Choices:
|
|
status string |
Включить/выключить ограничение. Choices:
|
|
extended-log string |
Устарело, переименуйте в extended_log. Включить/выключить расширенное логирование. Choices:
|
|
external string |
Отключить/Включить внешний HTTP Inspection. Choices:
|
|
method dictionary |
Метод. |
|
default-allowed-methods list / elements=string |
Устарело, переименуйте в default_allowed_methods. Методы. Choices:
|
|
log string |
Включить/выключить логирование. Choices:
|
|
method-policy list / elements=dictionary |
Устарело, переименуйте в method_policy. Политика метода. |
|
address string |
IP-адрес хоста. |
|
allowed-methods list / elements=string |
Устарело, переименуйте в allowed_methods. Допустимые методы. Choices:
|
|
id integer |
ID политики HTTP-метода. |
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/выключить соответствие шаблона на основе регулярных выражений. Choices:
|
|
severity string |
Серьёзность. Choices:
|
|
status string |
Статус. Choices:
|
|
name string / required |
Имя профиля WAF. |
|
signature dictionary |
Подпись. |
|
credit-card-detection-threshold integer |
Устарело, переименуйте в credit_card_detection_threshold. Минимальное количество кредитных карт для обнаружения нарушений… |
|
custom-signature list / elements=dictionary |
Устарело, переименуйте в custom_signature. Пользовательская подпись. |
|
action string |
Действие. Choices:
|
|
case-sensitivity string |
Устарело, переименуйте в case_sensitivity. Регистрозависимость в шаблоне. Choices:
|
|
direction string |
Направление трафика. Choices:
|
|
log string |
Включить/отключить ведение журнала. Choices:
|
|
name string |
Имя подписи. |
|
pattern string |
Шаблон сопоставления. |
|
severity string |
Серьезность. Choices:
|
|
status string |
Статус. Choices:
|
|
target list / elements=string |
Сопоставление целевого объекта HTTP. Choices:
|
|
disabled-signature any |
(list or str) Устарело, переименуйте в disabled_signature. Отключенные подписи |
|
disabled-sub-class any |
(list or str) Устарело, переименуйте в disabled_sub_class. Отключенные подклассы подписей. |
|
main-class dictionary |
Устарело, переименуйте в main_class. Главный класс. |
|
action string |
Действие. Choices:
|
|
id integer |
ID главного класса подписи. |
|
log string |
Включить/отключить ведение журнала. Choices:
|
|
severity string |
Уровень серьезности. Варианты:
|
|
status string |
Статус. Варианты:
|
|
url-access list / elements=dictionary |
Устаревшее, пожалуйста, переименуйте на url_access. Доступ к URL. |
|
access-pattern list / elements=dictionary |
Устаревшее, пожалуйста, переименуйте на access_pattern. Шаблон доступа. |
|
id integer |
Идентификатор шаблона доступа к URL. |
|
negate string |
Включить/выключить отрицание совпадения. Варианты:
|
|
pattern string |
Шаблон URL. |
|
regex string |
Включить/выключить поиск шаблона на основе регулярных выражений. Варианты:
|
|
srcaddr string |
Адрес источника. |
|
action string |
Действие. Варианты:
|
|
address string |
Адрес хоста. |
|
id integer |
Идентификатор доступа к URL. |
|
log string |
Включить/выключить ведение журнала. Варианты:
|
|
severity string |
Уровень серьезности. Варианты:
|
workspace_locking_adom string | ADOM для блокировки в режиме рабочего пространства FortiManager, значение может быть global и другие, включая root. |
workspace_locking_timeout integer | Максимальное время в секундах ожидания, пока другой пользователь не освободит блокировку рабочего пространства. По умолчанию: |
Примечания
Примечание
- Начиная с версии 2.4.0, все входные аргументы имеют имя в стиле snake_case. Пожалуйста, измените аргументы, такие как “var-name”, на “var_name”. Старые имена аргументов все ещё доступны, но вы получите предупреждения об устаревании. Вы можете проигнорировать это предупреждение, установив deprecation_warnings=False в ansible.cfg.
- Поддержка работы в режиме блокировки рабочего пространства реализована в этом модуле FortiManager, параметры workspace_locking_adom и workspace_locking_timeout помогают в этом.
- Для создания или обновления объекта используйте директиву state present.
- Для удаления объекта используйте директиву state absent.
- Обычно выполнение одного модуля может завершиться ошибкой при возвращении ненулевого rc. Также можно настроить условия завершения с помощью параметров rc_failed и rc_succeeded
Примеры
- name: Example playbook (generated based on argument schema)
hosts: fortimanagers
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Web application firewall configuration.
fortinet.fortimanager.fmgr_waf_profile:
# 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: present # <value in [present, absent]>
waf_profile:
comment: <string>
extended_log: <value in [disable, enable]>
external: <value in [disable, enable]>
name: <string>
url_access:
-
access_pattern:
-
id: <integer>
negate: <value in [disable, enable]>
pattern: <string>
regex: <value in [disable, enable]>
srcaddr: <string>
action: <value in [bypass, permit, block]>
address: <string>
id: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
address_list:
blocked_address: <list or string>
blocked_log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
trusted_address: <list or string>
constraint:
content_length:
action: <value in [allow, block]>
length: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
exception:
-
address: <string>
content_length: <value in [disable, enable]>
header_length: <value in [disable, enable]>
hostname: <value in [disable, enable]>
id: <integer>
line_length: <value in [disable, enable]>
malformed: <value in [disable, enable]>
max_cookie: <value in [disable, enable]>
max_header_line: <value in [disable, enable]>
max_range_segment: <value in [disable, enable]>
max_url_param: <value in [disable, enable]>
method: <value in [disable, enable]>
param_length: <value in [disable, enable]>
pattern: <string>
regex: <value in [disable, enable]>
url_param_length: <value in [disable, enable]>
version: <value in [disable, enable]>
header_length:
action: <value in [allow, block]>
length: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
hostname:
action: <value in [allow, block]>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
line_length:
action: <value in [allow, block]>
length: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
malformed:
action: <value in [allow, block]>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
max_cookie:
action: <value in [allow, block]>
log: <value in [disable, enable]>
max_cookie: <integer>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
max_header_line:
action: <value in [allow, block]>
log: <value in [disable, enable]>
max_header_line: <integer>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
max_range_segment:
action: <value in [allow, block]>
log: <value in [disable, enable]>
max_range_segment: <integer>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
max_url_param:
action: <value in [allow, block]>
log: <value in [disable, enable]>
max_url_param: <integer>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
method:
action: <value in [allow, block]>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
param_length:
action: <value in [allow, block]>
length: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
url_param_length:
action: <value in [allow, block]>
length: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
version:
action: <value in [allow, block]>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
method:
default_allowed_methods:
- delete
- get
- head
- options
- post
- put
- trace
- others
- connect
log: <value in [disable, enable]>
method_policy:
-
address: <string>
allowed_methods:
- delete
- get
- head
- options
- post
- put
- trace
- others
- connect
id: <integer>
pattern: <string>
regex: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
signature:
credit_card_detection_threshold: <integer>
custom_signature:
-
action: <value in [allow, block, erase]>
case_sensitivity: <value in [disable, enable]>
direction: <value in [request, response]>
log: <value in [disable, enable]>
name: <string>
pattern: <string>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
target:
- arg
- arg-name
- req-body
- req-cookie
- req-cookie-name
- req-filename
- req-header
- req-header-name
- req-raw-uri
- req-uri
- resp-body
- resp-hdr
- resp-status
disabled_signature: <list or string>
disabled_sub_class: <list or string>
main_class:
action: <value in [allow, block, erase]>
id: <integer>
log: <value in [disable, enable]>
severity: <value in [low, medium, high]>
status: <value in [disable, enable]>
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для этого модуля:
Ключ | Описание |
|---|---|
meta словарь | Результат запроса. Возвращается: всегда |
|
request_url строка |
Полный URL запроса. Возвращается: всегда Пример: |
|
response_code целое число |
Статус API-запроса. Возвращается: всегда Пример: |
|
response_data список / элементы=строка |
Ответ API. Возвращается: всегда |
|
response_message строка |
Дескриптивное сообщение ответа API. Возвращается: всегда Пример: |
|
system_information словарь |
Информация о целевой системе. Возвращается: всегда |
rc целое число | Статус запроса. Возвращается: всегда Пример: |
version_check_warning список / элементы=строка | Предупреждение, если параметры, используемые в книге задач, не поддерживаются текущей версией FortiManager. Возвращается: сложный |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/fortinet/fortimanager/fmgr_waf_profile_module.html