snowflake-connections

Configure Snowflake connections for CLI, Streamlit, Snowpark, and dbt.

34|13|Updated Feb 1, 2022
One-click install
npx skills add https://github.com/sfc-gh-dflippo/snowflake-dbt-demo --skill snowflake-connections
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: snowflake-connections
Source: https://github.com/sfc-gh-dflippo/snowflake-dbt-demo/tree/main/.claude/skills/snowflake-connections
Command: npx skills add https://github.com/sfc-gh-dflippo/snowflake-dbt-demo --skill snowflake-connections

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill eliminates the complexity and security risks of configuring Snowflake connections for different tools like CLI, Streamlit, dbt, and Snowpark.

Core Features & Use Cases

  • Multiple Authentication Methods: Configure SSO, key pair, username/password, and OAuth authentication securely.
  • Multi-Environment Management: Set up separate connection profiles for development, staging, and production environments.
  • Use Case: Imagine you need to deploy a Streamlit app to production. Use this Skill to set up secure key pair authentication, override settings with environment variables, and ensure proper security practices for production deployment.

Quick Start

Use the snowflake-connections skill to configure a secure key pair authentication for my production Snowflake environment.

Frequently Asked Questions about snowflake-connections

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure Snowflake connections for CLI, Streamlit, and dbt?

Configure Snowflake connections by setting up connections.toml (CLI, Streamlit, Snowpark) and profiles.yml (dbt) with account, user, warehouse, database, schema, and role fields. Place connections.toml in ~/.snowflake/ on Linux/Mac or %APPDATA%\.snowflake\ on Windows. Choose your authentication method—SSO, key pair, username/password, or OAuth—and add credentials to the appropriate config file.

What authentication methods does Snowflake support for secure connections?

Snowflake supports four authentication methods: SSO/external browser, key pair authentication (with optional passphrase), username/password, and OAuth tokens. Key pair is recommended for production and CI/CD workflows. Each method configures differently in connections.toml; key pair requires private_key_path and optional private_key_passphrase fields.

Can I use environment variables to override Snowflake connection settings?

Yes. Environment variable overrides let you dynamically change connection parameters without modifying config files, making multi-environment deployments (development, staging, production) easier. Override specific fields like warehouse or role per environment while keeping base credentials in connections.toml.

How do I set up separate Snowflake connection profiles for development and production?

Define multiple connection profiles in connections.toml or profiles.yml with distinct names and settings for each environment. Specify the target profile when connecting from CLI, Streamlit, or dbt. Use environment variable overrides or profile selection to switch between development, staging, and production without changing files.

What security best practices should I follow for Snowflake key pair authentication?

Store private keys securely outside your repository, use key passphrases for encryption, rotate keys regularly, and never commit credentials to version control. For CI/CD, inject private keys via secrets management tools. Restrict file permissions on private_key_path to prevent unauthorized access.

Why would I use this Skill instead of manually configuring Snowflake connections?

This Skill consolidates configuration guidance for multiple tools (CLI, Streamlit, Snowpark, dbt), covers all authentication methods, handles multi-environment setup, and includes security best practices and troubleshooting. It eliminates guesswork on file paths, required fields, and credential rotation across tools.