Я разрабатываю приложение, в котором я отображаю продукты в сетке. В сетке есть столбец, в котором есть значок отключения / включения, и по щелчку этого значка я запускаю запрос через AJAX на мою страницу manageProduct.aspx
для включения / отключения этого конкретного продукта.
В моем запросе ajax я передаю productID в качестве параметра, поэтому окончательный запрос ajax выглядит как
http://example.com/manageProduct.aspx?id=234
Теперь, если кто-то (профессиональный хакер или веб-разработчик) сможет получить этот URL (который легко получить из моих файлов javascript), то он может создать сценарий, который будет работать как цикл и отключит все мои продукты.
Итак, я хочу знать, есть ли какой-либо механизм, метод или метод, с помощью которого, если кто-то попытается выполнить эту страницу напрямую, он вернет ошибку (правильное сообщение «Вы не авторизованы или что-то»), иначе если страница выполняется с нужной страницы, например, там, где я отображаю список продуктов, она будет правильно выполняться.
По сути, я хочу защитить свои AJAX-запросы, поэтому никто не может выполнить их напрямую.
В PHP:
В php мой коллега обезопасил эти страницы PHP, проверив рефрер страницы. как показано ниже:
$back_link = $_SERVER['HTTP_REFERER'];
if ($back_link =='')
{
echo 'You are not authorized to execute this page';
}
else
{
//coding
}
Пожалуйста, скажите мне, как использовать ту же или любую другую, но безопасную технику в ASP.NET (C #), я использую jQUERY в своем приложении для выполнения запросов AJAX.
Спасибо