За замовчуванням CORS не включає файли cookie на запити перехресного походження. Це відрізняється від інших методів перехресного походження, таких як JSON-P. JSON-P завжди включає файли cookie із запитом, і така поведінка може призвести до класу вразливостей, який називається підробкою запиту між веб-сайтами або CSRF.
Щоб знизити ймовірність уразливості CSRF в CORS, CORS вимагає і сервера, і клієнта підтвердити, що нормально включати кукі в запити. Це робить cookie активним рішенням, а не тим, що відбувається пасивно без будь-якого контролю.
Клієнтський код повинен встановити withCredentials
власності на XMLHttpRequest
для true
того , щоб дати дозвіл.
Однак одного цього заголовка недостатньо. Сервер повинен відповідати Access-Control-Allow-Credentials
заголовком. Відповідаючи цим заголовком, true
означає, що сервер дозволяє включати файли cookie (або інші облікові дані користувачів) на запити перехресного походження.
Вам також потрібно переконатися, що ваш веб-переглядач не блокує сторонні файли cookie, якщо ви хочете, щоб запити, що перехрещуються, поширювались.
Зауважте, що незалежно від того, ви робите запити з однаковим або перехресним походженням, вам потрібно захистити свій сайт від CSRF (особливо якщо ваш запит включає файли cookie).