2016-10-22 2 views
0

내 플랫폼은 내부 구조 (API 및 기타)와 통신하기 위해 AJAX을 사용합니다. 모든 AJAX 요청은 globalAPI.php(POST 방법)이라는 단일 파일로 전송되며 거기에서 다른 PHP 파일과 통신합니다 (내부 구조를 숨기기 위해 수행되었습니다).PHP 파일에 대한 외부 액세스 거부

사용자가 자신의 서버에서 어떻게 작동하고 요청 하는지를 발견했다고 가정합니다. 플랫폼에 로그인하지 않고도 결과를 얻을 수 있다고 결론 내릴 수 있습니다.

그래서이 파일을 외부 액세스로 보호 할 수 있습니까?

나는 Allow from 127.0.0.1와 함께 .htaccess 파일을 사용할 수 있다고 생각하지만 사용자가 자신의 IP를 127.0.0.1으로 변경하면이 파일에 액세스 할 수 있습니까?

다른 방법으로 파일을 보호 할 방법이 있습니까?

답변

3

액세스를 제한하려면 모든 API 호출에 인증 시스템을 구현해야합니다.

기본적으로 사용자가 Devtools에서 네트워크 탭을 열고 클라이언트가 서버 API에 보내는 요청을 보지 못하게 할 수 없습니다. 고급 사용자는 각 요청에서 보낸 매개 변수를보고 동일한 요청을 다시 보낼 수 있습니다 또는 다른 매개 변수.

이 파일을 AJAX를 통해 액세스 할 수 있으면 클라이언트에서 액세스 할 수 있습니다. 사용자가 AJAX 호출이 허용하는 것보다 많은 정보에 액세스 할 수 없도록해야합니다. 이를 위해 API를 보호하십시오 (예 : 모든 호출에 대해 사용자 토큰 요청 : 서버는 어느 사용자가 API에 액세스했는지 알 수 있고 그 시점부터 권한을 처리 할 수 ​​있습니다.

관련 문제