Spec-Zone.ru › HTTP

Sec-Fetch-Site

Sec-Fetch-Site

Заголовок метаданных запроса fetch Sec-Fetch-Site запроса метаданных fetch указывает на взаимосвязь между источником инициатора запроса и источником запрашиваемого ресурса.

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

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

Тип заголовка Заголовок метаданных запроса Fetch
Запрещённое имя заголовка да (префикс Sec-)
Заголовок запроса, разрешённый CORS нет

Синтаксис

Sec-Fetch-Site: cross-site
Sec-Fetch-Site: same-origin
Sec-Fetch-Site: same-site
Sec-Fetch-Site: none

Директивы

cross-site

Инициатор запроса и сервер, на котором размещён ресурс, имеют разные сайты (например, запрос от "potentially-evil.com" к ресурсу на "example.com").

same-origin

Инициатор запроса и сервер, на котором размещён ресурс, имеют один и тот же источник (один и тот же протокол, хост и порт).

same-site

Инициатор запроса и сервер, на котором размещён ресурс, имеют один и тот же протокол, домен и/или поддомен, но необязательно один и тот же порт.

none

Этот запрос — это операция, инициированная пользователем. Например, ввод URL-адреса в адресную строку, открытие закладки или перетаскивание файла в окно браузера.

Примеры

Запрос fetch к https://mysite.example/foo.json, исходящий с веб-страницы на https://mysite.example (с тем же портом), является запросом из одного источника. Браузер сгенерирует заголовок Sec-Fetch-Site: same-origin как показано ниже, и сервер обычно позволит этот запрос:

GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin

Запрос fetch к тому же URL с другого сайта, например potentially-evil.com, заставляет браузер генерировать другой заголовок (например, Sec-Fetch-Site: cross-site), который сервер может принять или отклонить:

GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

Спецификации

Спецификация
Заголовки метаданных запросов Fetch
# sec-fetch-site-header

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet
Sec-Fetch-Site
76
79
90
Нет
63
Нет
76
76
90
54
Нет
12.0

См. также

  • Связанные заголовки
    • Sec-Fetch-Mode
    • Sec-Fetch-User
    • Sec-Fetch-Dest
  • Защита ваших ресурсов от атак в сети с помощью метаданных Fetch (web.dev)
  • Игровое поле для заголовков метаданных запросов Fetch (secmetadata.appspot.com)

© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-Fetch-Site

Spec-Zone.ru

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