3단계: Snowflake에서 Azure용 API 통합 만들기

3단계: Snowflake에서 Azure용 API 통합 만들기

이 문서는 프록시 서비스(즉, Azure API Management 서비스)와 함께 사용할 API 통합(API Integration) 객체를 Snowflake에 만드는 방법을 설명해요. Azure Portal을 쓰든, ARM 템플릿을 쓰든 지침은 동일해요.

출처: Snowflake SQL Reference

본문

이 주제는 프록시 서비스(즉, Azure API Management 서비스)와 연동하기 위해 Snowflake에 API 통합 객체를 만드는 방법을 설명해요. 지침은 Azure Portal을 사용하든 ARM 템플릿을 사용하든 동일해요.

이전 단계

  • Azure Portal: Portal에서 프록시 서비스(Azure API Management 서비스) 만들기 (2단계)
  • ARM 템플릿: 템플릿을 사용해 원격 서비스(Azure 함수)와 프록시 서비스(API Management 서비스) 만들기 (2단계)

필요한 정보

Snowflake에서 Azure용 API 통합을 만들려면 다음 정보가 필요해요:

  • Azure Function App AD Application ID (추적 워크시트에서 가져옴)

  • Azure AD Tenant ID (외부 함수 계획하기의 필수 조건(Prerequisites) 섹션에서 설명한 대로)

API 통합 객체 만들기

CREATE API INTEGRATION 명령을 사용해 API 통합 객체를 만들어요.

  • Snowflake 세션(보통 Snowflake 웹 인터페이스 세션)을 열어요.

  • USE ROLE 명령을 실행해서 ACCOUNTADMIN 역할 또는 CREATE INTEGRATION 권한이 있는 역할을 사용해요. 예를 들어:

use role has_accountadmin_privileges;
  • CREATE API INTEGRATION 문을 입력해요. 문장은 다음처럼 보여야 해요:
create or replace api integration integration_name
 api_provider = azure_api_management
 azure_tenant_id = ''
 azure_ad_application_id = ''
 api_allowed_prefixes = ('')
 enabled = true;

문장에서:

  • integration_name을 고유한 통합 이름(예: my_api_integration_name)으로 바꿔요. 이름은 객체 식별자(Object identifiers) 규칙을 따라야 해요. 또한 통합 이름을 추적 워크시트의 API Integration Name 필드에 기록해요. 나중에 생성 과정에서 CREATE EXTERNAL FUNCTION 명령을 실행할 때 이 이름이 필요해요.

  • azure_tenant_id를 Azure AD Tenant ID로 바꿔요. 대안으로 도메인(예: my_company.onmicrosoft.com)을 사용할 수도 있어요.

  • azure_ad_application_id를 추적 워크시트의 Azure Function App AD Application ID 필드 값으로 바꿔요.

  • api_allowed_prefixes에서 ''을 적절한 URL로 바꿔요. 보통 이 URL은 프록시 서비스(즉, Azure API Management 서비스)의 URL이며 다음 형식이에요:

https://api_management_service_name.azure-api.net

다만 적절한 접미사(suffix)를 붙여서 이 API 통합이 적용될 URL을 제한할 수도 있는데, 그 경우 URL은 다음 형식이에요:

https://api_management_service_name.azure-api.net/api_url_suffix

입력하는 URL은 외부 함수를 만들 때 Azure Portal을 쓰는지 ARM 템플릿을 쓰는지에 따라 달라져요.

  • Azure Portal: 추적 워크시트의 API Management service nameAPI Management API URL suffix 필드 값을 사용해요. 예를 들어 URL은 다음처럼 보여야 해요: https://my-api-management-svc.azure-api.net/my-api-url-suffix. 이 값은 가져온 API에 대한 API Management 서비스의 Settings 탭에 있는 기본 URL과 접미사와 일치해야 해요. 편하다면 탭에서 값을 복사해도 돼요.

  • ARM 템플릿: 추적 워크시트의 API Management URL 필드 값을 사용해요.

  • 아직 실행하지 않았다면, 입력한 CREATE API INTEGRATION 문을 실행해요.

다음 단계

4단계: Portal에서 Azure용 API 통합을 프록시 서비스에 연결하기

더 알아보기 (Learn more)

  • CREATE API INTEGRATION
  • Azure용 외부 함수 계획하기
  • Azure용 외부 함수 만들기 (ARM 템플릿 또는 Portal)