модуль azure.azcollection.azure_rm_applicationfirewallpolicy – Управление экземпляром политики брандмауэра приложений
Примечание
Этот модуль входит в коллекцию azure.azcollection (версия 3.18.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install azure.azcollection. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: azure.azcollection.azure_rm_applicationfirewallpolicy.
Новое в azure.azcollection 3.1.0
Краткое описание
- Создание, обновление или удаление экземпляра политики брандмауэра приложений.
Требования
На хосте, который выполняет этот модуль, необходимы следующие компоненты.
- python >= 2.7
- На хосте, который выполняет этот модуль, должна быть установлена коллекция azure.azcollection из Galaxy
- Все пакеты Python, перечисленные в requirements.txt коллекции, должны быть установлены с помощью pip на хосте, который выполняет модули из azure.azcollection
- Полные инструкции по установке приведены по адресу https://galaxy.ansible.com/azure/azcollection
Параметры
Параметр | Комментарии |
|---|---|
ad_user string | Имя пользователя Active Directory. Используйте при аутентификации с помощью пользователя Active Directory, а не субъекта-службы. |
adfs_authority_url string добавлено в azure.azcollection 0.0.1 | URL-адрес центра Azure AD. Используйте при аутентификации с помощью имени пользователя и пароля, если у вас есть собственный центр ADFS. |
api_profile string добавлено в azure.azcollection 0.0.1 | Выбирает профиль API для взаимодействия со службами Azure. Значение по умолчанию По умолчанию: |
append_tags boolean | Определяет, является ли поле тегов каноническим или просто добавляет теги к существующим. Если поле каноническое, все теги, отсутствующие в параметре tags, будут удалены из метаданных объекта. Варианты:
|
auth_source string добавлено в azure.azcollection 0.0.1 | Определяет источник учетных данных для аутентификации. Также можно задать с помощью переменной окружения Если задано значение Если задано значение Если задано значение Если задано значение Если задано значение Параметр Варианты:
|
cert_validation_mode string добавлено в azure.azcollection 0.0.1 | Определяет поведение проверки сертификатов для конечных точек Azure. По умолчанию все модули проверяют сертификат сервера, однако при использовании HTTPS-прокси или Azure Stack может потребоваться отключить эту проверку, передав Варианты:
|
client_id string | Идентификатор клиента Azure. Используйте при аутентификации с помощью субъекта-службы или управляемого удостоверения (msi). Также можно задать с помощью переменной окружения |
cloud_environment string добавлено в azure.azcollection 0.0.1 | Для облачных сред, отличных от общедоступного облака США, укажите имя среды (согласно Azure Python SDK, например, По умолчанию: |
custom_rules list / elements=dictionary | Пользовательские правила политики. |
|
action string |
Тип действия. Варианты:
|
|
group_by_user_session list / elements=dictionary |
Список условий группировки по идентификатору пользовательского сеанса. |
|
group_by_variables list / elements=dictionary |
Список переменных условий группировки. |
|
variable_name string |
Переменная условия пользовательского сеанса. Варианты:
|
|
match_conditions list / elements=dictionary / обязательный |
Список условий сопоставления. |
|
match_values list / elements=string / обязательный |
Значение для сопоставления. |
|
match_variables list / elements=dictionary / обязательный |
Список переменных сопоставления. |
|
selector string |
Селектор переменной сопоставления. |
|
variable_name string / обязательный |
Переменная сопоставления. Варианты:
|
|
negation_conditon boolean |
Указывает, является ли условие инвертированным. Варианты:
|
|
operator string / обязательный |
Оператор сопоставления. Варианты:
|
|
transforms list / elements=string |
Список преобразований. Варианты:
|
|
name string |
Имя ресурса, уникальное в пределах политики. Это имя можно использовать для доступа к ресурсу. |
|
priority integer / обязательный |
Приоритет правила. Правила с меньшим значением проверяются раньше правил с большим значением. |
|
rate_limit_duration string |
Период, в течение которого применяется политика ограничения частоты запросов. Применяется только если ruleType имеет значение RateLimitRule. Варианты:
|
|
rate_limit_threshold integer |
Порог ограничения частоты запросов, применяемый, если ruleType имеет значение RateLimitRule. Должен быть не меньше 1. |
|
rule_type string / обязательный |
Тип правила. Варианты:
|
|
state string |
Определяет, включено или отключено пользовательское правило. Если значение не указано, по умолчанию используется Enabled. Варианты:
|
disable_instance_discovery boolean добавлено в azure.azcollection 2.3.0 | Определяет, выполняется ли обнаружение экземпляра при попытке аутентификации. Если задать значение true, обнаружение экземпляра и проверка центра будут полностью отключены. Эта возможность предназначена для сценариев, в которых недоступна конечная точка метаданных, например в частных облаках или Azure Stack. Процесс обнаружения экземпляра включает получение метаданных центра с https://login.microsoft.com/ для проверки центра. Если задать значение **True**, проверка центра будет отключена. Поэтому крайне важно убедиться, что настроенный узел центра является допустимым и заслуживающим доверия. Задается в профиле файла учетных данных или с помощью переменной окружения Варианты:
|
location string | Допустимое расположение Azure. По умолчанию используется расположение группы ресурсов. |
log_mode string | Родительский аргумент. |
log_path string | Родительский аргумент. |
managed_rules dictionary | Описывает структуру managedRules. |
|
exclusions list / elements=dictionary |
Исключения, применяемые к политике. |
|
exclusion_managed_rule_sets list / elements=dictionary |
Наборы управляемых правил, связанные с исключением. |
|
rule_groups list / elements=dictionary |
Определяет группы правил, применяемые к набору правил. |
|
rule_group_name string / обязательный |
Группа управляемых правил для исключения. |
|
rules list / elements=dictionary |
Список исключаемых правил. Если ни одно правило не указано, будут исключены все правила в группе. |
|
rule_id string |
Идентификатор управляемого правила. |
|
rule_set_type string / обязательный |
Определяет тип используемого набора правил. |
|
rule_set_version string / обязательный |
Определяет версию используемого набора правил. |
|
match_variable string / обязательный |
Исключаемая переменная. Варианты:
|
|
selector string / обязательный |
Если matchVariable является коллекцией, оператор используется для указания элементов коллекции, к которым применяется это исключение. |
|
selector_match_operator string / обязательный |
Если matchVariable является коллекцией, оператор применяется к селектору, чтобы указать элементы коллекции, к которым относится это исключение. Варианты:
|
|
managed_rule_sets list / elements=dictionary / обязательный |
Наборы управляемых правил, связанные с политикой. |
|
rule_group_overrides list / elements=dictionary |
Определяет переопределения групп правил, применяемые к набору правил. |
|
rule_group_name string / обязательный |
Группа управляемых правил, параметры которой нужно переопределить. |
|
rules list / elements=dictionary |
Список правил, которые будут отключены. Если ни одно правило не указано, будут отключены все правила в группе. |
|
action string |
Определяет действие переопределения, применяемое при совпадении правила. Варианты:
|
|
rule_id string / обязательный |
Идентификатор управляемого правила. |
|
sensitivity string |
Определяет уровень чувствительности переопределения, применяемый при совпадении правила. Варианты:
|
|
state string |
Состояние управляемого правила. Если не указано, по умолчанию используется Варианты:
|
|
rule_set_type string / обязательный |
Задает тип набора правил, который следует использовать. |
|
rule_set_version string / обязательный |
Задает версию набора правил, которую следует использовать. |
name string / обязательный | Имя политики межсетевого экрана приложений. |
oidc_token string добавлено в azure.azcollection 3.17.0 | Токен OpenID Connect (OIDC) (JWT), используемый для аутентификации с помощью удостоверения рабочей нагрузки. Этот токен обменивается с Azure AD с использованием федеративного удостоверения OIDC. Полезно в системах CI (например, GitHub Actions и Azure DevOps), где токен OIDC предоставляется непосредственно платформой. Также можно задать с помощью переменной окружения |
oidc_token_file_path path добавлено в azure.azcollection 3.17.0 | Путь к файлу с токеном OpenID Connect (OIDC) (JWT), используемым для аутентификации с помощью удостоверения рабочей нагрузки. Файл должен содержать только необработанный токен. Этот способ обычно используется на платформах, которые сохраняют токены OIDC в файлах. Также можно задать с помощью переменной окружения |
password string | Пароль пользователя Active Directory. Используется для аутентификации от имени пользователя Active Directory, а не субъекта-службы. |
policy_settings dictionary | Параметры политики. |
|
custom_block_response_body string |
Если тип действия — block, пользователь может переопределить тело ответа. Тело необходимо указать в кодировке base64. |
|
custom_block_response_status_code integer |
Если тип действия — block, пользователь может переопределить код состояния ответа. |
|
file_upload_enforcement boolean |
Разрешить ли WAF ограничивать размер загружаемых файлов. Варианты:
|
|
file_upload_limit_in_mb integer |
Максимальный размер загружаемого файла в МБ для WAF. |
|
js_challenge_cookie_expiration_in_mins integer |
Время истечения срока действия файла cookie проверки JavaScript для межсетевого экрана веб-приложений в минутах. |
|
log_scrubbing dictionary |
Для очистки конфиденциальных полей журналов. |
|
scrubbing_rules list / элементы=dictionary |
Правила, применяемые для очистки журналов. |
|
match_variable string / обязательный |
Переменная, которую необходимо удалить из журналов. Варианты:
|
|
selector string |
Если matchVariable является коллекцией, оператор указывает, к каким элементам коллекции применяется это правило. |
|
selector_match_operator string / обязательный |
Если matchVariable является коллекцией, оператор применяется к селектору, чтобы указать, к каким элементам коллекции применяется это правило. Варианты:
|
|
state string |
Задает состояние правила очистки журналов. Варианты:
|
|
state string |
Состояние конфигурации очистки журналов. Варианты:
|
|
max_request_body_size_in_kb integer |
Максимальный размер тела запроса в КБ для WAF. |
|
mode string |
Режим политики. Варианты:
|
|
request_body_check boolean |
Разрешить ли WAF проверять тело запроса. Варианты:
|
|
request_body_enforcement boolean |
Разрешить ли WAF ограничивать размер тела запроса. Варианты:
|
|
request_body_inspect_limit_in_kb integer |
Максимальный предел проверки тела запроса для WAF в КБ. |
|
state string |
Состояние политики. Варианты:
|
profile string | Профиль безопасности из файла ~/.azure/credentials. |
resource_group string / обязательный | Имя группы ресурсов., |
secret string | Секрет клиента Azure. Используется для аутентификации с помощью субъекта-службы. |
state string | Задает требуемое состояние политики межсетевого экрана. Используйте Варианты:
|
subscription_id string | Идентификатор вашей подписки Azure. |
tags dictionary | Словарь пар строка:строка, назначаемых объекту в качестве метаданных. Теги метаданных объекта будут обновлены с использованием всех указанных значений. Чтобы удалить теги, задайте для параметра append_tags значение false. В настоящее время в тегах зон Azure DNS и служб Traffic Manager также нельзя использовать пробелы. Azure Front Door не поддерживает использование Azure Automation и Azure CDN поддерживают не более 15 тегов для ресурсов. |
tenant string | Идентификатор клиента Azure. Используется для аутентификации с помощью субъекта-службы. |
thumbprint string добавлено в azure.azcollection 1.14.0 | Отпечаток закрытого ключа, указанного в x509_certificate_path. Используется для аутентификации с помощью субъекта-службы. Обязательно, если задан x509_certificate_path. |
x509_certificate_path path добавлено в azure.azcollection 1.14.0 | Путь к сертификату X509 в формате PEM, используемому для создания субъекта-службы. Сертификат необходимо добавить к закрытому ключу. Используется для аутентификации с помощью субъекта-службы. |
Примечания
Примечание
- Для аутентификации в Azure можно передать параметры, задать переменные окружения, использовать профиль из ~/.azure/credentials или выполнить вход перед запуском задач или плейбука с помощью
az login. - Аутентификация также возможна с помощью субъекта-службы или пользователя Active Directory.
- Для аутентификации через OIDC передайте client_id, tenant и oidc_token или oidc_token_file_path либо задайте переменные окружения AZURE_CLIENT_ID, AZURE_TENANT и AZURE_FEDERATED_TOKEN или AZURE_FEDERATED_TOKEN_FILE.
- Для аутентификации через субъект-службу передайте subscription_id, client_id, secret и tenant либо задайте переменные окружения AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
- Для аутентификации от имени пользователя Active Directory передайте ad_user и password либо задайте в окружении AZURE_AD_USER и AZURE_PASSWORD.
- Кроме того, учетные данные можно хранить в ~/.azure/credentials. Это ini-файл, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant либо subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или задав переменную окружения AZURE_PROFILE.
См. также
См. также
- Вход с помощью Azure CLI
-
Инструкция по аутентификации с помощью команды
az login.
Примеры
- name: Create a new application firewall policy
azure_rm_applicationfirewallpolicy:
resource_group: "{{ resource_group }}"
name: "new{{ rpfx }}02"
location: australiasoutheast
policy_settings:
file_upload_enforcement: true
file_upload_limit_in_mb: 88
js_challenge_cookie_expiration_in_mins: 30
max_request_body_size_in_kb: 128
mode: Detection
request_body_check: true
request_body_enforcement: true
request_body_inspect_limit_in_kb: 128
state: Enabled
custom_block_response_status_code: 200
custom_block_response_body: Fredtest
log_scrubbing:
state: Enabled
scrubbing_rules:
- match_variable: RequestHeaderNames
selector_match_operator: Equals
selector: '*'
state: Enabled
custom_rules:
- action: Block
match_conditions:
- match_values:
- 10.1.0.0/24
- 10.2.0.0/24
match_variables:
- variable_name: RemoteAddr
negation_conditon: true
operator: IPMatch
transforms:
- Uppercase
- Lowercase
name: ruledefine01
priority: 21
rule_type: MatchRule
state: Enabled
- action: Block
group_by_user_session:
- group_by_variables:
- variable_name: ClientAddr
match_conditions:
- match_values:
- 10.1.0.0/24
- 10.2.0.0/24
match_variables:
- variable_name: RemoteAddr
negation_conditon: false
operator: IPMatch
name: ruledefine02
priority: 22
rule_type: RateLimitRule
rate_limit_threshold: 100
rate_limit_duration: OneMin
state: Enabled
managed_rules:
exclusions:
- match_variable: RequestHeaderNames
selector_match_operator: Equals
selector: IPMatch
exclusion_managed_rule_sets:
- rule_set_type: Microsoft_DefaultRuleSet
rule_set_version: 2.1
managed_rule_sets:
- rule_set_type: Microsoft_BotManagerRuleSet
rule_set_version: 1.0
- rule_set_type: Microsoft_DefaultRuleSet
rule_set_version: 2.1
- name: Delete the application firewall policy
azure_rm_applicationfirewallpolicy:
resource_group: "{{ resource_group }}"
name: firewallpolicy
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
firewall_policy complex | Список сведений о политике брандмауэра веб-приложений Возвращается: всегда |
|
custom_rules complex |
Пользовательские правила политики. Возвращается: при использовании |
|
action string |
Имя ресурса, уникальное в пределах политики. Это имя можно использовать для доступа к ресурсу. Возвращается: всегда Пример: |
|
match_conditions list / elements=string |
Список условий сопоставления. Возвращается: всегда Пример: |
|
name string |
Имя ресурса, уникальное в пределах политики. Это имя можно использовать для доступа к ресурсу. Возвращается: всегда Пример: |
|
priority integer |
Приоритет правила. Правила с меньшим значением оцениваются раньше правил с большим значением. Возвращается: всегда Пример: |
|
rule_type string |
Тип правила. Возвращается: всегда Пример: |
|
state string |
Указывает, включено или отключено пользовательское правило. Возвращается: всегда Пример: |
|
id string |
Идентификатор политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
|
location string |
Расположение политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
|
managed_rules complex |
Описывает структуру managedRules. Возвращается: при использовании |
|
exclusions list / elements=string |
Исключения, применяемые к политике. Возвращается: всегда Пример: |
|
managed_rule_sets list / elements=string |
Наборы управляемых правил, связанные с политикой. Возвращается: всегда Пример: |
|
name string |
Имя политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
|
policy_settings complex |
Настройки политики. Возвращается: при использовании |
|
file_upload_enforcement boolean |
Определяет, разрешено ли WAF применять ограничения на загрузку файлов. Возвращается: всегда Пример: |
|
file_upload_limit_in_mb integer |
Максимальный размер загружаемого файла для WAF в МБ. Возвращается: всегда Пример: |
|
js_challenge_cookie_expiration_in_mins integer |
Время действия файла cookie проверки JavaScript брандмауэра веб-приложений в минутах. Возвращается: всегда Пример: |
|
max_request_body_size_in_kb integer |
Максимальный размер тела запроса для WAF в КБ. Возвращается: всегда Пример: |
|
mode string |
Режим политики. Возвращается: всегда Пример: |
|
request_body_check boolean |
Определяет, разрешено ли WAF проверять тело запроса. Возвращается: всегда Пример: |
|
request_body_enforcement boolean |
Определяет, разрешено ли WAF применять ограничения на размер тела запроса. Возвращается: всегда Пример: |
|
state string |
Состояние политики. Возвращается: всегда Пример: |
|
provisioning_state string |
Состояние подготовки политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
|
resource_group string |
Имя группы ресурсов. Возвращается: всегда Пример: |
|
tags dictionary |
Теги политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
|
type string |
Тип политики брандмауэра веб-приложений. Возвращается: всегда Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/azure/azcollection/azure_rm_applicationfirewallpolicy_module.html