InfoGrab DocsInfoGrab Docs

Snowflake 자격 증명

요약

다음 노드를 인증하는 데 이 자격 증명을 사용할 수 있습니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요. Snowflake 계정을 생성하세요. 서비스에 대한 자세한 내용은 Snowflake의 API 문서와 SQL 명령어 참조를 참고하세요.

다음 노드를 인증하는 데 이 자격 증명을 사용할 수 있습니다.

참고

이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.

사전 요구사항#

Snowflake 계정을 생성하세요.

지원되는 인증 방법#

관련 자료#

서비스에 대한 자세한 내용은 Snowflake의 API 문서와 SQL 명령어 참조를 참고하세요.

공통 구성 필드#

두 인증 방법 모두 다음 필드가 필요합니다.

  • Account 이름: 계정 이름은 Snowflake URL에서 https://와 snowflakecomputing.com 사이에 위치한 문자열입니다. 예를 들어 Snowflake 계정의 URL이 https://abc.eu-central-1.snowflakecomputing.com이라면 계정 이름은 abc.eu-central-1입니다.
  • Database: 자격 증명이 연결할 데이터베이스의 이름을 입력하세요.
  • Warehouse: 연결 후 세션에서 사용할 기본 가상 웨어하우스의 이름을 입력하세요. n8n은 쿼리 수행, 데이터 로드 등에 이 웨어하우스를 사용합니다.
  • Schema: 연결 후 사용하려는 스키마를 입력하세요.
  • Role: 연결 후 사용하려는 보안 역할을 입력하세요.
  • Client Session Keep Alive: 기본적으로 클라이언트 연결은 가장 최근 쿼리 실행 후 보통 3~4시간 뒤에 타임아웃됩니다. 이 설정을 켜면 clientSessionKeepAlive 파라미터가 true로 설정되어, 연결이 어떤 쿼리도 실행하지 않더라도 서버가 클라이언트의 연결을 무기한 유지합니다.

이러한 설정에 대한 자세한 내용은 세션 명령어를 참고하세요.

비밀번호 인증 사용#

공통 구성 필드 외에도 비밀번호 인증에는 다음이 필요합니다.

  • Username
  • Password

키 페어 인증 사용#

키 쌍 인증은 비밀번호 기반 인증의 대안으로서 강화된 보안을 제공합니다. 이 방법은 인증에 공개키-개인키 쌍을 사용합니다.

공통 구성 필드 외에도 키 쌍 인증에는 다음이 필요합니다.

  • Username: 공개키가 할당된 Snowflake 사용자입니다.
  • Private Key: PEM 형식(PKCS#8)의 개인키입니다. 이 값은 -----BEGIN ENCRYPTED PRIVATE KEY-----와 -----END ENCRYPTED PRIVATE KEY----- 구분자(암호화되지 않은 키의 경우 -----BEGIN PRIVATE KEY-----와 -----END PRIVATE KEY-----)를 포함한 개인키 파일의 전체 내용이어야 합니다.
  • Passphrase(선택 사항): 개인키가 암호화되어 있다면 암호화에 사용된 패스프레이즈를 입력하세요. 암호화되지 않은 개인키를 사용하는 경우에는 이 필드를 비워 두세요.

키 쌍을 생성하고 구성하는 방법에 대한 자세한 내용은 Snowflake의 키 쌍 인증 문서를 참고하세요.

OAuth2 인증 사용#

OAuth2 인증은 별도의 Snowflake OAuth2 API 자격 증명을 사용하며, 먼저 Snowflake에서 OAuth 보안 통합을 설정해야 합니다.

ACCOUNTADMIN 역할 또는 CREATE INTEGRATION 권한이 있는 역할로 Snowflake에서 다음을 실행하세요.

CREATE SECURITY INTEGRATION n8n_oauth_integration
  TYPE = OAUTH
  ENABLED = TRUE
  OAUTH_CLIENT = CUSTOM
  OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'
  OAUTH_REDIRECT_URI = '<your-redirect-url>'
  OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE
  OAUTH_ISSUE_REFRESH_TOKENS = TRUE
  OAUTH_REFRESH_TOKEN_VALIDITY = 7776000
  OAUTH_USE_SECONDARY_ROLES = IMPLICIT
  OAUTH_ENFORCE_PKCE = TRUE;

<your-redirect-url>을 n8n 자격 증명에 표시된 OAuth Redirect URL로 바꾸세요. HTTPS로 연결하는 경우 OAUTH_ALLOW_NON_TLS_REDIRECT_URI 줄을 제거해도 됩니다.

그런 다음 클라이언트 ID와 시크릿을 조회합니다.

SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('N8N_OAUTH_INTEGRATION');

자세한 내용은 Snowflake의 사용자 지정 클라이언트용 OAuth 문서를 참고하세요.

Role을 제외한 공통 구성 필드 외에도 OAuth2 인증에는 다음이 필요합니다.

  • Client ID 및 Client Secret: 위에서 생성한 보안 통합에서 가져온 값입니다.

Account, Warehouse, Schema 값을 빠르게 찾으려면 Snowflake에서 사용자 이름을 선택하고 Account로 이동한 다음, 사용하려는 계정의 View Account Details를 선택하세요. Config File을 선택하고 Warehouse와 Schema를 고르면 필요한 연결 정보를 확인할 수 있습니다.

n8n에서 Connect my account를 선택하면 OAuth2 흐름이 시작됩니다. n8n이 Snowflake로 리디렉션하여 로그인하고 앱을 승인하게 한 다음, 토큰과 함께 다시 리디렉션합니다.

OAuth2 자격 증명에는 별도의 Role 필드가 없습니다. 대신 n8n이 OAuth 스코프의 일부로 역할을 요청합니다. 기본 스코프는 refresh_token session:role:SYSADMIN이므로 Snowflake 사용자에게 SYSADMIN 역할이 부여되어 있어야 합니다. 사용자가 다른 역할을 가지고 있거나 추가 스코프가 필요하다면, 연결하기 전에 Custom Scopes를 켜고 Enabled Scopes에서 session:role:SYSADMIN을 해당 사용자에게 부여된 역할의 session:role:<your-role>로 바꾸세요. 기본 스코프를 제거하면 노드가 올바르게 동작하지 않을 수 있습니다.

Snowflake 자격 증명

n8n v2.42
원문 보기

요약

다음 노드를 인증하는 데 이 자격 증명을 사용할 수 있습니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요. Snowflake 계정을 생성하세요. 서비스에 대한 자세한 내용은 Snowflake의 API 문서와 SQL 명령어 참조를 참고하세요.

다음 노드를 인증하는 데 이 자격 증명을 사용할 수 있습니다.

참고

이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.

사전 요구사항#

Snowflake 계정을 생성하세요.

지원되는 인증 방법#

관련 자료#

서비스에 대한 자세한 내용은 Snowflake의 API 문서와 SQL 명령어 참조를 참고하세요.

공통 구성 필드#

두 인증 방법 모두 다음 필드가 필요합니다.

  • Account 이름: 계정 이름은 Snowflake URL에서 https://와 snowflakecomputing.com 사이에 위치한 문자열입니다. 예를 들어 Snowflake 계정의 URL이 https://abc.eu-central-1.snowflakecomputing.com이라면 계정 이름은 abc.eu-central-1입니다.
  • Database: 자격 증명이 연결할 데이터베이스의 이름을 입력하세요.
  • Warehouse: 연결 후 세션에서 사용할 기본 가상 웨어하우스의 이름을 입력하세요. n8n은 쿼리 수행, 데이터 로드 등에 이 웨어하우스를 사용합니다.
  • Schema: 연결 후 사용하려는 스키마를 입력하세요.
  • Role: 연결 후 사용하려는 보안 역할을 입력하세요.
  • Client Session Keep Alive: 기본적으로 클라이언트 연결은 가장 최근 쿼리 실행 후 보통 3~4시간 뒤에 타임아웃됩니다. 이 설정을 켜면 clientSessionKeepAlive 파라미터가 true로 설정되어, 연결이 어떤 쿼리도 실행하지 않더라도 서버가 클라이언트의 연결을 무기한 유지합니다.

이러한 설정에 대한 자세한 내용은 세션 명령어를 참고하세요.

비밀번호 인증 사용#

공통 구성 필드 외에도 비밀번호 인증에는 다음이 필요합니다.

  • Username
  • Password

키 페어 인증 사용#

키 쌍 인증은 비밀번호 기반 인증의 대안으로서 강화된 보안을 제공합니다. 이 방법은 인증에 공개키-개인키 쌍을 사용합니다.

공통 구성 필드 외에도 키 쌍 인증에는 다음이 필요합니다.

  • Username: 공개키가 할당된 Snowflake 사용자입니다.
  • Private Key: PEM 형식(PKCS#8)의 개인키입니다. 이 값은 -----BEGIN ENCRYPTED PRIVATE KEY-----와 -----END ENCRYPTED PRIVATE KEY----- 구분자(암호화되지 않은 키의 경우 -----BEGIN PRIVATE KEY-----와 -----END PRIVATE KEY-----)를 포함한 개인키 파일의 전체 내용이어야 합니다.
  • Passphrase(선택 사항): 개인키가 암호화되어 있다면 암호화에 사용된 패스프레이즈를 입력하세요. 암호화되지 않은 개인키를 사용하는 경우에는 이 필드를 비워 두세요.

키 쌍을 생성하고 구성하는 방법에 대한 자세한 내용은 Snowflake의 키 쌍 인증 문서를 참고하세요.

OAuth2 인증 사용#

OAuth2 인증은 별도의 Snowflake OAuth2 API 자격 증명을 사용하며, 먼저 Snowflake에서 OAuth 보안 통합을 설정해야 합니다.

ACCOUNTADMIN 역할 또는 CREATE INTEGRATION 권한이 있는 역할로 Snowflake에서 다음을 실행하세요.

CREATE SECURITY INTEGRATION n8n_oauth_integration
  TYPE = OAUTH
  ENABLED = TRUE
  OAUTH_CLIENT = CUSTOM
  OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'
  OAUTH_REDIRECT_URI = '<your-redirect-url>'
  OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE
  OAUTH_ISSUE_REFRESH_TOKENS = TRUE
  OAUTH_REFRESH_TOKEN_VALIDITY = 7776000
  OAUTH_USE_SECONDARY_ROLES = IMPLICIT
  OAUTH_ENFORCE_PKCE = TRUE;

<your-redirect-url>을 n8n 자격 증명에 표시된 OAuth Redirect URL로 바꾸세요. HTTPS로 연결하는 경우 OAUTH_ALLOW_NON_TLS_REDIRECT_URI 줄을 제거해도 됩니다.

그런 다음 클라이언트 ID와 시크릿을 조회합니다.

SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('N8N_OAUTH_INTEGRATION');

자세한 내용은 Snowflake의 사용자 지정 클라이언트용 OAuth 문서를 참고하세요.

Role을 제외한 공통 구성 필드 외에도 OAuth2 인증에는 다음이 필요합니다.

  • Client ID 및 Client Secret: 위에서 생성한 보안 통합에서 가져온 값입니다.

Account, Warehouse, Schema 값을 빠르게 찾으려면 Snowflake에서 사용자 이름을 선택하고 Account로 이동한 다음, 사용하려는 계정의 View Account Details를 선택하세요. Config File을 선택하고 Warehouse와 Schema를 고르면 필요한 연결 정보를 확인할 수 있습니다.

n8n에서 Connect my account를 선택하면 OAuth2 흐름이 시작됩니다. n8n이 Snowflake로 리디렉션하여 로그인하고 앱을 승인하게 한 다음, 토큰과 함께 다시 리디렉션합니다.

OAuth2 자격 증명에는 별도의 Role 필드가 없습니다. 대신 n8n이 OAuth 스코프의 일부로 역할을 요청합니다. 기본 스코프는 refresh_token session:role:SYSADMIN이므로 Snowflake 사용자에게 SYSADMIN 역할이 부여되어 있어야 합니다. 사용자가 다른 역할을 가지고 있거나 추가 스코프가 필요하다면, 연결하기 전에 Custom Scopes를 켜고 Enabled Scopes에서 session:role:SYSADMIN을 해당 사용자에게 부여된 역할의 session:role:<your-role>로 바꾸세요. 기본 스코프를 제거하면 노드가 올바르게 동작하지 않을 수 있습니다.