알 아는 방법, 누가 내 서버에 POST
을 요청 했습니까?어떻게 알 수 있습니까? 누가 요청 했습니까?
다른 서버가 내 서버에 POST
요청을 만듭니다. API -> My server
누가이 요청을했는지 조회합니다. (호스트 이름)
알 아는 방법, 누가 내 서버에 POST
을 요청 했습니까?어떻게 알 수 있습니까? 누가 요청 했습니까?
다른 서버가 내 서버에 POST
요청을 만듭니다. API -> My server
누가이 요청을했는지 조회합니다. (호스트 이름)
요청한 서버 IP에 $_SERVER['REMOTE_ADDR']
을 사용할 수 있습니다.
여러 답변이 있습니다.
@Nick이 언급했듯이 요청이 보낸 IP 주소가 있습니다.
브라우저도 있습니다. 이것은 $ _SERVER 헤더에도 있습니다.
자세한 내용을 알고 싶다면 요청하는 서버를 고유하게 식별하는 "토큰"이라고도하는 서버를 사용하기위한 일종의 "암호"가 필요합니다. 토큰도 서비스도 없습니다. 그럼 알게 될거야.
감사합니다. 이미 토큰을 사용하고 있습니다. 나는 서버 호스트를 검사하는 것이 좋은 추가 보안이라고 생각했다. 안전하게 할 수있는 100 % 안전하고 신뢰할 수있는 방법이없는 것처럼 보입니다. – user3722573
비밀이나 IP 주소 이외의 다른 것들은 매우 쉽게 위장 할 수 있습니다. 공개 키/비공개 키 쌍 (예 : https 클라이언트 인증)을 사용할 수는 있지만 공격자가 서버의 데이터 (예 : 토큰, 개인 키)에 액세스 할 수 있다고 가정하면 수행 할 수있는 방법이 없습니다. –
누군가가 API를 사용 중이라면 $_SERVER['HTTP_REFERER']
을 사용하여 세부 정보를 얻을 수 있습니다. $_SERVER['REMOTE_ADDR']. "-". $_SERVER['REMOTE_HOST']
을 사용하여 더욱 효율적으로 포인트 및 트랙을 고정 할 수 있습니다.
답변 해 주셔서 감사합니다.
Nick 덕분에 서버 IP 주소를 얻을 수있었습니다. 나는 더 나아가이 기능을 발견 ->이 gethostbyaddr()는
이것은 내가 처음에 원했던 것입니다 : 나는 'didn를 같이
,
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
희망이 사람을 도움 (http://php.net/manual/en/function.gethostbyaddr.php에서 촬영) 전에이 기능을 알지 못했습니다.
경고하십시오 - gethostbyaddr은 위조하기 쉽습니다. –
아, 참으로. 로컬 환경에서이 문제를 테스트하고 127.0.0.1을 반환 했으므로 처음에는 API 서버 주소가 반환되었다고 생각했지만 그래, 필요한 것 같습니다. 또한 ip 주소에 대한 호스트 이름을 반환하는이 함수를 발견했습니다. -> http://php.net/manual/en/function.gethostbyaddr.php – user3722573