搜索

PythonReactSEOPDF
GitHub Skill

snowtower-user

Helps end-users get Snowflake access and use the platform. Use when users ask about requesting access, generating RSA keys, connecting to Snowflake, or basic Snowflake usage. Triggers on mentions of access requests, RSA keys, connection issues, or "how do I get access".

aiskillstore☆ 124 仓库 Stars6 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

SnowTower End-User Guide

A skill for helping end-users navigate the SnowTower platform to get Snowflake access and start working with data.

Who This Skill Is For

  • Data analysts who need to query Snowflake data
  • Data scientists who need database access for analysis
  • Engineers who need to connect applications to Snowflake
  • New team members requesting their first Snowflake account

Quick Reference

Getting Access (3 Steps)
Step 1: Generate RSA Keys    →    Step 2: Submit Request    →    Step 3: Connect
   (on your machine)              (GitHub issue)               (after approval)

Step 1: Generate Your RSA Keys

You MUST do this BEFORE requesting access.

# Generate RSA key pair (run on your local machine)
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -nocrypt -out ~/.ssh/snowflake_rsa_key.p8
openssl rsa -in ~/.ssh/snowflake_rsa_key.p8 -pubout -out ~/.ssh/snowflake_rsa_key.pub

# Secure your private key (IMPORTANT!)
chmod 400 ~/.ssh/snowflake_rsa_key.p8

# Display your PUBLIC key (copy this for the access request)
cat ~/.ssh/snowflake_rsa_key.pub

Output looks like:

-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
...many lines of characters...
-----END PUBLIC KEY-----
Key Security Rules
Key Type File Share?
Private key ~/.ssh/snowflake_rsa_key.p8 NEVER share this
Public key ~/.ssh/snowflake_rsa_key.pub Safe to share

Step 2: Request Access

  1. Go to the Access Request Form
  2. Select "New User Request"
  3. Fill in your details:
    • Full name
    • Email address
    • Team/department
    • Reason for access
    • Paste your PUBLIC key (from Step 1)
  4. Submit the form

Typical approval time: 3-5 business days


Step 3: Connect to Snowflake

After your account is approved, you'll receive:

  • Your username (usually FIRSTNAME_LASTNAME)
  • The account identifier
  • Your default role and warehouse
Using Snow CLI (Recommended)
# Add your connection
snow connection add \
  --connection-name prod \
  --account YOUR_ACCOUNT \
  --user YOUR_USERNAME \
  --authenticator SNOWFLAKE_JWT \
  --private-key-path ~/.ssh/snowflake_rsa_key.p8

# Test the connection
snow sql -c prod -q "SELECT CURRENT_USER(), CURRENT_ROLE()"
Using Python
import snowflake.connector

conn = snowflake.connector.connect(
    account='YOUR_ACCOUNT',
    user='YOUR_USERNAME',
    private_key_file_pwd=None,
    private_key_file='~/.ssh/snowflake_rsa_key.p8',
    warehouse='MAIN_WAREHOUSE',
    role='YOUR_ROLE'
)
Using the Snowflake Web UI
  1. Go to your organization's Snowflake URL
  2. Enter your username
  3. Use the password provided by IT (not your RSA key)
  4. Enable MFA when prompted

What You Get After Approval

Your Default Role

New users typically receive a role like SNOWTOWER_USERS__T_ROLE which grants:

  • Read access to shared production data
  • Access to common warehouses
  • Ability to create objects in your personal database
Your Personal Database

You get your own database: DEV_YOURNAME

-- Switch to your database
USE DATABASE DEV_YOURNAME;

-- Create schemas and tables freely
CREATE SCHEMA my_analysis;
CREATE TABLE my_analysis.test_data (id INT, value VARCHAR);
Your Default Warehouse

Usually MAIN_WAREHOUSE:

  • Auto-suspends after 60 seconds of inactivity
  • X-Small size by default
  • Shared resource - be mindful of heavy queries

First Session Checklist

-- 1. Check your current context
SELECT CURRENT_USER(), CURRENT_ROLE(), CURRENT_WAREHOUSE();

-- 2. See what databases you can access
SHOW DATABASES;

-- 3. See what roles you have
SHOW ROLES;

-- 4. Switch to your dev database
USE DATABASE DEV_YOURNAME;

-- 5. Create your first schema
CREATE SCHEMA IF NOT EXISTS sandbox;
USE SCHEMA sandbox;

-- 6. Test creating a table
CREATE TABLE test (id INT);
INSERT INTO test VALUES (1), (2), (3);
SELECT * FROM test;
DROP TABLE test;

Common Issues & Solutions

"Authentication failed"

Cause: RSA key mismatch or incorrect setup

Solution:

# Verify your private key is readable
ls -la ~/.ssh/snowflake_rsa_key.p8

# Check permissions (should be 400 or 600)
chmod 400 ~/.ssh/snowflake_rsa_key.p8

# Verify the public key matches what was submitted
cat ~/.ssh/snowflake_rsa_key.pub
"Insufficient privileges"

Cause: You don't have access to that object

Solution:

  • Check you're using the correct role: SELECT CURRENT_ROLE();
  • Request additional access if needed via GitHub issue
"Warehouse is suspended"

Cause: Warehouse auto-suspended to save costs

Solution:

-- Just run a query - it auto-resumes
SELECT 1;
"Cannot connect to Snowflake"

Checklist:

  1. Is your account approved? (Check the GitHub issue)
  2. Is the account identifier correct?
  3. Is your private key path correct?
  4. Are you on the corporate network / VPN if required?

Getting More Access

Need access to additional databases, schemas, or roles?

  1. Open a new GitHub issue
  2. Specify exactly what you need access to
  3. Include business justification
  4. Your request will be reviewed by an admin

Two Authentication Methods

Method Use For How
RSA Key CLI, scripts, applications Private key file
Password Web UI only Provided by IT

Best Practice: Always use RSA key authentication for programmatic access. Only use password for the web interface.


Need Help?

  • Access issues: Open a GitHub issue
  • Connection problems: Check the troubleshooting section above
  • General questions: Ask your team lead or Snowflake admin

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-01-28
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!