NAVER Cloud

네이버클라우드플랫폼 API Gateway 에 사용자 도메인 적용 방법

한크크 2020. 2. 11. 16:43

네이버 클라우드 플랫폼 (Ncloud) 에서도 Rest API 와 관련된 리소스와 메소드를 정의할 수 있는 API Gateway 서비스를 제공한다. 

현재는 API Gateway 를 생성하게 되면 자동으로 invoke URL 을 생성해 주는데 API 서비스를 제공하거나 기존에 사용중인 도메인을 Invoke URL 로 invoke URL 을 변경해야 하는 경우가 발생할 수 있는데 이런 경우 아래 예제를 참고할 수 있다. 

 

1. API Gateway API 설정 상태 및 기대 구성 

  • /apigw/v1/api-keys API 호출 시 정상일 경우 12121 을 응답하게 설정되어 있고 invoke URL 은 https://axqc29e77q.apigw.ntruss.com/chatbot/test_stage/apigw/v1/api-keys 로 ncloud 에서 자동 생성된 상태

  • Ncloud 에서 제공한 axqc29e77q.apigw.ntruss.com 도메인이 아닌 사용자가 보유하고 있는 www.nothing.ga 도메인을 통해 API 를 호출하도록 변경하려고 함 

  • API Gateway invoke URL 을 CNAME 으로 적용할 경우 사용자 도메인의 https 요청 처리를 할 수 없으므로 CDN 을 통해 사용자 도메인과 인증서를 등록하여 사용해야 함 (AWS 도 CloudFront + API Gateway 형태로 사용자 정의 도메인 기능 제공)

  • DNS, CDN, Certificate Manager 상품을 활용하여 API Gateway 의 invoke URL 을 사용자 도메인으로 변경할 수 있음

사용자 도메인으로 invoke URL 호출 시 flow

API Gateway 는 생성했다는 가정하에 ..  (참고 https://docs.ncloud.com/ko/apigw/apigw-2-1.html )

 

설명서

Product 생성하기 API Gateway를 사용하려면 먼저 상품을 생성해야 합니다. ① API Gateway > My Products 메뉴를 선택합니다. ② Product 생성을 클릭합니다. ① 상품 생성에 필요한 값을 입력합니다. 이름: 상품의 이름을 입력합니다. 설명: 상품의 설명을 입력합니다. 구독 방식: 구독 방식에는 두 가지가 있습니다. 공개 - 자율 구독: 상품의 API를 누구나 사용할 수 있습니다. 보호 - 승인 필요: 상품의 API를 사

docs.ncloud.com

2. CDN 생성 

Ncloud 에는 국내용 CDN 서비스인 CDN+ 와 글로벌 CDN 서비스인 Global CDN 서비스가 있는데 필자는 CDN+ 상품에 구성하였다. 

CDN+ 상품을 선택 후 CDN 신청하기 버튼을 눌러 아래와 박스 표기한 부분을 참고하여 CDN 서비스를 생성한다. 

CDN 서비스 설정
원본 설정
캐싱 설정
Viewer 전송 설정

 

3. DNS 설정

설정하고자 하는 사용자 도메인의 CNAME 에 레코드값을 위에서 생성한 CDN+ 의 서비스 도메인 값으로 레코드를 추가해준다. 

DNS 서비스에 CDN 서비스 도메인 레코드 추가

CDN 서비스 도메인은 CDN 상세 보기에서 확인할 수 있다. 

DNS 서비스의 CNAME 레코드에 추가할 CDN 서비스 도메인

4. 테스트 

이제 사용자 도메인으로 invoke URL 을 호출하기 위한 사전 준비는 모두 끝났다. 

계획했던대로 www.nothing.ga 도메인으로 API 를 호출했을 때 12121 값이 나오는지 확인해본다. 

 

반응형