IP 허용 목록
IP 허용 목록
IP 허용 목록(IP allowlist)을 사용하면 신뢰하는 IP 주소 또는 CIDR 범위로 OpenAI API 요청을 제한할 수 있습니다. 허용 목록을 활성화하면 OpenAI는 유효한 API 키가 포함되어 있어도 다른 IP 주소의 요청을 거부합니다.
고정되거나 잘 정의된 네트워크 이그레스가 있는 프로덕션 워크로드에 IP 허용 목록을 추가 보호 계층으로 사용하세요. API 요청에만 적용되며 platform.openai.com이나 사용자 로그인에 대한 접근은 제한하지 않습니다.
IP 허용 목록은 애플리케이션이 OpenAI에 보내는 요청을 제어합니다. OpenAI 제품이 사용자가 제어하는 서비스에 보내는 요청을 허용해야 한다면 게시된 IP 이그레스 범위를 대신 사용하세요.
출처: 문서
본문
허용 목록을 활성화하기 전에
API를 호출하는 모든 워크로드의 공개 이그레스 IP 주소 또는 범위를 파악하세요. API는 OpenAI에 도달하는 소스 IP를 평가하므로, 네트워크 주소 변환(NAT), VPN, 방화벽, 프록시 후의 주소를 확인하세요.
허용 목록에는 최대 50개의 개별 IP 주소 또는 CIDR 범위를 포함할 수 있습니다. organization owner 역할에는 IP 허용 목록 설정을 관리하는 데 필요한 Read 및 Write 권한이 포함됩니다. 권한에 대한 자세한 내용은 OpenAI 플랫폼에서 권한 관리하기를 참고하세요.
전체 조직에 허용 목록을 적용하기 전에 중요하지 않은 프로젝트 하나부터 시작하세요. 설정을 테스트하는 동안 허용된 IP에서 요청 경로가 작동하는지 유지하세요.
프로젝트 수준 허용 목록이 조직 수준 허용 목록보다 우선합니다. 항목은 결합되지 않습니다: 자체 활성 허용 목록이 있는 프로젝트는 그 허용 목록을 사용하고, 없는 프로젝트는 조직 수준 허용 목록을 사용합니다.
IP 허용 목록 구성하기
- Settings > Security > IP allowlist를 엽니다.
- 허용하려는 개별 IP 주소 또는 CIDR 범위를 추가하세요. 예를 들어 한 주소는
203.0.113.10, 범위는203.0.113.0/24를 사용하세요. - 선택적으로 Check 도구를 사용해 허용 목록에 특정 IP 주소가 포함되어 있는지 확인하세요.
- 특정 프로젝트 또는 전체 조직에 대해 허용 목록을 활성화하세요.
- 변경 사항이 적용되려면 최대 15분을 기다리세요.
- 각 예상 환경에서 API 요청을 보내 접근을 확인하세요.
조직 수준 허용 목록을 활성화하면 자체 활성 허용 목록이 없는 프로젝트의 API 요청에 영향을 미칩니다. 활성화하기 전에 각 영향 범위의 모든 프로덕션·스테이징·CI·재해 복구 이그레스 경로를 확인하세요.
적용 확인하기
허용된 네트워크 경로에서 대표적인 API 요청을 보내세요. 예를 들면:
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer ***"
이 요청은 API 키의 일반적인 인증 및 권한 부여에 따라 완료되어야 합니다. 활성 허용 목록에 포함되지 않은 IP 주소에서 보낸 요청은 HTTP 401과 ip_not_authorized 오류 코드로 실패합니다.
차단된 요청 문제 해결
예상한 요청이 ip_not_authorized로 실패하면:
- API 요청을 보내는 것과 동일한 네트워크 경로에서 워크로드의 공개 이그레스 IP를 확인하세요. 로컬 개발 머신은 배포된 서비스와 다른 공개 IP를 가질 수 있습니다.
- NAT 게이트웨이, VPN, 방화벽, 프록시 또는 클라우드 제공자가 이그레스 주소를 변경했는지 확인하세요.
- IP allowlist 설정의 Check 도구를 사용해 구성된 항목과 주소를 대조하세요.
- 활성 허용 목록이 API 키와 연결된 조직 또는 프로젝트에 적용되는지 확인하세요.
- 구성 변경 후 최대 15분을 기다린 뒤 다시 테스트하세요.
IP 허용 목록은 안전한 API 키 저장, 키 회전, 계정 보안을 대체하지 않습니다. 요청이 공개 IP가 아닌 비공개 Azure 네트워크에서 발생해야 한다면 Private Link를 고려하세요. Private Link는 IP 허용 목록 제어와 호환되지 않습니다.