Snowflake에 앱 연결하기
Snowflake OAuth를 사용해 Snowflake를 Lovable 앱에 연결하세요. Lovable의 커넥터 게이트웨이를 통해 SQL을 실행하고 SQL REST API를 사용하며 Snowflake 계정의 웨어하우스와 데이터를 다룰 수 있습니다.
Snowflake는 분석, 데이터 엔지니어링, AI/ML 워크로드를 위한 클라우드 데이터 플랫폼입니다. Snowflake 앱 커넥터는 Snowflake 네이티브 OAuth(커스텀 보안 통합)를 사용하므로 프로젝트에 장기 비밀번호를 포함하지 않고도 앱이 Lovable의 커넥터 게이트웨이를 통해 Snowflake를 호출할 수 있습니다.
Snowflake를 연결하면 앱은 다음 작업이 가능합니다:
- SQL 실행 및 SQL REST API 사용(예: 구문 제출 및 상태 확인)
- 사용자의 role이 접근할 수 있는 warehouse, database, schema 다루기
- Snowflake를 기반으로 하는 내부 도구, 대시보드, 데이터 워크플로우 구축
Snowflake는 조직이 이미 Snowflake에 데이터를 중앙화하고 있으며, Lovable 앱이 해당 데이터를 안전하게 쿼리하거나 오케스트레이션해야 할 때 적합합니다.
주요 활용 사례 및 예시 앱
| 예시 앱 | 프롬프트 예시 | 설명 |
|---|---|---|
| SQL 탐색기 | 우리 analytics 스키마에 대해 읽기 전용 SQL을 실행하고 결과를 테이블로 보여주는 내부 도구를 만들어줘. | 앱 로직에서 정의한 가드레일을 갖춘 임시 쿼리. |
| 지표 대시보드 | Snowflake 요약 테이블에서 일간 매출과 가입 수를 날짜 필터와 함께 보여줘. | Snowflake의 모델링된 테이블로 구동되는 운영 대시보드. |
| 파이프라인 상태 | 사용자가 파일을 업로드한 뒤, Snowflake에서 적재 완료 여부를 폴링하고 성공/실패를 보여줘. | 웨어하우스 데이터 위에 올린 오케스트레이션 스타일 UX. |
| 지원 조회 | 계정 ID가 주어지면, 지원 UI용으로 Snowflake customers 뷰에서 주요 필드를 로드해줘. | 신뢰할 수 있는 웨어하우스 데이터로 제품 UI 보강. |
| 데이터 검증 | ETL 실행 후 스테이징 테이블에 대해 가벼운 행 수 및 null 검사를 실행해줘. | Snowflake에 대해 SQL을 사용한 품질 검사. |
Snowflake 연결 방식
- OAuth 2.0 (authorization code): Snowflake에서 커스텀 OAuth 통합을 등록하고 Lovable에 Account URL, Client ID, Client secret, Role을 입력합니다. 이후 사용자(또는 관리자)가 Snowflake에 로그인하여 연결을 승인합니다.
- Role: 앱에 필요한 웨어하우스와 객체 접근 권한을 가진 role을 선택하세요.
ACCOUNTADMIN이나SECURITYADMIN은 사용하지 마세요. 이들은 커넥터 유효성 검사 패턴에서 차단됩니다. - Gateway: API 요청은 Lovable의 커넥터 게이트웨이를 통해 프록시되며, 토큰 관리가 수행됩니다. 제한은 게이트웨이 기반 커넥터를 참고하세요.
Snowflake 측 설정 세부 정보는 Snowflake의 OAuth with clients 가이드를 참고하세요.
Snowflake 컴퓨트 및 스토리지 비용은 Lovable이 아닌 Snowflake / 해당 클라우드 계약에 따라 청구됩니다.
Snowflake 연결하기
워크스페이스 admin과 owner가 Snowflake 연결을 생성할 수 있습니다. 이 연결을 사용할 Lovable 프로젝트에 각 연결을 Link하세요.
사전 준비
- OAuth 보안 통합을 생성하거나 관리할 수 있는 Snowflake 계정 접근 권한
- 앱에 적합한 Snowflake role을 사용할 수 있는 권한 (
ACCOUNTADMIN또는SECURITYADMIN제외) - Lovable 워크스페이스 admin 또는 owner 권한
Step 1: Snowflake OAuth 통합 생성
필요하면 Snowflake 관리자와 협력하세요.
- Snowflake에서 커스텀 OAuth 보안 통합을 생성하고 OAuth client ID와 client secret을 얻습니다.
- redirect URI와 조직에서 필요한 기타 설정을 구성합니다. 승인이 완료될 수 있도록 Lovable이 연결 플로우 중에 보여주는 redirect URI를 사용하세요.
- account URL을 확인합니다 (예:
https://myorg-myaccount.snowflakecomputing.com).
Snowflake 문서를 참고하세요: Configure Snowflake OAuth for custom clients.
Step 2: Lovable에서 Snowflake 연결
- Connectors → App connectors를 열고 Snowflake를 선택합니다.
- Add connection을 클릭합니다.
- Display name을 입력합니다 (예:
Snowflake Prod). - Account URL, Client ID, Client secret, Role을 Snowflake와 정확히 동일하게 입력합니다.
- Connect / Authorize 플로우를 시작하고 프롬프트가 나타나면 Snowflake에 로그인합니다.
승인 후, Snowflake를 쿼리할 프로젝트에 연결을 연결하세요.
제한 사항
- scope와 role은 Snowflake OAuth 통합과 구성된 role에 의해 결정되며, 앱은 해당 권한을 초과할 수 없습니다.
- 방문자마다 사용자별 Snowflake 로그인을 제공하는 것이 이 커넥터의 목적은 아닙니다. 이것은 워크스페이스 연결에 대한 공유 승인을 나타냅니다.
- 게이트웨이 기반 커넥터에서 설명한 게이트웨이 제한이 적용됩니다.
Snowflake 연결에서 프로젝트 연결 해제
Editor 이상 권한을 가진 사용자는 연결 자체를 삭제하지 않고 특정 프로젝트만 연결 해제할 수 있습니다. 연결은 다른 프로젝트에서 계속 사용할 수 있습니다.
연결 해제 방법:
Connectors 열기
Connectors를 열고 App connectors로 이동한 뒤 **Snowflake**를 선택합니다.
연결 열기
관리할 연결을 엽니다.
프로젝트 선택
Linked projects에서 연결 해제할 프로젝트를 선택합니다.
확인
Unlink projects를 클릭하고 확인합니다.
연결 해제 후 해당 프로젝트는 이 연결을 통해 Snowflake에 접근할 수 없습니다. 필요하면 다른 연결로 다시 연결할 수 있습니다.
Snowflake 연결 삭제
워크스페이스 admin 또는 owner가 Snowflake 연결을 삭제할 수 있습니다.
연결 삭제는 영구적이며 되돌릴 수 없습니다. 연결된 모든 프로젝트에서 인증 정보가 제거되며, 새 연결을 만들기 전까지 이 연결을 사용하던 앱은 동작을 멈춥니다.
삭제 전에 Linked projects 섹션에서 현재 이 연결을 사용 중인 프로젝트를 먼저 확인하세요.
삭제 방법:
Connectors 열기
Connectors를 열고 App connectors로 이동한 뒤 **Snowflake**를 선택합니다.
연결 열기
삭제할 연결을 엽니다.
연결된 프로젝트 확인
Linked projects 섹션을 확인합니다.
삭제
Delete this connection에서 Delete를 클릭하고 확인합니다.