Required Role: Snowflake Account Administrator or equivalent
Why Key-Pair?: RSA key-pair is the industry-standard authentication method for Snowflake service accounts — recommended by Snowflake and used by dbt, Fivetran, Airbyte, and other major data tools — because it never expires, requires no token refresh, and transmits no secrets over the wire.
Prerequisites
Before you begin, make sure you have:- Snowflake Account Administrator or equivalent access
- Organization administrator access in Cora.ai
- An existing Snowflake warehouse with the data you want to share
Setup Steps
The steps below represent our recommended setup for security and isolation. Your team is free to adapt the naming, schema structure, and warehouse configuration to fit your existing conventions. The only hard requirements are that Cora.ai’s service user has
SELECT access to the relevant views and uses key-pair authentication.1
Create a Dedicated Schema for Cora Views
We recommend a dedicated database and schema that contains only the views Cora.ai should access. This acts as a clear security boundary: Cora.ai has no visibility into any other schema. If your team prefers to grant access to views in an existing schema, that works too.Then create views in this schema that mirror your data exports:Keep the same column names and data types so the schema Cora.ai sees is consistent with your source data.
2
Create a Read-Only Service Account
Create a dedicated role and service user scoped exclusively to the Cora views schema.
3
Generate an RSA Key Pair
Generate an unencrypted RSA private key and assign the public key to the service user:Assign the public key in Snowflake:See Snowflake’s Key-Pair Authentication guide for details.
4
Connect Snowflake in Cora.ai
- Log into Cora.ai as an organization administrator
- Navigate to Settings → Organization Settings → Integrations
- Locate the Snowflake integration card and click Connect
- Enter the credentials listed in the table below
- Click Connect to save
5
Validate
Once the Snowflake integration card shows Connected, Cora.ai will begin querying your views on a scheduled basis. Confirm the expected data is flowing correctly in Cora.ai.
6
Enable Data Ingestion
Enable data ingestion to sync information from this integration into Cora.
- Click the connected Snowflake integration card to open the settings panel
- Under Data Ingestion, toggle the switch on
- Click Save
Security Model
Notes
- Read-only access: Cora.ai only reads from your Snowflake views. Nothing is written back.
- No credential expiry: RSA key pairs do not expire. Rotate at your discretion by generating a new pair and updating both Snowflake and the Cora.ai integration.
- Compute costs: Queries consume credits from the designated warehouse. An X-Small with auto-suspend is sufficient for typical workloads.
- Schema changes: New columns on existing views are detected automatically. New views added to the Cora schema are picked up via the
FUTURE VIEWSgrant. - No passphrase: The private key must be unencrypted (PKCS#8, no passphrase). This simplifies automation and avoids passphrase management overhead.