You are here:
Create a Live Connection to Snowflake
Create a live connection to Snowflake warehouse to explore your data stored there.
Required Editions
| User Permissions Needed | |
|---|---|
| To create live connections to Snowflake: | Enable CRM Analytics Direct Data for external data sources |
| To explore data directly in Snowflake: | Explore External Data Directly |
Connect to Snowflake with OAuth
To use the CRM Analytics Direct Data for Snowflake with an OAuth connection, configure Snowflake, Salesforce, CRM Analytics, and an external OAuth authorization server like Okta. These high-level steps help you navigate the process, but contact your Network Security or IT department for help with configuration consistent with your organization’s security requirements.
- Configure Snowflake and your selected external authorization server. Here’s Snowflake's help, with detailed instructions for connecting to services like Okta and Microsoft Azure AD.
- With the authorization server configured, follow the steps under Define an Authentication Provider in Your Salesforce Org from Salesforce Help.
- With the authentication provider added to Salesforce, define a named credential in Salesforce. Select the OAuth 2.0 authentication protocol and Per User identity type.
- Add the live Snowflake connection. For Authentication Type setting,
enter UserBasedOAuth.
Note OAuth 2.0 is the industry-standard protocol for authorization, however we are unable to test every possible combination of services. Log a case with Salesforce Customer Support if your service cannot connect with the Authentication Provider system.
Create the Live Connection
- Authenticate your account with Snowflake.
- In CRM Analytics, click the gear icon (
) and select Data Manager. - In the data manager, click the Connect tab.
- Click Connect to Data.
- Click Live Connections.
Note If you don’t see the Live Connections tab, you need to Enable Direct Data in CRM Analytics first. - Click Add Connection.
- Click Snowflake Direct Connector and enter its settings, as described in the Connection Settings section.
- When done, click Save or Save and Create Dataset.
Create Live Datasets for a Snowflake Source Table
After creating the live connection, create a live dataset that lets users explore Snowflake tables or views available with the connection.
After creating the live connection, enable a live dataset for the connection.
- In the data manager, click the Data tab.
- On the Live Datasets tab, click Create Dataset. Select the connection and enable a Snowflake source table that is available with the connection.
- Name the live dataset and assign it to a CRM Analytics app. Use the app to control which Salesforce users, roles, and groups have access to explore Snowflake data with the connection.
- When done, click Create Live Dataset.
To begin exploring, click the live dataset from the Datasets tab in CRM Analytics Studio.
Snowflake Live Connections Settings
All settings require a value, unless otherwise indicated.
| Setting | Description |
|---|---|
| Connection Name | Required. Identifies the live connection. Use a convention that lets you easily distinguish between different connections. |
| Developer Name | Required. The API name for the connection. This name must be unique, begin with a letter, and can only contain underscores and alphanumeric characters. This name can’t include spaces, end with an underscore, or contain two consecutive underscores. You can’t change the developer name after you create the connection. |
| Description | Required. The escription of the connection for internal use. |
| Authentication Type | Required. The variety of authentication used for this connection. Accepted
values are
|
| Named Credential | Optional. Use when the authentication type is UserBasedOAuth. The name field from a named credential stored in your Salesforce org. See Named Credentials. |
| Username | Optional. Use when the authentication type is |
| Password | Optional. Use when the authentication type is |
| Account | Required. The name of your Snowflake account. |
| Warehouse | Required. The Snowflake warehouse name. This setting is case-sensitive, so enter the value exactly as it appears in Snowflake. |
| Role | Optional. The Snowflake role assigned to the user you’re using to connect. To keep data secure, we recommend connecting with a Snowflake user granted a read-only role. |
| Database | Required. The Snowflake database name. This setting is case-sensitive, so enter the value exactly as it appears in Snowflake. |
| Schema | Required. The Snowflake schema whose data you want to explore with the connection. You can either add all the tables you want to explore to a single Snowflake schema or create a separate connection for each schema. To keep data secure, we recommend creating a separate Snowflake schema specifically for Direct Data for Snowflake. |
| Private Key | Optional. Use when the authentication type is |
| Private Key Passphrase | Optional. Use when the authentication type is |


