Projemizde bir sayfayı yenilemeden veri almak için her zaman Ajax kullanıyoruz. Ajax, verileri yeniden yüklemeden sayfaya sorunsuz bir şekilde yüklemek için iyi bir yaklaşımdır.
Basitçe ajax istek yanıtını almak güvenli bir yol değildir. Bu eğitimde, ajax isteğinin nasıl güvenli hale getirileceğini veya nasıl güvenli Ajax araması yapılacağını göreceğiz.
Her şeyden önce, AJAX isteği olup olmadığını kontrol edin
Yönlendireni Kontrol Et: Yalnızca AJAX isteği kendi url'nizden geldiğinde yanıt verin
AJAX'ta Post Yöntemini Kullanın
İstek gönderirken Daima Gönder yöntemini kullanın ve yanıt vermeden önce $_POST değişkenini kontrol edin.
Ajax Çağrısı Gönderirken Token Kullanın
İki yönlü şifreleme kullanın
Şifreli verileri gönderin ve sonuç vermeden önce şifre çözme ile kontrol isteği gönderin. PHP'de iki yönlü şifrelemeyi nasıl kullanacağınızı bilmiyorsanız aşağıdaki makaleye göz atın.
PHP Şifreleme (Basit Ve İki Yönlü)
Basitçe ajax istek yanıtını almak güvenli bir yol değildir. Bu eğitimde, ajax isteğinin nasıl güvenli hale getirileceğini veya nasıl güvenli Ajax araması yapılacağını göreceğiz.
Her şeyden önce, AJAX isteği olup olmadığını kontrol edin
Kod:
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
echo "AJAX request";
}else{
echo "Not AJAX";
}
Kod:
if (!empty($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] == "www.mywebiste.com/ajaxurl") {
//AJAX Request from own server
}
İstek gönderirken Daima Gönder yöntemini kullanın ve yanıt vermeden önce $_POST değişkenini kontrol edin.
Ajax Çağrısı Gönderirken Token Kullanın
Kod:
session_start();
$token = md5(rand(10000, 99999));
$_SESSION['token'] = $token; //store it as session variable
Şifreli verileri gönderin ve sonuç vermeden önce şifre çözme ile kontrol isteği gönderin. PHP'de iki yönlü şifrelemeyi nasıl kullanacağınızı bilmiyorsanız aşağıdaki makaleye göz atın.
PHP Şifreleme (Basit Ve İki Yönlü)