PassFront
  1. PassFront
  2. База знаний
  3. Производительность и безопасность сети

Что такое Same-Origin Policy (SOP)?

Производительность и безопасность сети

Same-Origin Policy — правило безопасности браузера: скрипт со страницы одного origin не может читать данные другого origin. Origin — это сочетание протокола, домена и порта.

https://site.com/a      и  https://site.com/b      — один origin
https://site.com        и  http://site.com         — разные (протокол)
https://site.com        и  https://api.site.com    — разные (домен)
https://site.com        и  https://site.com:8443   — разные (порт)

Что ограничивается

  • Чтение ответов fetch/XMLHttpRequest на другой origin.
  • Доступ к DOM чужого iframe.
  • Доступ к localStorage и cookie другого origin.

Что разрешено

  • Подключение скриптов, стилей, изображений с другого origin (но не чтение их содержимого).
  • Отправка запросов (форм) на другой домен — блокируется именно чтение ответа.

Как обходят ограничение легально

  • CORS — сервер сообщает заголовками (Access-Control-Allow-Origin), какие origin могут читать ответ.
  • `postMessage` — безопасный обмен между окнами и iframe.
  • Прокси на своём бэкенде.

Зачем нужно

Без SOP вредоносный сайт мог бы от имени вошедшего пользователя читать письма или данные банка в другой вкладке.

Коротко для собеседования

SOP запрещает странице читать ресурсы другого origin (протокол + домен + порт). Расслабляют его через CORS, postMessage и проксирование. Защита от кражи данных между сайтами, но не от CSRF-запросов.

Другие вопросы раздела