사용자 지정 도메인 이름은 API 사용자에게 제공할 수 있는 더 간단하고 직관적인 URL입니다.
API를 배포한 후 사용자 및 사용자 고객은 다음 형식의 기본 URL을 사용하여 API를 호출할 수 있습니다.
https://
api-id
.execute-api.region
.amazonaws.com/stage
여기서 api-id
는 API Gateway에서 생성되고 region
은 AWS 리전이며 stage
는 API를 배포할 때 사용자가 지정합니다.
URL의 호스트 이름 부분(즉,
)은 API 엔드포인트를 가리킵니다. 기본 API 엔드포인트는 임의로 생성되므로 기억하기가 어려우며 사용자 친화적이지 않습니다.api-id
.execute-api.region
.amazonaws.com
사용자 지정 도메인 이름을 사용하면 API의 호스트 이름을 설정하고 기본 경로(예: myservice
)를 선택하여 대체 URL을 API에 매핑할 수 있습니다. 예를 들어, 더 사용자 친화적인 API 기본 URL은 다음과 같습니다.
https://api.example.com/myservice
참고
프라이빗 API의 사용자 지정 도메인 이름에 대한 자세한 내용은 API Gateway의 프라이빗 API에 대한 사용자 지정 도메인 이름 섹션을 참조하세요.
고려 사항
다음 고려 사항은 사용자 지정 도메인 이름 사용에 영향을 미칠 수 있습니다.
-
API의 기본 엔드포인트를 비활성화할 수 있습니다. 클라이언트는 여전히 기본 엔드포인트에 연결할 수 있지만
403 Forbidden
상태 코드를 받게 됩니다. -
리전 사용자 지정 도메인 이름은 REST API 및 HTTP API와 연결될 수 있습니다. API Gateway 버전 2 API를 사용하여 REST API에 대한 리전 사용자 지정 도메인 이름을 생성하고 관리할 수 있습니다.
-
사용자 지정 도메인 이름은 모든 AWS 계정에 걸쳐 한 리전 내에서 고유해야 합니다.
-
엣지 최적화 엔드포인트와 리전 엔드포인트 간에 사용자 지정 도메인 이름을 마이그레이션할 수 있지만 퍼블릭 사용자 지정 도메인을 프라이빗 사용자 지정 도메인 이름으로 마이그레이션할 수는 없습니다.
-
DNS 공급자의 리소스 레코드를 생성하거나 업데이트하여 API 엔드포인트에 매핑해야 합니다. 이렇게 매핑하지 않으면 사용자 지정 도메인 이름이 목적지인 API 요청은 API Gateway에 도달할 수 없습니다.
-
와일드카드 인증서를 사용하면 기본 할당량을 초과하지 않고 거의 무제한 수의 도메인 이름을 지원할 수 있습니다. 자세한 내용은 와일드카드 사용자 정의 도메인 이름 단원을 참조하십시오.
-
사용자 지정 도메인에 대한 보안 정책을 선택할 수 있습니다. 자세한 내용은 API Gateway에서 REST API 사용자 지정 도메인에 대한 보안 정책 선택 단원을 참조하십시오.
-
여러 수준으로 API 매핑을 구성하려면 리전 사용자 지정 도메인 이름과 TLS 1.2 보안 정책을 사용해야 합니다.
사용자 지정 도메인 이름에 대한 사전 조건
퍼블릭 또는 프라이빗 사용자 지정 도메인 이름을 생성하기 위한 사전 요구 사항은 다음과 같습니다. 프라이빗 API의 사용자 지정 도메인 이름에 대한 자세한 내용은 API Gateway의 프라이빗 API에 대한 사용자 지정 도메인 이름 섹션을 참조하세요.
도메인 이름 등록
API에 대한 사용자 지정 도메인 이름을 설정하려면 등록된 인터넷 도메인 이름이 있어야 합니다. Amazon Route 53를 사용하거나 사용자가 선택한 서드 파티 도메인 등록자를 사용하여 인터넷 도메인을 등록할 수 있습니다. 사용자 지정 도메인 이름은 하위 도메인의 이름이거나 등록된 인터넷 도메인의 루트 도메인("zone apex"라고도 함) 이름일 수 있습니다.
도메인 이름은 RFC 1035
사용자 지정 도메인 이름에 대한 인증서를 지정합니다.
API에 대한 사용자 지정 도메인 이름을 설정하기 전에 ACM에서 SSL/TLS 인증서를 준비해야 합니다. 사용자 지정 도메인 이름을 생성하는 AWS 리전에서 ACM을 사용할 수 없는 경우 해당 리전의 API Gateway로 인증서를 가져와야 합니다.
SSL/TLS 인증서를 가져오려면 PEM 형식의 SSL/TLS 인증서 본문, 해당하는 프라이빗 키 및 사용자 지정 도메인 이름에 대한 인증서 체인을 제공해야 합니다.
ACM에 저장된 각 인증서는 ARN으로 식별됩니다. ACM에서 발행한 인증서를 사용하면 프라이빗 키 같은 민감한 인증서 세부 정보의 공개를 걱정할 필요가 없습니다. 해당 ARN을 참조하기만 하면 도메인 이름에 대해 AWS에서 관리하는 인증서를 사용할 수 있습니다.
애플리케이션에서 ACM 인증서를 고정하기 위해 인증서 고정(SSL 고정)을 사용하는 경우, AWS가 인증서를 갱신한 후 애플리케이션이 도메인에 연결하지 못하게 될 수 있습니다. 자세한 내용은 AWS Certificate Manager 사용 설명서의 인증서 고정 문제를 참조하세요.
와일드카드 사용자 정의 도메인 이름
와일드카드 사용자 지정 도메인 이름을 사용하면 기본 할당량을 초과하지 않고 거의 무제한 수의 도메인 이름을 지원할 수 있습니다. 예를 들어 각 고객에게 고유한 도메인 이름인
을 제공할 수 있습니다.customername
.api.example.com
와일드카드 사용자 지정 도메인 이름을 생성하려면, 와일드카드(*
)를 루트 도메인의 가능한 모든 하위 도메인을 나타내는 사용자 지정 도메인의 첫 번째 하위 도메인으로 지정할 수 있습니다.
예를 들어 와일드카드 사용자 정의 도메인 이름 *.example.com
을 사용하면 a.example.com
, b.example.com
및 c.example.com
같은 하위 도메인이 모두 동일한 도메인으로 라우팅됩니다.
와일드카드 사용자 지정 도메인 이름은 API Gateway의 표준 사용자 지정 도메인 이름과 별개의 구성을 지원합니다. 예를 들어, 단일 AWS 계정에서 *.example.com
과 a.example.com
가 다르게 동작하도록 구성할 수 있습니다.
$context.domainName
및 $context.domainPrefix
컨텍스트 변수를 사용하여 클라이언트가 API를 호출하는 데 사용한 도메인 이름을 확인할 수 있습니다. 컨텍스트 변수에 대해 자세히 알아보려면 API Gateway 매핑 템플릿과 액세스 로깅 변수 참조 단원을 참조하십시오.
와일드카드 사용자 지정 도메인 이름을 생성하려면 DNS 또는 이메일 검증 방법을 사용하여 검증한 ACM에서 발급한 인증서를 제공해야 합니다.
참고
다른 AWS 계정에서 와일드카드 사용자 지정 도메인 이름과 충돌하는 사용자 지정 도메인 이름을 만든 경우에는 와일드카드 사용자 지정 도메인 이름을 생성할 수 없습니다. 예를 들어 계정 A에서 a.example.com
가 생성된 경우, 계정 B는 와일드카드 사용자 지정 도메인 이름 *.example.com
을 생성할 수 없습니다.
계정 A와 계정 B가 한 소유자를 공유하는 경우 AWS 지원 센터
사용자 지정 도메인 이름에 대한 다음 단계
사용자 지정 도메인 이름에 대한 다음 단계는 다음과 같습니다.
다음 단계
-
SSL/TLS 인증서를 설정하는 방법을 알아보려면 AWS Certificate Manager에서 인증서 준비 단원을 참조하세요.
-
리전 사용자 지정 도메인 이름을 생성하는 방법을 알아보려면 API Gateway에서 리전 사용자 지정 도메인 이름 설정 단원을 참조하세요.
-
엣지 최적화 사용자 지정 도메인 이름을 생성하는 방법을 알아보려면 API Gateway API에서 엣지 최적화 사용자 지정 도메인 이름 설정 단원을 참조하세요.
-
리전 사용자 지정 도메인 이름과 엣지 최적화 사용자 지정 도메인 이름 간에 마이그레이션하는 방법을 알아보려면 API Gateway에서 사용자 지정 도메인 이름을 다른 API 엔드포인트 유형으로 마이그레이션 단원을 참조하세요.
-
API 스테이지를 사용자 지정 도메인 이름에 연결하는 방법을 알아보려면 API 스테이지를 REST API에 대한 사용자 지정 도메인 이름에 매핑 단원을 참조하세요.
-
사용자 지정 도메인 이름에 대한 보안 정책을 선택하는 방법을 알아보려면 API Gateway에서 REST API 사용자 지정 도메인에 대한 보안 정책 선택 단원을 참조하세요.
-
사용자 지정 도메인 이름의 기본 엔드포인트를 비활성화하는 방법을 알아보려면 REST API의 기본 엔드포인트 비활성화 단원을 참조하세요.
-
Route 53 상태 확인을 사용하여 API Gateway API의 DNS 장애 조치를 제어하는 방법을 알아보려면 API Gateway API에 DNS 장애 조치에 대한 사용자 지정 상태 확인 구성 단원을 참조하세요.
사용자 지정 도메인 이름을 처음 생성하는 경우 먼저 AWS Certificate Manager에서 인증서 준비으로 시작하여 인증서를 지정한 다음 API Gateway에서 리전 사용자 지정 도메인 이름 설정로 리전 사용자 지정 도메인 이름을 생성하는 것이 좋습니다.