Skip to main content

Snowflake

Snowflake is a cloud-based data warehousing and analytics platform that provides comprehensive access control, security management, and operational monitoring capabilities. This integration enables users to query and analyze Snowflake's configuration, security settings, user access patterns, resource utilization, and organizational structure.

CategoryData warehouse
DirectionQuery source
Sign-inUsername & Password, Key Pair Authentication, OAuth Token
Query languagesSQLite
Tables18
Query templates51
Websitesnowflake.com

Before you start​

Huntbase can sign in to Snowflake with any of these methods: Username & Password, Key Pair Authentication, OAuth Token. Pick one, create the credential in Snowflake, then keep it to hand for the Connect step.

Key Pair Authentication​

Authenticate using an RSA private key (key pair auth) for the Snowflake user.

  1. Generate an encrypted private key with openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out rsa_key.p8, and set a passphrase when prompted.
  2. Generate the public key with openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub.
  3. Assign the public key to the Snowflake user Huntbase connects as with ALTER USER <user> SET RSA_PUBLIC_KEY='<key>'. Leave out the -----BEGIN and -----END lines.
  4. Run this as a role with OWNERSHIP or MODIFY PROGRAMMATIC AUTHENTICATION METHODS on that user.
Watch out for
  • Snowflake is removing password sign-in for non-human users, and all service users are blocked from password authentication in Phase 3 (August to October 2026). Use key pair authentication for this connection.
  • Snowflake no longer prefers the account locator format. It recommends orgname-accountname identifiers.

For the vendor's own instructions, see Snowflake key pair authentication documentation.

tip

Use a dedicated, read-only credential for Huntbase where the product allows it. Huntbase only needs to read.

Connect Snowflake​

  1. Go to Connections and click New connection, or click New connection on the Snowflake product page.
  2. On Product, pick Snowflake and choose the Owner.
  3. On Details, give the connection a Name and, optionally, a Description.
  4. On Connect, fill in the settings and credentials described below.
  5. On Verify, review the summary and click Create & check.

For everything else on the setup page — saving a draft, I'll do this later, and what each check result means — see Connections.

Settings​

Where your Snowflake lives:

FieldRequiredNotes
Account IDYesYour account identifier, such as the account locator xy12345. In Snowsight, open the account selector and choose View account details to find it.
UsernameNo
Region IDNoThe region segment of your account locator, such as us-west-2.aws, which is the default.
RoleNo
WarehouseNo
Private Key PathNo
OAuth Client IDNo
OAuth EndpointNo
OAuth Redirect URLNo

Credentials​

Choose a Method, enter a Credential label (for example Production), then fill in the fields for that method.

Username & Password​

FieldRequiredNotes
PasswordYesSecret — not shown again after you save it.

Key Pair Authentication​

FieldRequiredNotes
Private KeyYesPaste the full contents of rsa_key.p8, including the -----BEGIN and -----END lines. Secret — not shown again after you save it.
Private Key PassphraseNoThe passphrase you set when you generated the encrypted key. Secret — not shown again after you save it.

OAuth Token​

FieldRequiredNotes
OAuth Access TokenYesSecret — not shown again after you save it.
OAuth Client SecretNoSecret — not shown again after you save it.
OAuth Refresh TokenNoSecret — not shown again after you save it.

Query it​

Once connected, Snowflake can serve these languages in a query tab, and Scout can use it when you ask in Auto:

LanguageUse it for
SQLiteSQL over the 18 tables listed below, alongside every other connected source.

Example: SQLite​

List Snowflake warehouse basic info — Analyze the settings to understand the status and characteristics of your Snowflake warehouses.

select
name,
size,
type,
state
from
snowflake_warehouse;

Snowflake ships with 51 query templates. Find them in Library › Queries — see Query templates.

Tables​

Snowflake adds 18 tables. Browse their columns from Schema in the query bar's ⋯ menu.

All 18 tables
TableContains
snowflake_account_grantLists all the account-level (i.e. global) privileges that have been granted to roles.
snowflake_account_parameterLists all the account-level parameters.
snowflake_databaseSnowflake database is a logical grouping of schemas.
snowflake_database_grantLists all privileges that have been granted on the database.
snowflake_login_historyThis Account Usage view table can be used to query login attempts by Snowflake users within the last 365 days (1 year).
snowflake_network_policyNetwork policies enable restricting access to your account based on user IP address.
snowflake_resource_monitorLists all the resource monitors in your account(s) for which you have access privileges.
snowflake_roleAn entity to which privileges can be granted. Roles are in turn assigned to users.
snowflake_role_grantLists all privileges and roles granted to the role.
snowflake_schemataThis Information Schema view displays a row for each schema in the specified (or current) database, including the INFORMATION_SCHEMA schema itself.
snowflake_sessionThis Account Usage view provides information on the session, including information on the authentication method to Snowflake and the Snowflake login event. Snowflake returns one row for each session created over the last year.
snowflake_session_policyA session policy defines the idle session timeout period in minutes and provides the option to override the default idle timeout value of 4 hours.
snowflake_userA user identity recognized by Snowflake, whether associated with a person or program.
snowflake_user_grantList all roles granted to a user.
snowflake_viewSnowflake view is basically a named definition of a query.
snowflake_view_grantLists view-level privileges that have been granted to roles.
snowflake_warehouseA warehouse, is a cluster of compute resources in Snowflake. Warehouse provides the required resources, such as CPU, memory, and temporary storage, to perform queries.
snowflake_warehouse_metering_historyThis Account Usage view can be used to return the hourly credit usage for a single warehouse (or all the warehouses in your account) within the last 365 days (1 year).

Next steps​