Spec-Zone.ru › Ansible 2.5

aws_waf_condition - создание и удаление условий WAF

Новое в версии 2.5.

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Обзор

  • Прочитайте документацию AWS по WAF https://aws.amazon.com/documentation/waf/

Требования

Ниже приведены требования к хосту, на котором будет выполняться этот модуль.

  • python >= 2.6
  • boto

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key Значение по умолчанию:
None
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

Псевдонимы: ec2_access_key, access_key
aws_secret_key Значение по умолчанию:
None
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

Псевдонимы: ec2_secret_key, secret_key
ec2_url Значение по умолчанию:
None
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.
filters
Список фильтров для сопоставления
Для type=byte, допустимые ключи — field_to_match, position, header, transformation
Для type=geo, единственный допустимый ключ — country
Для type=ip, единственный допустимый ключ — ip_address
Для type=regex, допустимые ключи — field_to_match, transformation и regex_pattern
Для type=size, допустимые ключи — field_to_match, transformation, comparison и size
Для type=sql, допустимые ключи — field_to_match и transformation
Для type=xss, допустимые ключи — field_to_match и transformation
field_to_match может быть одним из uri, query_string, header method и body
Если field_to_match — header, то также необходимо указать header
transformation может быть одним из none, compress_white_space, html_entity_decode, lowercase, cmd_line, url_decode
position может быть одним из exactly, starts_with, ends_with, contains, contains_word,
comparison может быть одним из EQ, NE, LE, LT, GE, GT,
target_string имеет максимальную длину 50 байт
regex_pattern — это словарь с ключом name и списком строк для сопоставления regex_strings
name
обязательно
Имя условия WAF для управления
profile
(добавлено в 1.6)
Значение по умолчанию:
None
Использует профиль boto. Работает только с boto >= 2.24.0.
purge_filters
Удалить существующие фильтры из условия, если они не переданы в filters. Значение по умолчанию — false
region
Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

Псевдонимы: aws_region, ec2_region
security_token
(добавлено в 1.6)
Значение по умолчанию:
None
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

Псевдонимы: access_token
state
    Варианты:
  • present ←
  • absent
Условие должно быть present или absent
type
    Варианты:
  • byte
  • geo
  • ip
  • regex
  • size
  • sql
  • xss
Тип сопоставления
validate_certs
(добавлено в 1.5)
    Варианты:
  • no
  • yes ←
При значении "no", сертификаты SSL не будут проверены для версий boto >= 2.6.0.

Примечания

Примечание

  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета AWS_URL или EC2_URL, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

- name: create WAF byte condition
  aws_waf_condition:
    name: my_byte_condition
    filters:
    - field_to_match: header
      position: STARTS_WITH
      target_string: Hello
      header: Content-type
    type: byte

- name: create WAF geo condition
  aws_waf_condition:
    name: my_geo_condition
    filters:
      - country: US
      - country: AU
      - country: AT
    type: geo

- name: create IP address condition
  aws_waf_condition:
    name: "{{ resource_prefix }}_ip_condition"
    filters:
      - ip_address: "10.0.0.0/8"
      - ip_address: "192.168.0.0/24"
    type: ip

- name: create WAF regex condition
  aws_waf_condition:
    name: my_regex_condition
    filters:
      - field_to_match: query_string
        regex_pattern:
          name: greetings
          regex_strings:
            - '[hH]ello'
            - '^Hi there'
            - '.*Good Day to You'
    type: regex

- name: create WAF size condition
  aws_waf_condition:
    name: my_size_condition
    filters:
      - field_to_match: query_string
        size: 300
        comparison: GT
    type: size

- name: create WAF sql injection condition
  aws_waf_condition:
    name: my_sql_condition
    filters:
      - field_to_match: query_string
        transformation: url_decode
    type: sql

- name: create WAF xss condition
  aws_waf_condition:
    name: my_xss_condition
    filters:
      - field_to_match: query_string
        transformation: url_decode
    type: xss

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие — поля, уникальные для данного модуля:

Ключ Возвращаемое значение Описание
condition
сложное
всегда
Возвращаемое значение условия операцией

size_constraint_set_id
строка
при типе size и наличии состояния
Идентификатор набора ограничений размера

Пример:
de84b4b3-578b-447e-a9a0-0db35c995656
ip_set_id
строка
при типе ip и наличии состояния
Идентификатор условия

Пример:
78ad334a-3535-4036-85e6-8e11e745217b
condition_id
строка
при наличии состояния
Идентификатор условия, независимый от типа

Пример:
dd74b1ff-8c06-4a4f-897a-6b23605de413
ip_set_descriptors
сложное
при типе ip и наличии состояния
Список фильтров IP-адресов

type
строка
всегда
Тип IP-адреса (IPV4 или IPV6)

Пример:
IPV4
value
строка
всегда
IP-адрес

Пример:
10.0.0.0/8
geo_match_constraints
сложное
при типе geo и наличии состояния
Список географических ограничений

type
строка
Тип географического ограничения

Пример:
Страна
value
строка
Значение географического ограничения (обычно код страны)

Пример:
AT
byte_match_tuples
сложное
всегда
Список кортежей соответствия байтов

text_transformation
строка
Преобразование, применяемое к полю перед сопоставлением

Пример:
NONE
field_to_match
сложное
всегда
Поле для сопоставления

data
строка
Конкретный заголовок (если тип заголовок)

Пример:
content-type
type
строка
Тип поля

Пример:
HEADER
target_string
строка
Строка для поиска

Пример:
Hello
positional_constraint
строка
Позиция в поле для сопоставления

Пример:
STARTS_WITH
name
строка
при наличии состояния
Имя условия

Пример:
my_waf_condition
geo_match_set_id
строка
при типе geo и наличии состояния
Идентификатор набора географических соответствий

Пример:
dd74b1ff-8c06-4a4f-897a-6b23605de413
size_constraints
сложное
при типе size и наличии состояния
Список ограничений размера

text_transformation
строка
Преобразование, применяемое к тексту перед сопоставлением

Пример:
NONE
field_to_match
сложное
Поле, к которому применяется ограничение размера

type
строка
Имя поля

Пример:
QUERY_STRING
comparison_operator
строка
Оператор сравнения

Пример:
GT
size
целое число
Размер для сравнения с полем

Пример:
300
regex_match_tuples
сложное
при типе regex и наличии состояния
Список соответствий по регулярным выражениям

text_transformation
строка
Преобразование, применяемое к тексту перед сопоставлением

Пример:
NONE
field_to_match
сложное
Поле, к которому применяется соответствие по регулярному выражению

type
строка
при типе regex и наличии состояния
Имя поля

Пример:
QUERY_STRING
regex_pattern_set_id
строка
Идентификатор набора регулярных выражений

Пример:
6fdf7f2d-9091-445c-aef2-98f3c051ac9e
byte_match_set_id
строка
всегда
Идентификатор набора соответствий байтов

Пример:
c4882c96-837b-44a2-a762-4ea87dbf812b
regex_match_set_id
string
when type is regex and state is present
Идентификатор набора соответствий по регулярному выражению

Пример:
5ea3f6a8-3cd3-488b-b637-17b79ce7089c
sql_injection_match_set_id
string
when type is sql and state is present
Идентификатор набора соответствий для SQL-инъекций

Пример:
de84b4b3-578b-447e-a9a0-0db35c995656
sql_injection_match_tuples
complex
when type is sql and state is present
Список наборов соответствий для SQL-инъекций

text_transformation
string
Преобразование, применяемое к тексту перед сопоставлением

Пример:
URL_DECODE
field_to_match
complex
Поле, к которому применяется сопоставление SQL-инъекций

type
string
Имя поля

Пример:
QUERY_STRING
xss_match_tuples
complex
when type is xss and state is present
Список наборов соответствий для XSS

text_transformation
string
Преобразование, применяемое к тексту перед сопоставлением

Пример:
URL_DECODE
field_to_match
complex
Поле, к которому применяется сопоставление XSS

type
string
Имя поля

Пример:
QUERY_STRING
xss_match_set_id
string
when type is xss and state is present
Идентификатор набора соответствий для XSS

Пример:
de84b4b3-578b-447e-a9a0-0db35c995656


Статус

Этот модуль помечен как превью, что означает отсутствие гарантии обратной совместимости интерфейса.

Автор

  • Will Thames (@willthames)
  • Mike Mochan (@mmochan)

Подсказка

Если вы обнаружите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/aws_waf_condition_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API