OAuth 소개

OAuth 소개 (Introduction to OAuth)

이 문서는 Snowflake의 OAuth 기능에 대한 개요를 제공해요.

출처: Introduction to OAuth

본문

개요

OAuth는 사용자의 로그인 자격 증명을 공유하거나 저장하지 않고도 제3자 애플리케이션이 사용자의 Snowflake 데이터에 접근할 수 있도록 권한을 부여하는 인증 프로토콜이에요. Snowflake는 OAuth 2.0 프로토콜을 지원해요.

OAuth를 사용하면:

  • 사용자가 자격 증명을 제3자 애플리케이션에 직접 제공하지 않아도 돼요.
  • 애플리케이션이 사용자를 대신해 제한된 권한으로 Snowflake에 접근할 수 있어요.
  • 토큰 만료, 권한 회수 등을 통해 보안을 제어할 수 있어요.

Snowflake OAuth 유형

Snowflake는 두 가지 OAuth 구현을 제공해요:

1. Snowflake OAuth (클라이언트)

Snowflake가 OAuth 제공자(인증 서버) 역할을 해요. 이 방식에서는 Snowflake 사용자를 위해 클라이언트(애플리케이션)에 접근 토큰을 발급해요. 별도의 외부 인증 서버가 필요하지 않아요.

적합한 사례:

  • Snowflake를 직접 사용하는 자체 개발 애플리케이션.
  • 로컬 애플리케이션과의 통합.
  • 타사 애플리케이션이 Snowflake 계정에 접근해야 하는 경우.

2. 외부 OAuth (External OAuth)

Snowflake 외부의 제3자 OAuth 제공자(예: Okta, Microsoft Entra ID, 커스텀 인증 서버)가 인증 서버 역할을 해요. Snowflake는 이 외부 제공자에서 발급한 토큰을 신뢰해요.

적합한 사례:

  • 조직이 이미 Okta 또는 Microsoft Entra ID(구 Azure AD) 같은 ID 제공자를 사용하는 경우.
  • 중앙 집중식 ID 관리를 원하는 경우.

관련 개념

  • 접근 토큰 (Access token): 제한된 시간 동안 Snowflake 리소스에 접근할 수 있게 하는 자격 증명.
  • 리프레시 토큰 (Refresh token): 접근 토큰이 만료되었을 때 새 접근 토큰을 얻는 데 사용.
  • 클라이언트 (Client): Snowflake의 데이터에 접근하려는 애플리케이션.
  • 범위 (Scope): 클라이언트에게 부여된 접근 권한의 범위.

다음 단계

더 알아보기 (Learn more)