[php] PHP에서 API 호출을 위한 IP 주소 및 도메인 제한 처리

API를 호출하고자 할 때, 보안 문제에 대한 고려는 매우 중요합니다. 특히 API 서버에 대한 인증 및 제한 접근이 필수적이며, 이를 위해 IP 주소도메인 등을 제한하여 허용할 수 있습니다.

IP 주소 제한

특정 IP 주소로부터만 API 호출을 허용하는 경우, PHP에서는 아래와 같이 클라이언트의 IP 주소를 확인하여 처리할 수 있습니다.

$allowed_ip = '123.456.789.012';
$client_ip = $_SERVER['REMOTE_ADDR'];

if ($client_ip != $allowed_ip) {
    // IP 주소가 허용되지 않은 경우
    header('HTTP/1.0 403 Forbidden');
    exit;
}

// 인증된 IP 주소인 경우, API 호출 처리
// ...

도메인 제한

도메인을 기반으로 API 호출을 허용하는 경우, 클라이언트 요청의 HTTP “Referer” 헤더에서 송신 도메인을 확인하여 처리할 수 있습니다.

$allowed_domain = 'https://example.com';
$client_domain = $_SERVER['HTTP_REFERER'];

if (strpos($client_domain, $allowed_domain) !== 0) {
    // 도메인이 허용되지 않은 경우
    header('HTTP/1.0 403 Forbidden');
    exit;
}

// 인증된 도메인인 경우, API 호출 처리
// ...

이러한 제한 설정은 보안 측면에서 매우 중요하며, 항상 최신 보안 업데이트모범 사례를 따를 것을 권장합니다.

위의 코드는 참고용으로만 사용되어야 하며, 프로덕션 환경에 적용하기 전에 보안 전문가와 함께 확인하는 것이 좋습니다.

참고 자료