Измените заголовки HTTP-запроса с помощью правил преобразования для безоапасности

Заголовки HTTP играют центральную роль в работе сети. Они используются для передачи дополнительной информации между клиентом и сервером, например, какие разрешения безопасности следует применять, и информацию о клиенте, позволяющую обслуживать правильный контент.




Сегодня мы объявляем о немедленной доступности второго действия в рамках правил преобразования, « Изменение заголовка HTTP-запроса », доступного для всех планов Cloudflare. Эта новая функция предоставляет администраторам Cloudflare возможность легко устанавливать или удалять заголовки HTTP-запросов по мере прохождения трафика через Cloudflare. Это позволяет клиентам Пополните запросы с такой информацией, как Cloudflare Bot Management « Bot Score » перед отправкой на свои сервера. Ранее изменение заголовка HTTP-запроса выполнялось с помощью Cloudflare Worker . Сегодня мы представляем более простой способ сделать это, не написав ни единой строчки кода.

Багажные бирки во всемирной паутине

Заголовки HTTP можно рассматривать как «багажную бирку», прикрепляемую к вашим сумкам при регистрации в аэропорту.

Как правило, вам не нужно знать, что означают эти числа и слова. Вы просто знаете, что они важны для того, чтобы доставить ваш чемодан с места посадки в нужный самолет и обратно в нужную багажную карусель в пункте назначения.

Эти теги содержат информацию о весе чемодана, коде аэропорта назначения, номере багажной бирки, авиаперевозчике, информацию о таможенном оформлении и многое другое. Все эти атрибуты необходимы не только для обеспечения того, чтобы ваш багаж прибыл в правильное место назначения, но и для того, чтобы сделать это самым безопасным и эффективным способом.

Заголовки HTTP - это багажные бирки Интернета. Они необходимы для обеспечения того, чтобы запрос из вашего браузера поступал в правильное место назначения, и чтобы трафик возвращался в ваш браузер с использованием правильных настроек также самым безопасным и эффективным способом.

Как используются заголовки HTTP-запросов?
Заголовки HTTP устанавливаются как для взаимодействий «запрос», так и «ответ»; «запрос» - это когда клиент запрашивает файл, а «ответ» - это то, что сервер возвращает в результате. Анонсированная сегодня функциональность относится только к заголовкам HTTP- запросов .

Многие организации используют заголовки HTTP-запросов, чтобы обеспечить правильное обслуживание запросов посетителей. Они используются для маршрутизации запросов в различные кластеры, обслуживания контента, удобного для мобильных устройств, и контента, удобного для устаревших браузеров.

Заголовки HTTP-запросов также используются в целях безопасности, а именно аутентификации и авторизации. Простые примеры включают добавление статического предварительного общего ключа в качестве настраиваемого заголовка, который добавляет дополнительную проверку безопасности ко всем входящим HTTP-запросам.

Обеспечение наличия этих заголовков в HTTP-запросе часто является задачей обратного прокси - сервера, который находится между клиентом и сервером, задача которого, среди многих других, заключается в обогащении данных HTTP-запроса, отправленных на сервер.

Например, при использовании NGINX, популярного веб-сервера, используемого в качестве обратного прокси, администратор будет иметь строку в конфигурации, подобную следующей:

proxy_set_header X-Header-Name "custom";
При использовании   Cloudflare Workers код будет похож на:

request.headers.set("X-Header-Name", "custom")
Каждая из этих строк кода будет добавлять настраиваемый заголовок HTTP-запроса к месту назначения следующего перехода с именем «X-Header-Name» и значением «custom».

Динамическое изменение заголовков HTTP-запросов
«Изменение заголовка HTTP-запроса» теперь доступно для всех планов Cloudflare в рамках правил преобразования. Он предоставляет администраторам контроль, предоставляя возможность изменять заголовки HTTP-запросов перед их отправкой на их собственные исходные серверы или сторонние службы, такие как провайдеры SaaS.


Правила преобразования позволяют пользователям изменять до 10 заголовков HTTP-запросов для каждого правила, используя один из трех вариантов:


«Установить динамический» следует использовать, когда значение заголовка HTTP-запроса необходимо динамически заполнять для каждого HTTP-запроса. Примеры включают добавление оценки ботами Cloudflare Bot Management к каждому HTTP-запросу или страны посетителя:


'Set static' следует использовать для заполнения значения заголовка статической литеральной строкой. Этот параметр следует использовать для простого создания заголовка, такого как установка исходного CDN (Cloudflare) или общего секрета:


В обоих «установочных» примерах, если заголовок с указанным именем уже существует в HTTP-запросе, его значение будет удалено и заменено заданным значением.

«Удалить» - последняя опция, которую следует использовать для удаления всех заголовков HTTP-запросов с указанным именем. Например, если вы хотите, чтобы заголовок HTTP-запроса cf-connected-ip был удален, вы должны использовать правило, подобное следующему:


Функции Cloudflare можно использовать в модификациях заголовков «установить динамический». Эти функции включают:

concat ()
regex_replace ()
нанизывать()
ниже()
Примером, где обычно используются функции, является concat () и to_string (), которые используются для получения списка различных типов данных и объединения для формирования единого значения заголовка. Например, concat(“score=”,to_string(cf.bot_management.score))значение заголовка будет «оценка = 85».

Примечание. Функции регулярных выражений доступны только для клиентов с планами Business и Enterprise.

Попробуй это сейчас
Модификация заголовка HTTP-запроса может использоваться для улучшения операций, удаления конфиденциальных данных и повышения безопасности, среди многих других вариантов использования. Испытайте последнюю версию Правила трансформации сегодня.

Комментариев нет:

Отправить комментарий