본문으로 건너뛰기

API Gateway 개요

카카오클라우드 API Gateway(APIGW)는 API 호출 관련된 작업을 관리 할 수 있는 서비스입니다. 분산된 서비스의 API를 하나의 엔드포인트로 통합하여 관리하는 설정이 가능하고, 인증 설정, 권한 설정, 사용량 제한 등 다양한 기능들을 실시간으로 설정할 수 있습니다.

사용 목적 및 사례

여러 서비스를 하나의 API로 운영

여러 개의 앱 서비스 또는 여러 개의 엔드포인트를 하나의 API Gateway로 관리할 수 있습니다. API Gateway에서 제공하는 도메인 및 사용자가 등록한 도메인을 사용함으로써 편리한 엔드포인트 관리가 가능합니다.

백엔드 보호 및 안정화 역할을 수행

스테이지의 API 키 별로 사용량 계획을 설정하여 API 사용량 정책 설정이 가능하며, 이를 통해 부하를 사전에 방지할 수 있습니다. API Key 설정을 통해 인증되지 않은 사용자는 해당 API에 접근할 수 없습니다.


특징

손쉬운 API 관리 가능

  • 여러 개의 API를 스테이지로 정의 및 서비스로 묶어 통합 관리
  • 간편한 UI로 API 관리 가능

다양한 API 관리 기능 제공

  • REST API 및 경로, 메서드를 정의 및 인증 방식 설정 가능
  • 사용자 정의 도메인 및 SSL 오프로딩 기능 제공
  • 스테이지별 API Key 발급 및 만료일 설정 가능

주요 개념

카카오클라우드 API Gateway 서비스는 크게 3가지로 구성됩니다.

Service

API Gateway의 서비스는 사용자 작업 단위의 가장 큰 단위로, 하나의 서비스 아래에 여러 개의 스테이지를 생성할 수 있습니다. 추후 보다 확장된 기능이 제공될 예정입니다.

Stage

스테이지는 퍼블릭 도메인을 제공하며, API Gateway 엔드포인트 하나에 대한 단위를 의미합니다. 스테이지에 등록된 API Gateway 엔드포인트에 인증 및 인가 설정이 가능합니다. 사용자 정의 도메인에 대한 설정 또한 가능하며, 이 경우 인증서는 직접 업로드해야 합니다.

스테이지 생성 후, 경로, 메서드, API 키와 같은 세부 사항을 설정할 수 있습니다.

Usage Plan

사용자의 API 호출을 제한하기 위한 기능으로, API 키에 할당하여 호출 수를 조절할 수 있습니다. 불필요한 낭비를 없애고 효율적인 운영을 할 수 있도록 지원합니다.

IAM 역할 관리

API Gateway의 역할 관리는 IAM 역할 기반 액세스 제어(RBAC)를 따릅니다.

  • 서비스, 스테이지, 사용량 계획은 프로젝트 관리자만 생성/관리할 수 있습니다.
  • 각 사용자 권한마다 만들기/조회/설정/삭제 기능을 제공 또는 미제공합니다. 해당 기능에 권한이 없으면 관련 버튼이나 화면은 제공되지 않습니다.

Service

프로젝트 관리자(Admin)는 서비스 조회, 생성 및 관리가 가능합니다.

구분프로젝트 관리자(Admin)프로젝트 멤버(Member)프로젝트 리더(Reader)
서비스 생성✓                        
서비스 조회          
서비스 설정
서비스 삭제

Stage

프로젝트 관리자(Admin)는 스테이지 조회, 생성 및 관리가 가능합니다.

구분프로젝트 관리자(Admin)프로젝트 멤버(Member)프로젝트 리더(Reader)
스테이지 생성✓                      
스테이지 조회          
스테이지 설정
스테이지 삭제

Usage Plan

프로젝트 관리자(Admin)는 사용량 계획의 조회, 생성 및 관리가 가능합니다.

구분프로젝트 관리자(Admin)프로젝트 멤버(Member)프로젝트 리더(Reader)
사용량 계획 만들기✓                     
사용량 계획 조회          
사용량 계획 설정
사용량 계획 삭제

시작하기

API Gateway에 대한 자세한 사용 가이드는 How-to Guides에서 설명합니다. 카카오클라우드를 처음 시작하신다면 카카오클라우드 시작하기를 참고하시기 바랍니다.