커스텀 클라이언트용 Snowflake OAuth 구성

커스텀 클라이언트용 Snowflake OAuth 구성 (Configure Snowflake OAuth for custom clients)

이 문서는 커스텀 클라이언트(custom clients)를 위해 Snowflake OAuth를 구성하는 방법을 설명해요.

출처: Configure Snowflake OAuth for custom clients

본문

개요

Snowflake OAuth는 Snowflake가 OAuth 제공자 역할을 하는 방식으로, 자체 개발한 애플리케이션(커스텀 클라이언트)이 사용자의 자격 증명 없이 Snowflake에 접근할 수 있게 해요.

커스텀 클라이언트에서 Snowflake OAuth를 사용하려면:

  1. 관리자가 클라이언트에 대해 접근 토큰을 발급해요.
  2. 클라이언트는 이 접근 토큰을 사용해 Snowflake에 연결해요.

사전 구성

Snowflake OAuth를 커스텀 클라이언트에 사용하기 위해 관리자는 다음을 결정해야 해요:

  • 클라이언트에 부여할 접근 범위(scope).
  • 관련 Snowflake 사용자 및 역할.
  • 토큰 발급 방식 (접근 토큰, 필요 시 리프레시 토큰).

승인된 클라이언트 범위

Snowflake OAuth에서 클라이언트에 대한 접근 범위는 SESSION:ROLE 형태로 지정될 수 있어요. 예를 들어 특정 역할 세션을 사용하도록 승인할 수 있어요.

범위와 권한에 대한 자세한 내용은 OAuth 소개와 관련 SQL 레퍼런스를 참고하세요.

접근 토큰 발급

커스텀 클라이언트를 위한 접근 토큰은 관리자가 발급할 수 있어요. 토큰에는 사용자, 역할, 만료 시간 등의 정보가 포함돼요. 발급된 토큰을 애플리케이션 구성에 사용합니다.

커스텀 클라이언트에서 연결

발급받은 접근 토큰을 애플리케이션의 Snowflake 드라이버/커넥터에 제공해 연결합니다. 이때 사용자 비밀번호는 필요하지 않아요. 각 드라이버에서 OAuth 토큰을 인증 값으로 지정하는 방법은 해당 드라이버 문서를 참고하세요.

토큰 관리

  • 접근 토큰은 만료될 수 있어요. 만료 시간을 확인하고 필요한 경우 갱신 방식을 구성하세요.
  • 리프레시 토큰을 사용하면 만료된 접근 토큰을 자동으로 갱신할 수 있어요.

고려 사항

  • 승인된 클라이언트와 역할 범위를 최소 권한 원칙에 따라 구성하는 것이 좋아요.
  • 토큰은 민감한 정보이므로 안전하게 저장·전송해야 해요.
  • 사용자 승인과 범위 관리는 OAuth 사용자 동의 관리를 참고하세요.

더 알아보기 (Learn more)