Ajax에서 호출한 파일에 대한 직접 액세스를 제한하는 방법
Ajax를 활용하여 PHP 코드를 호출할 때 쿼리에 표시된 대로 데이터는 전송되는 정보는 요청 헤더 검사를 통해 노출될 수 있습니다. 데이터는 기밀이 아닐 수 있지만 악용 가능성은 여전히 남아 있습니다.
이 문제를 해결하기 위한 일반적인 솔루션은 HTTP_X_REQUESTED_WITH 헤더를 활용하는 것입니다. 일반적으로 Ajax 요청/프레임워크에 의해 설정되는 이 헤더를 사용하면 Ajax 요청과 Ajax가 아닌 요청을 구별할 수 있습니다. 다음 코드 조각은 그 구현을 보여줍니다.
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 }
Javascript 코드에서는 이 헤더를 수동으로 설정할 수 있습니다.
var xhrobj = new XMLHttpRequest(); xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3