Comment restreindre l'accès direct aux fichiers appelés par Ajax
Lors de l'utilisation d'Ajax pour appeler du code PHP, comme illustré dans la requête, les données transmis peuvent être vulnérables à l’exposition lors de l’examen des en-têtes de requête. Même si les données ne sont pas confidentielles, leur potentiel d'exploitation demeure.
Pour répondre à ce problème, une solution courante consiste à utiliser l'en-tête HTTP_X_REQUESTED_WITH. Cet en-tête, généralement défini par les requêtes/frameworks Ajax, permet de différencier les requêtes Ajax et non-Ajax. L'extrait de code suivant présente son implémentation :
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) { // Allow access within Ajax requests } else { // Block access outside of Ajax requests }
Dans le code Javascript, vous pouvez définir cet en-tête manuellement :
var xhrobj = new XMLHttpRequest(); xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3