Data Connections
Snowflake

Snowflake

This chapter describes how to link Snowflake as an external data source to the Morph platform.

Setup

First, select Connections at the top of the screen and press the Create button.

External Connection

The Create connection side panel appears on the right-hand side of the screen, where you can select Snowflake.

Create connection

The connection information entry screen will appear as shown below. Items marked with (*) must be entered.

Connection Options

Authentication method

There are two authentication methods that can be used to connect to Snowflake: 'OAuth2' and 'Service Account'. Each method is suitable for different use cases.

OAuth2 authentication

OAuth2 is an industry-standard protocol for secure third-party authentication. This method allows users to securely grant data access without directly exposing their Snowflake account credentials. The process requires the user to set up an OAuth client within Snowflake and provide its client ID and secret to Morph. This allows secure data access via the API.

Service Account authentication

Service Account authentication is used when an automated process or system service accesses a database without human intervention; set up a Service Account in Snowflake and provide the username and password (or private key) for that account in the Morph settings. This allows scripts and back-end applications to manipulate the database directly and securely.

These authentication methods make the connection to Snowflake more secure and flexible, allowing data access according to the needs of different applications.

Snowflake integration using OAuth2 authentication

  1. Configure Account and OAuth Server: Specify the URL of the Snowflake instance. Example: https://<account_name>.snowflakecomputing.com
  2. Get a Client ID: Security integration with Snowflake account (Ref: CREATE SECURITY INTEGRATION (Snowflake OAuth) (opens in a new tab)). This will generate a Client ID to be used for OAuth2 authentication.
  3. Get Client Secret: Obtain the Client Secret in the same way as when the Client ID was generated. This Secret is required to authenticate the connection.
  4. Configure on Morph screen: On the Morph connection settings page, select 'OAuth2', enter the Client ID and Client Secret obtained and press the Sign in Snowflake button to proceed to the actual OAuth integration.
  5. When you are transferred from Sign in Snowflake to the screen on the Snowflake side, allow the Morph connection request. Once you allow it, you will be redirected to the Morph screen and the setup is complete.

Snowflake integration using Service Account

  1. Configure Account and Server: Specify the URL of the Snowflake instance. Example: https://<account_name>.snowflakecomputing.com
  2. Set Username: Enter the username to be used by Snowflake. This username must be that of a Service Account preconfigured in Snowflake. [Ref: Key pair authentication and key pair rotation (opens in a new tab)]
  3. Configure Private Key: Enter the Private Key used to authenticate the Service Account user in Snowflake.
  4. Configure on Morph screen: On the Morph connection settings page, select 'Service Account' and enter the configured Server URL, Username and Private Key.

Completing the connection

After completing the Account section and pressing the Create button at the bottom left of the screen, next enter the Connection slug to complete the connection settings.

Connection slug: Uniquely identifies the connection to the external data source and cannot be empty. Set arbitrarily using only letters, numbers and underscores.

Snowflake Slug

When the connection settings appear in the Connections list, the configuration is complete.

Snowflake Complete