← Cloudflare One / cloudflare-one / traffic-policies
Политики HTTP
Политики HTTP позволяют фильтровать все запросы HTTP и HTTPS по URL-адресам, именам хостов, методам HTTP, типам файлов и другим атрибутам запроса. В отличие от сетевые политики работают на уровне 4 (TCP/UDP), тогда как политики HTTP работают на уровне 7 и могут проверять всё содержимое веб-трафика.
По умолчанию Gateway проверяет HTTP-трафик на порту 80 и с Расшифровка TLS включена, HTTPS-трафик на порту 443. Вы также можете настроить Gateway так, чтобы проверять HTTP/HTTPS-трафик на всех портах. Gateway поддерживает проверку HTTP/3 с помощью UDP proxy включена.
Политика HTTP состоит из Действие и логическое выражение, определяющее область действия политики. Чтобы построить выражение, выберите Селектор и Оператор, затем введите значение или диапазон значений в поле Значение поле. Можно использовать И и Или логические операторы для оценки нескольких условий.
Если условие в выражении объединяет атрибут query (например, Исходный IP) и атрибут ответа (например, Определённый IP-адрес), условие будет проверено при получении ответа.
Действия
Действия в HTTP-политиках позволяют выбрать, что делать с заданным набором элементов (доменами, IP-адресами, типами файлов и так далее). Для каждой политики можно назначить только одно действие.
Allow
Значение API: allow
Доступные селекторы
Трафик
- Access Infrastructure Target
- Доступ к приватному приложению
- Приложение
- Browser Isolation
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Профиль DLP
- Домен
- Download File Types
- Download Mime Type
- Является MCP
- Host
- Метод HTTP
- Ответ HTTP
- Экосистема пакета
- Имя пакета
- Пространство имён пакета
- URL пакета (PURL)
- Версия пакета
- Proxy Endpoint
- Security Categories
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- Источник трафика
- Upload File Types
- Upload Mime Type
- URL
- URL Path
- URL Path & Query
- URL Query
- Виртуальная сеть
Идентификация
Состояние устройства
Действие Allow разрешает исходящему трафику достигать указанных вами адресатов в пределах Селекторы и Значение поля. Например, следующая конфигурация разрешает трафик ко всем сайтам, которые мы относим к категории содержимого Education:
| Селектор | Оператор | Значение | Действие |
|---|---|---|---|
| Content Categories | in | Education | Allow |
Недоверенные сертификаты
Действие в отношении недоверенного сертификата определяет, как обрабатывать небезопасные запросы.
| Опция | Действие |
|---|---|
| Ошибка | Отобразить страницу ошибки Gateway. Соответствует поведению по умолчанию, если действие не настроено. |
| Block | Отобразить страница блокировки как задано в панели управления Cloudflare. |
| Pass through | Игнорирует предупреждения о небезопасном соединении и подключается к вышестоящему серверу напрямую. Подробнее о том, какие статусы при этом игнорируются, см. в Устранение неполадок Gateway. |
Пользовательские заголовки
Политики Allow могут изменять заголовки HTTP-запросов перед пересылкой трафика к месту назначения. Вы можете добавлять, перезаписывать или удалять заголовки, а также использовать динамические переменные, чтобы добавлять в значения заголовков данные об идентификации, устройстве и сети.
Подробнее см. в Пользовательские заголовки.
Block
Значение API: block
Доступные селекторы
Трафик
- Access Infrastructure Target
- Доступ к приватному приложению
- Приложение
- Browser Isolation
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Профиль DLP
- Домен
- Download File Types
- Download Mime Type
- Является MCP
- Host
- Метод HTTP
- Ответ HTTP
- Экосистема пакета
- Имя пакета
- Пространство имён пакета
- URL пакета (PURL)
- Версия пакета
- Proxy Endpoint
- Security Categories
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- Источник трафика
- Upload File Types
- Upload Mime Type
- URL
- URL Path
- URL Path & Query
- URL Query
- Виртуальная сеть
Идентификация
Состояние устройства
Действие Block запрещает исходящему трафику достигать указанных вами адресатов в пределах Селекторы и Значение поля. Например, следующая конфигурация блокирует пользователям возможность загружать любые типы файлов на Google Drive:
| Селектор | Оператор | Значение | Логика | Действие |
|---|---|---|---|---|
| Приложение | in | Google Drive |
И | Block |
| Upload Mime Type | matches regex | .* |
Уведомления о блокировке Cloudflare One Client
Доступность функций
| Режимы клиента | планы Zero Trust ↗ |
|---|---|
|
Enterprise |
| Система | Доступность | Минимальная версия клиента |
|---|---|---|
| Windows | ✅ | 2024.1.159.0 |
| macOS | ✅ | 2024.1.160.0 |
| Linux | ❌ | |
| iOS | ✅ | 1.7 |
| Android | ✅ | 1.4 |
| ChromeOS | ✅ | 1.4 |
Включите Отображает уведомление о блокировке для Cloudflare One Client чтобы отображать уведомления о событиях блокировки Gateway. Заблокированные пользователи получат уведомление операционной системы от Cloudflare One Client с заданным вами пользовательским сообщением. Если пользовательское сообщение не задано, Cloudflare One Client отобразит сообщение по умолчанию. Пользовательские сообщения должны содержать не более 100 символов. Cloudflare One Client отображает не более одного уведомления в минуту.
После выбора уведомления Cloudflare One Client перенаправит ваших пользователей на Страница блокировки Gateway которые вы настроили. При необходимости можно перенаправить пользователей на собственный URL-адрес, например на внутреннюю форму поддержки.
Если вы включите Отправлять контекст политики, Gateway добавит сведения о совпавшем запросе в URL-адрес перенаправления в виде строки запроса. Не все поля контекста будут включены. Возможные поля контекста политики:
Поля контекста политики
| Поле | Определение | Пример |
|---|---|---|
| Email пользователя | Адрес электронной почты пользователя, выполнившего запрос. | &[email protected] |
| URL сайта | Полный URL-адрес исходного HTTP-запроса или доменное имя в DNS-запросе. | &cf_site_uri=https%3A%2F%2Fmalware.testcategory.com%2F |
| URL category | Категории доменов URL-адреса, на который нужно выполнить перенаправление. | &cf_request_categories=New%20Domains,Newly%20Seen%20Domains |
| Исходный HTTP Referer | Для HTTP-трафика: исходный заголовок HTTP referer запроса. | &cf_referer=https%3A%2F%2Fexample.com%2F |
| ID правила | ID политики Gateway, которая соответствует запросу. | &cf_rule_id=6d48997c-a1ec-4b16-b42e-d43ab4d071d1 |
| Исходный IP | Исходный IP-адрес устройства, соответствующего политике. | &cf_source_ip=203.0.113.5 |
| ID устройства | UUID of the device that matched the policy. | &cf_device_id=6d48997c-a1ec-4b16-b42e-d43ab4d071d1 |
| Имена приложений | Название приложения, которому соответствует перенаправленный домен, если оно есть. | &cf_application_name=Salesforce |
| Фильтр | Фильтр типа трафика, который вызвал блокировку. | &cf_filter=http, &cf_filter=dns, &cf_filter=av, или &cf_filter=l4 |
| Account ID | Cloudflare account ID связанного аккаунта Zero Trust. | &cf_account_id=d57c3de47a013c03ca7e237dd3e61d7d |
| ID запроса | ID DNS-запроса, для которого сработало перенаправление. | &cf_query_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
| ID подключения | ID прокси-соединения, для которого сработало перенаправление. | &cf_connection_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
| ID запроса | ID HTTP-запроса, для которого сработало перенаправление. | &cf_request_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
Убедитесь, что ваша операционная система разрешает уведомления для Cloudflare One Client. Если включены режим фокусировки, режим "не беспокоить" или демонстрация экрана, устройство может не показывать уведомления. Чтобы включить уведомления клиента на устройствах macOS с программным обеспечением DisplayLink, может потребоваться разрешить системные уведомления при дублировании экрана. Дополнительные сведения см. в документация по macOS ↗.
Перенаправление
Значение API: redirect
Доступные селекторы
Трафик
- Access Infrastructure Target
- Приложение
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Домен
- Host
- Метод HTTP
- Proxy Endpoint
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- URL
- URL Path
- URL Path & Query
- URL Query
- Виртуальная сеть
Идентификация
Состояние устройства
Действие Redirect позволяет перенаправлять совпавшие HTTP-запросы на другой указанный вами URL. Например, если ваши пользователи заходят на публичную веб-страницу приложения SaaS, вы можете перенаправить их на собственный локально размещённый экземпляр, страницу единого входа или внутреннюю страницу политики.
Чтобы перенаправлять URL-адреса с действием Block и страницей блокировки, см. Перенаправить на страницу блокировки.
Настройки политики
В Policy URL redirect, вы можете определить URL, на который перенаправляются совпавшие запросы. URL перенаправления может содержать пути и параметры запроса. Например, можно перенаправить example.com к cloudflare.com/path/to/page?querystring=x.
Если вы включите Отправлять контекст политики, Gateway добавит сведения о совпавшем запросе в URL-адрес перенаправления в виде строки запроса. Не все поля контекста будут включены. Возможные поля контекста политики:
Поля контекста политики
| Поле | Определение | Пример |
|---|---|---|
| Email пользователя | Адрес электронной почты пользователя, выполнившего запрос. | &[email protected] |
| URL сайта | Полный URL-адрес исходного HTTP-запроса или доменное имя в DNS-запросе. | &cf_site_uri=https%3A%2F%2Fmalware.testcategory.com%2F |
| URL category | Категории доменов URL-адреса, на который нужно выполнить перенаправление. | &cf_request_categories=New%20Domains,Newly%20Seen%20Domains |
| Исходный HTTP Referer | Для HTTP-трафика: исходный заголовок HTTP referer запроса. | &cf_referer=https%3A%2F%2Fexample.com%2F |
| ID правила | ID политики Gateway, которая соответствует запросу. | &cf_rule_id=6d48997c-a1ec-4b16-b42e-d43ab4d071d1 |
| Исходный IP | Исходный IP-адрес устройства, соответствующего политике. | &cf_source_ip=203.0.113.5 |
| ID устройства | UUID of the device that matched the policy. | &cf_device_id=6d48997c-a1ec-4b16-b42e-d43ab4d071d1 |
| Имена приложений | Название приложения, которому соответствует перенаправленный домен, если оно есть. | &cf_application_name=Salesforce |
| Фильтр | Фильтр типа трафика, который вызвал блокировку. | &cf_filter=http, &cf_filter=dns, &cf_filter=av, или &cf_filter=l4 |
| Account ID | Cloudflare account ID связанного аккаунта Zero Trust. | &cf_account_id=d57c3de47a013c03ca7e237dd3e61d7d |
| ID запроса | ID DNS-запроса, для которого сработало перенаправление. | &cf_query_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
| ID подключения | ID прокси-соединения, для которого сработало перенаправление. | &cf_connection_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
| ID запроса | ID HTTP-запроса, для которого сработало перенаправление. | &cf_request_id=f8dc6fd3-a7a5-44dd-8b77-08430bb4fac3 |
Если вы включите Сохранять исходный путь и строку запроса, Gateway добавит исходный путь и строку запроса к URL-адресу перенаправления. Пути и запросы в URL-адресе перенаправления имеют приоритет над исходным URL-адресом. Например, если исходный URL-адрес равен example.com/path/to/page?querystring=X а URL-адрес перенаправления: cloudflare.com/redirect-path?querystring=Y, Gateway перенаправит запросы на:
cloudflare.com/redirect-path/path/to/page?querystring=YЕсли вы включите обе опции, Gateway сохраняет исходный путь и строку запроса, а затем добавляет контекст политики в конец URL-адреса перенаправления. Например, если исходный URL-адрес выглядит так: example.com/path/to/page?querystring=X&k=1 а URL-адрес перенаправления: cloudflare.com/redirect-path?querystring=Y, Gateway перенаправит запросы на:
cloudflare.com/redirect-path/path/to/page?querystring=Y&k=1&[email protected]Изолировать
Значение API: isolate
Доступные селекторы
Трафик
- Приложение
- Content Categories
- Домен
- Host
- Метод HTTP
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- URL
- URL Path
- URL Path & Query
- URL Query
Идентификация
Состояние устройства
Действие Isolate обслуживает трафик, соответствующий правилу, для пользователей через Cloudflare Browser Isolation. Подробнее об этом действии см. в Политики изоляции.
Do Not Inspect
Значение API: off
Доступные селекторы
Трафик
- Приложение
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Домен
- Host
- Proxy Endpoint
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- Виртуальная сеть
Идентификация
Состояние устройства
Do Not Inspect позволяет исключать определенные элементы из проверки. Чтобы Gateway не расшифровывал и не проверял HTTPS-трафик, ваша политика должна учитывать индикацию имени сервера (SNI) в заголовке TLS. При переходе на сайт с политикой Do Not Inspect браузер может отобразить Ваше подключение не защищено предупреждение, которое можно пропустить, чтобы подключиться. Подробнее о приложениях, для которых может потребоваться политика Do Not Inspect, см. в Ограничения расшифровки TLS.
Do Not Isolate
Значение API: noisolate
Доступные селекторы
Трафик
- Приложение
- Content Categories
- Домен
- Host
- Метод HTTP
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- URL
- URL Path
- URL Path & Query
- URL Query
Идентификация
Состояние устройства
Действие Do Not Isolate отключает изоляцию браузера для трафика, соответствующего правилу. Подробнее об этом действии см. Политики изоляции.
Do Not Scan
Значение API: noscan
Доступные селекторы
Трафик
- Приложение
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Домен
- Host
- Метод HTTP
- Proxy Endpoint
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- URL
- URL Path
- URL Path & Query
- URL Query
- Виртуальная сеть
Идентификация
Состояние устройства
Когда администратор включает антивирусное сканирование для загрузки и скачивания файлов, Gateway проверяет каждый поддерживаемый файл. Администраторы могут выборочно отключать сканирование с помощью правил HTTP. Например, чтобы отключить антивирусное сканирование файлов, отправляемых на определённый домен или скачиваемых с example.com, администратор настроил бы следующее правило:
| Селектор | Оператор | Значение | Действие |
|---|---|---|---|
| Имя хоста | matches regex | .*example.com |
Do Not Scan |
Когда срабатывает правило Do Not Scan, файл не сканируется вообще, независимо от его размера и того, поддерживается ли этот тип файла.
Карантин
Значение API: quarantine
Доступные селекторы
Трафик
- Приложение
- Content Categories
- Геолокация IP по континенту назначения
- Геолокация IP по стране назначения
- IP-адрес назначения
- Домен
- Host
- Метод HTTP
- Proxy Endpoint
- Риски безопасности
- Геолокация IP по континенту источника
- Геолокация IP по стране источника
- Внутренний IP-адрес источника
- Исходный IP
- URL
- URL Path
- URL Path & Query
- URL Query
- Виртуальная сеть
Идентификация
Состояние устройства
Действие Quarantine отправляет файлы из соответствующих запросов в песочницу для проверки на вредоносное ПО. Gateway помещает в карантин только файлы, ранее не встречавшиеся в песочнице. Подробнее об этом действии см. в Песочница для файлов.
Типы файлов для песочницы
В Типы файлов для песочницы, вы можете выбрать типы файлов для помещения в карантин в рамках вашей политики. Необходимо выбрать хотя бы один тип файла.
Песочница для файлов поддерживает сканирование следующих типов файлов:
Поддерживаемые типы файлов для песочницы
.exe.pdf.doc.docm.docx.rtf.ppt.pptx.xls.xlsm.xlsx.zip.rar
Селекторы
Gateway сопоставляет HTTP-трафик со следующими селекторами (критериями):
Access Infrastructure Target
Все цели защищённый с помощью Инфраструктурное приложение Access.
| UI name | Пример API |
|---|---|
| Access Infrastructure Target | access.target |
Доступ к приватному приложению
Все целевые IP-адреса и имена хостов, защищённые Самостоятельно размещённое приватное приложение Access.
| UI name | Пример API |
|---|---|
| Self-hosted Access App с приватным адресом | access.private_app |
Статус одобрения приложения
Статус проверки и одобрения приложения от Shadow IT Discovery или Библиотека приложений. Дополнительную информацию см. в Проверить приложения.
| UI name | Пример API |
|---|---|
| Статус приложения | any(app.statuses[*] == "approved") |
Приложение
Вы можете применять политики HTTP к растущему списку популярных веб-приложений. См. Приложение и типы приложений, где это описано подробнее.
| UI name | Пример API |
|---|---|
| Приложение | any(app.ids[*] in {505}) |
Подробные элементы управления
При использовании является оператор с Приложение селектор, вы можете использовать Подробные элементы управления приложением, чтобы выбрать конкретные действия и операции для сопоставления с трафиком приложений. Например, можно заблокировать загрузку файлов в ChatGPT, не блокируя весь трафик ChatGPT:
| Селектор | Оператор | Значение | Элементы управления | Действие |
|---|---|---|---|---|
| Приложение | является | ChatGPT | Загрузить | Block |
Вы можете сопоставлять трафик по Элементы управления приложением, которые объединяют несколько действий пользователя, или Операции, которые обеспечивают детальный контроль над поддерживаемыми действиями на уровне API для приложения.
Подробнее см. в Подробные элементы управления приложением.
Body Phase
Фаза HTTP-запроса. С помощью этого селектора можно указать, следует ли сканировать данные, отправляемые в HTTP-запросе на устройство пользователя, или данные, отправляемые с устройства пользователя к месту назначения. Политики без этого селектора сканируют тело как запроса, так и ответа HTTP.
| UI name | Пример API |
|---|---|
| Body Phase | http.body_phase == \"download\" |
Browser Isolation Бета
Выполняется ли текущий сеанс внутри Remote Browser Isolation. Используйте этот селектор, чтобы применять разное поведение политики к изолированному и неизолированному трафику.
| UI name | Пример API |
|---|---|
| Browser Isolation | net.is_isolated == true |
Content Categories
Приложения в пределах определённого категория безопасности в соответствии с категоризацией Cloudflare Radar.
| UI name | Пример API |
|---|---|
| Content Categories | any(http.request.uri.content_category[*] in {1}) |
Континент назначения
Континент, в который направлен запрос. Геолокация определяется по IP-адресу назначения. Чтобы указать континент, введите его двухбуквенный код в Значение поле:
| Континент | Код |
|---|---|
| Африка | AF |
| Антарктида | AN |
| Азия | AS |
| Европа | EU |
| Северная Америка | NA |
| Океания | OC |
| Южная Америка | SA |
| UI name | Пример API |
|---|---|
| Геолокация IP по континенту назначения | http.dst_ip.geo.continent == "EU" |
Страна назначения
Страна, в которую направлен запрос. Геолокация определяется по IP-адресу назначения. Чтобы указать страну, введите её код ISO 3166-1 Alpha 2 ↗ в Значение поле.
| UI name | Пример API |
|---|---|
| Геолокация IP по стране назначения | http.dst_ip.geo.country == "RU" |
IP-адрес назначения
IP-адрес целевого узла запроса.
| UI name | Пример API |
|---|---|
| IP-адрес назначения | any(http.conn.dst_ip[*] in {10.0.0.0/8}) |
Состояние устройства
С помощью селектора состояния устройства администраторы могут использовать сигналы с устройств конечных пользователей, чтобы защищать доступ к внутренним и внешним ресурсам. Например, администратор безопасности может ограничить доступ ко всем внутренним приложениям в зависимости от того, установлено ли на устройстве определённое программное обеспечение и/или настроены ли устройство или программное обеспечение особым образом.
Дополнительные сведения о проверках состояния устройства см. в Состояние устройства.
| UI name | Пример API |
|---|---|
| Пройденные проверки состояния устройства | any(device_posture.checks.failed[*] in {"1308749e-fcfb-4ebc-b051-fe022b632644"}), any(device_posture.checks.passed[*] in {"1308749e-fcfb-4ebc-b051-fe022b632644"})" |
Домен
Используйте этот селектор, чтобы находить соответствие домену и всем его поддоменам. Например, можно указать соответствие example.com и его поддомены, например www.example.com.
| UI name | Пример API |
|---|---|
| Домен | any(http.request.domains[*] == "example.com") |
Политики Gateway не поддерживают домены с нелатинскими символами напрямую. Чтобы использовать домен с нелатинскими символами, добавьте его в список.
Download and Upload File Size
Используйте эти селекторы, чтобы ограничивать размер файлов в операциях загрузки или скачивания. Размер файлов измеряется в мебибайтах (MiB).
| UI name | Пример API |
|---|---|
| Download File Size (MiB) | http.download.file.size >= 10 |
| UI name | Пример API |
|---|---|
| Upload File Size (MiB) | http.upload.file.size < 10 |
Download and Upload File Types
Эти селекторы сканируют сигнатуры файлов в теле HTTP-запроса. Вы можете выбрать из категорий файлов или определённые типы файлов, например исполняемые файлы, архивы и сжатые файлы, файлы, которые невозможно проверить, документы Microsoft 365/Office и файлы Adobe.
| UI name | Пример API |
|---|---|
| Download File Types | any(http.download.file.types[*] in {"docx" "7z"}) |
| UI name | Пример API |
|---|---|
| Upload File Types | any(http.upload.file.types[*] in {"compressed"}) |
Поддерживаемые типы файлов
Gateway поддерживает следующие типы файлов для использования с Download File Types и Upload File Types селекторы:
Сжатые
- архив 7-Zip (
.7z) bzip2архива (.bz2)- Архив GNU Gzip (
.gz) - Файл Microsoft Cabinet (
.cab) - Файл Microsoft Compiled HTML Help (
.chm) - RAR-архив (
.rar) xzархива (.xz)- ZIP-архив (
.zip)
Документы
- Файлы Microsoft Office/365
- Документ Word (
.doc,.docx,.docm) - Таблица Excel (
.xls,.xlsx,.xlsm) - Презентация PowerPoint (
.ppt,.pptx,.pptm)
- Документ Word (
- Документ PDF (
.pdf)
Исполняемый файл
- Apple Software Package (
.pkg) - Файл динамической библиотеки (DLL) (
.dll) - Файл Executable and Linkable Format (ELF) (
.elf) - пакет архива Java (JAR) (
.jar) - файл класса Java (
.class) - Файл Mach object (Mach-O) (
.macho) - Установщик Microsoft Windows (
.msi) - Microsoft Software Installer (
.msix,.appx) - Исполняемый файл Microsoft Windows (
.exe)
Изображение
- Документ Adobe Photoshop (
.psd) - Растровое изображение (
.bmp) - Изображение GIF (
.gif) - Файл значка (
.ico) - изображение JPEG (
.jpg,.jpeg) - Изображение PNG (
.png) - Изображение WebP (
.webp)
Прочее
- Файл BitTorrent (
.torrent)
Система
- Apple Disk Image (
.dmg)
Несканируемый
- Документ Microsoft Office, защищённый паролем
- PDF-файл, защищённый паролем
- ZIP-архив, защищённый паролем
- Несканируемый ZIP-архив
Download and Upload Mime Type
Эти селекторы зависят от Content-Type наличия заголовка в запросе (при загрузке) или в ответе (при скачивании). Значение MIME-типа должно соответствовать формату, используемому в Content-Type заголовок (например, image/png, application/pdf).
| UI name | Пример API |
|---|---|
| Download Mime Type | http.download.mime == "image/png" |
| UI name | Пример API |
|---|---|
| Upload Mime Type | http.upload.mime == "image/png" |
Профиль DLP
Используйте Cloudflare Data Loss Prevention (DLP) и сканируйте HTTP-трафик на наличие конфиденциальных данных, таких как персональные данные (PII) или исходный код. Для этого необходимо настроить Профиль DLP прежде чем вы сможете использовать этот селектор в политике.
| UI name | Пример API |
|---|---|
| Профиль DLP | any(dlp.profiles[*] in {\"a0cabf16-7491-4c9a-ac02-f64cabc66394\"}) |
Является MCP Бета
Был ли HTTP-запрос определен как Model Context Protocol (MCP) ↗ трафик. Gateway обнаруживает трафик MCP, анализируя специфичные для протокола заголовки и характеристики полезной нагрузки. Используйте этот селектор, чтобы создавать политики, которые разрешают, блокируют или изолируют трафик MCP в вашей сети.
| UI name | Пример API |
|---|---|
| Является MCP | experimental.is_mcp == true |
Например, следующая политика блокирует MCP-трафик, поступающий не через портал MCP:
| Селектор | Оператор | Значение | Логика | Действие |
|---|---|---|---|---|
| Является MCP | является | True | И | Block |
| Источник трафика | не является | портал MCP |
Host
Используйте этот селектор, чтобы находить соответствие только указанному имени хоста. Например, можно указать соответствие test.example.com но не example.com или www.test.example.com.
| UI name | Пример API |
|---|---|
| Host | http.request.host == "example.com" |
Политики Gateway не поддерживают имена хостов с нелатинскими символами напрямую. Чтобы использовать имя хоста с нелатинскими символами, добавьте его в список.
Метод HTTP
Метод HTTP-запроса, используемый в трафике.
| UI name | Пример API |
|---|---|
| Метод HTTP | http.request.method == "GET" |
Ответ HTTP
Код статуса HTTP-ответа, полученный в трафике.
| UI name | Пример API |
|---|---|
| URL | http.response.status_code == "200" |
Экосистема пакета
Экосистема реестра пакетов, определённая по URL-адресу HTTP-запроса. Дополнительные сведения см. в Безопасность реестра пакетов.
| UI name | Пример API |
|---|---|
| Экосистема пакета | pkg.ecosystem == "npm" |
Имя пакета
Имя пакета, определённое на основе URL HTTP-запроса.
| UI name | Пример API |
|---|---|
| Имя пакета | pkg.name == "lodash" |
Пространство имён пакета
Пространство имён пакета, если оно поддерживается экосистемой. Для npm это область видимости (scope). Для Maven это ID группы. Для Go это путь модуля.
| UI name | Пример API |
|---|---|
| Пространство имён пакета | pkg.namespace == "@babel" |
URL пакета (PURL)
URL пакета ↗ полученный на основе обнаруженных координат пакета.
| UI name | Пример API |
|---|---|
| URL пакета | pkg.purl == "pkg:npm/[email protected]" |
Версия пакета
Версия пакета, определённая по URL HTTP-запроса. Поддерживает точное совпадение и операторы сравнения версий с учётом экосистемы. Подробнее о семантике сравнения версий см. Безопасность реестра пакетов.
| UI name | Пример API |
|---|---|
| Версия пакета | pkg.version == "4.17.21" |
Proxy Endpoint
прокси-сервер куда ваш браузер перенаправляет HTTP-трафик.
| UI name | Пример API |
|---|---|
| Proxy Endpoint | proxy.endpoint == "3ele0ss56t.proxy.cloudflare-gateway.com" |
Риски безопасности
Приложения в пределах определённого категория безопасности в соответствии с категоризацией Cloudflare Radar.
| UI name | Пример API |
|---|---|
| Security Categories | any(http.request.uri.security_category[*] in {1}) |
Континент источника
Континент пользователя, отправившего запрос.
Геолокация определяется по публичному IP-адресу устройства (обычно назначаемому интернет-провайдером пользователя). Чтобы указать континент, введите его двухбуквенный код в поле Значение поле:
| Континент | Код |
|---|---|
| Африка | AF |
| Антарктида | AN |
| Азия | AS |
| Европа | EU |
| Северная Америка | NA |
| Океания | OC |
| Южная Америка | SA |
| UI name | Пример API |
|---|---|
| Геолокация IP по континенту источника | http.src_ip.geo.continent == "North America" |
Страна источника
Страна пользователя, отправившего запрос.
Геолокация определяется по публичному IP-адресу устройства (обычно назначаемому интернет-провайдером пользователя). Чтобы указать страну, введите её код ISO 3166-1 Alpha-2 ↗ в Значение поле.
| UI name | Пример API |
|---|---|
| Геолокация IP по стране источника | http.src_ip.geo.country == "RU" |
Внутренний IP-адрес источника
Используйте этот селектор, чтобы применять политики HTTP к приватному IP-адресу, назначенному локальной сетью пользователя, с которого запросы поступают в Gateway.
| UI name | Пример API |
|---|---|
| Внутренний IP-адрес источника | http.conn.internal_src_ip == "192.168.86.0/27" |
Исходный IP
Исходный IP-адрес или адреса устройства, проксируемого через Gateway.
| UI name | Пример API |
|---|---|
| Исходный IP | http.conn.src_ip[*] in {10.0.0.0/8} |
Источник трафика Бета
Метод on-ramp, используемый для передачи трафика в Cloudflare. Используйте этот селектор, чтобы применять политики в зависимости от способа поступления трафика в Gateway.
| UI name | Пример API |
|---|---|
| Источник трафика | net.onramp.type == "device_client" |
Доступные значения: device_client (Device client), mesh (Mesh), cloudflare_wan (Cloudflare WAN), clientless_rdp (Clientless RDP), proxy_endpoint (Proxy endpoint), agentless_biso (Clientless Browser Isolation), mcp_portal (MCP portal).
URL
Gateway игнорирует завершающие косые черты (/) в URL-адресах. Например, https://example.com и https://example.com/ будут считаться одним и тем же URL-адресом и могут вызвать ошибку дублирования.
| UI name | Пример API |
|---|---|
| URL | http.request.uri matches "/r/gaming" |
URL Path
Путь URL-адреса веб-страницы.
| UI name | Пример API |
|---|---|
| URL Path | http.request.uri.path == \"/foo/bar\" |
URL Path and Query
Путь и запрос URL-адреса веб-страницы.
| UI name | Пример API |
|---|---|
| URL Path and Query | http.request.uri.path_and_query == \"/foo/bar?ab%242=%2A342\" |
URL Query
Запрос URL-адреса веб-страницы.
| UI name | Пример API |
|---|---|
| URL Query | http.request.uri.query == "ab%242=%2A342" |
Пользователи
Используйте эти селекторы, чтобы находить соответствие атрибутам идентификации.
| UI name | Пример API |
|---|---|
| User Email | identity.email == "[email protected]" |
| User Name | identity.name == "Test User" |
| User Group IDs | any(identity.groups[*].id in {"group_id"}) |
| User Group Names | any(identity.groups[*].name in {"group_name"}) |
| User Group Emails | any(identity.groups[*].email in {"[email protected]"}) |
| SAML Attributes | any(identity.saml_attributes["http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"] in {"Test User"}) |
Виртуальная сеть
Используйте этот селектор, чтобы находить соответствие всему трафику, маршрутизируемому через определённый Виртуальная сеть через Cloudflare One Client.
| UI name | Пример API |
|---|---|
| Виртуальная сеть | http.conn.vnet_id == "957fc748-591a-e96s-a15d-1j90204a7923" |
Операторы сравнения
С помощью операторов сравнения Gateway сопоставляет трафик с селектором. Когда вы выбираете Селектор в конструкторе политик панели управления, Оператор раскрывающемся меню будут показаны доступные варианты для этого селектора.
| Оператор | Значение |
|---|---|
| является | равно заданному значению |
| не является | не равно заданному значению |
| in | соответствует хотя бы одному из указанных значений |
| not in | не соответствует ни одному из заданных значений |
| in list | в предопределённом список значений |
| not in list | не входит в предопределённый список значений |
| matches regex | regex возвращает true |
| does not match regex | regex возвращает false |
| больше | превышает заданное число |
| больше или равно | превышает заданное число или равно ему |
| меньше | меньше заданного числа |
| меньше или равно | меньше или равно заданному числу |
Значение
В Значение поле можно ввести единственное значение при использовании оператора сравнения на равенство (например, является) или несколько значений при использовании оператора сравнения на вхождение (например, in). Кроме того, вы можете использовать регулярные выражения (или regex), чтобы задать диапазон значений для поддерживаемых селекторов.
Регулярные выражения
Регулярные выражения обрабатываются с использованием Rust. Реализация Rust немного отличается от библиотек regex, используемых в других местах. Дополнительную информацию см. в нашем руководстве по Подстановочные знаки. Чтобы проверить, соответствует ли ваше регулярное выражение, вы можете использовать Rustexp ↗.
Чтобы сопоставить несколько значений, можно использовать символ вертикальной черты (|) в качестве оператора OR. Использовать escape-символ не требуется (\) до символа "|". Например, следующее выражение возвращает true, если имя хоста совпадает с одним из значений: .*whispersystems.org или .*signal.org:
| Селектор | Оператор | Значение |
|---|---|---|
| Host | matches regex | .*whispersystems.org|.*signal.org |
Помимо регулярных выражений, вы можете использовать логические операторы чтобы соответствовать нескольким значениям.
Логические операторы
Чтобы оценить несколько условий в выражении, выберите И логический оператор. Эти выражения можно дополнительно сравнить с помощью Или логический оператор.
| Оператор | Значение |
|---|---|
| И | соответствуют всем условиям в выражении |
| Или | соответствуют хотя бы одному из условий в выражении |
Или оператор работает только с условиями в пределах одной группы выражений. Например, нельзя сравнивать условия в Трафик с условиями в Идентификация или Состояние устройства.
Если условие в выражении объединяет атрибут request (например, Исходный IP) и атрибут ответа (например, профиль DLP), условие будет проверено при получении ответа.