Skip to main content

How to connect Snowflake to Coworker

Connect Snowflake so Coworker can see who is using your warehouse and what changed. Snowflake is admin-connected for indexing with an RSA key-pair service user; per-user OAuth is reserved for interactive SQL tools.

What Coworker can do with Snowflake

  • Index database activity, role hierarchy and schema changes from ACCOUNT_USAGE

  • Produce one report per database with activity: who read and wrote, notable schema changes, and workspace cost context. Idle databases produce nothing.

  • Run read queries for data questions through the SQL tool

Reports inherit each database's access policy, computed from Snowflake's own role grants — visible to the people with a grant path to that database.

Before you start

  • You must be a Coworker Network Admin

  • You need a dedicated Snowflake TYPE=SERVICE user, a dedicated role and warehouse, and an unencrypted PKCS#8 private key

  • The role needs ACCOUNT_USAGE plus the grants to inspect role hierarchy and database activity

Connect as an admin

  1. Create the service user, role and warehouse in Snowflake, and generate an RSA key pair.

  2. Register the public half on the service user with ALTER USER … SET RSA_PUBLIC_KEY. Pasting the private key into Coworker does nothing until you do this.

  3. Open Data Sources in Coworker and select Snowflake.

  4. Paste the private key and enter your warehouse and schema mapping.

  5. Save. Coworker checks the credential and, if the public key is missing or mismatched, shows the exact statement to run.

Connect as a member

  1. Go to the Work page and click Data Sources.

  2. Select Snowflake and complete the OAuth authorization for interactive SQL.

OAuth credentials are deliberately not used for indexing. A connection carrying only the OAuth pair is valid — the tools work and nothing is synced.

Good to know

  • PKCS#1 keys (BEGIN RSA PRIVATE KEY) and passphrase-protected keys are rejected.

Did this answer your question?