Я работаю над приложением, полностью управляемым AJAX, где все запросы проходят через то, что в основном равнозначно главному контроллеру, который, по сути, выглядит примерно так:
if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
fetch($page);
}
Это обычнодостаточно для защиты от подделки межсайтовых запросов?
Довольно неудобно иметь вращающийся токен, когда вся страница не обновляется при каждом запросе.
Полагаю, я мог бы передавать и обновлять уникальный токен как глобальную переменную javascript с каждым запросом, но в любом случае это кажется неуклюжим и, в любом случае, небезопасным.
EDIT - возможно, статический токен, напримерUUID пользователя, было бы лучше, чем ничего?
РЕДАКТИРОВАТЬ # 2 - Как указывало The Rook , это может быть ошеломляющий вопрос.Я читал спекуляции в обоих направлениях и слышал далекие шепоты о том, что старые версии флеш-памяти можно использовать для такого рода махинаций.Поскольку я ничего не знаю об этом, я назначаю вознаграждение для любого, кто может объяснить, каков риск CSRF.В противном случае я даю это Artefacto .Спасибо.