6단계: Portal에서 프록시 서비스용 Azure 보안 정책 업데이트하기

6단계: Portal에서 프록시 서비스용 Azure 보안 정책 업데이트하기

이 문서는 Snowflake가 제공하는 ARM 템플릿이 만드는 보안 정책을 완성하는 방법을 설명해요. JWT를 검증해 Snowflake가 Azure Function을 호출하도록 인가하는 정책인데, 필드 하나를 직접 채워 넣어야 실제 보안 수준을 확보할 수 있어요.

출처: Snowflake SQL Reference

본문

Snowflake가 제공하는 ARM 템플릿은 Snowflake가 Azure Function을 호출하도록 인가하는 JWT(JSON Web Token)를 검증하는 보안 정책을 만들어요.

그런데 이 보안 정책에는 필드 하나가 빠져 있어서, 정책이 필요한 수준의 보안을 제공하도록 그 필드를 채워야 해요.

중요

Snowflake는 API Management 서비스의 보안 정책을 업데이트할 것을 강력히 권장해요. 이 단계를 완료하면 API Management 서비스를 통해 Azure Function을 호출할 수 있는 것은 Snowflake뿐이 돼요.

이전 단계

5단계: Snowflake에서 Azure용 외부 함수 만들기

Azure API Management 서비스에서 보안 정책 업데이트하기

정책을 업데이트하려면:

  • 아직 하지 않았다면 Azure Portal에 로그인해요.

  • API Management Services를 선택해요.

  • 만든 API Management 서비스 인스턴스를 찾아요. 이 인스턴스의 이름은 추적 워크시트의 API Management service name 필드에 기록돼 있어요.

  • API Management 서비스 인스턴스 이름을 클릭해요.

  • APIs » APIs를 선택해요.

  • All APIs 아래에서 ext-func-api를 선택해요.

  • POST echo를 선택해요.

  • Inbound processing 상자에 있는 validate-JWT 버튼을 클릭해요. 이 버튼이 보이지 않으면 아래로 스크롤해요.

  • "SNOWFLAKE_SERVICE_PRINCIPAL_ID"를 검색해서 Snowflake 앱 ID로 바꿔요. Snowflake 앱 ID가 아직 없다면 다음 단계로 얻을 수 있어요:

    • 워크시트에서 앞서 채운 AZURE_MULTI_TENANT_APP_NAME을 찾아요.

    • Azure Portal 검색 상자에서 Enterprise Applications를 찾아요. 그러면 Enterprise applications | All applications 화면으로 이동해요.

    • 그 화면에서 AZURE_MULTI_TENANT_APP_NAME을 검색해요. 엔터프라이즈 애플리케이션 검색 상자에는 라벨이 없어요. 엔터프라이즈 애플리케이션 목록 바로 위에 있는 넓은 필드를 찾아요. 상자에는 First 50 shown, to search all of your applications, enter a display name or the application ID. 같은 문구가 있을 수 있어요. AZURE_MULTI_TENANT_APP_NAME과 정확히 일치하는 항목을 찾지 못했다면, 이 이름의 처음 몇 글자만으로 다시 검색해요(이름에 밑줄이 있다면 밑줄과 밑줄 뒤의 문자는 포함하지 마세요).

    • AZURE_MULTI_TENANT_APP_NAME의 Application ID 값을 찾아요.

  • Save를 클릭해요.

외부 함수 테스트하기

업데이트된 보안 정책에서 외부 함수가 제대로 동작하는지 확인하려면 외부 함수를 다시 호출해요.

자세한 내용은 Azure용 외부 함수 호출하기를 참고해요.

다음 단계

없음. Azure용 외부 함수를 성공적으로 만들었어요.

더 알아보기 (Learn more)