Connectors and Connections > Data Ingestion and Replication connection properties > Snowflake Data Cloud connection properties
  

Snowflake Data Cloud connection properties

Create a Snowflake Data Cloud connection to securely read data from or write data to Snowflake.

Prepare for authentication

Before you configure the connection properties, you need to keep the authentication details handy based on the authentication type that you want to use.

Standard

To connect to Snowflake using standard authentication, you need the Snowflake account user name and password.
Let's get the required details such as the Snowflake account name, warehouse, and role details from the Snowflake account.
The following image shows you where you can find the name of your Snowflake account:
The Snowflake account name that you can get from the from the first part of the URL.
The following image shows you where you can find the name of the warehouse and role details of your Snowflake account:
The values for the User Role and Warehouse name fields are available on the Worksheet tab.

Authorization code

To connect to Snowflake using the OAuth 2.0 authorization code, you need the Snowflake client ID, authorization URL, access token URL, and access token.
To get the authorization details, you need to create an authorization integration in Snowflake, and register the Informatica redirect URL in Security Integration. Security Integration is a type of integration that enables clients that support OAuth to redirect users to an authorization page and generate access tokens, and optionally, refresh tokens to access Snowflake.
Register the following Informatica redirect URL in Security Integration:
https://<Informatica cloud hosting facility for your organization>/ma/proxy/oauthcallback
If the access token expires, Informatica redirect URL, which is outside the customer firewall, tries to connect to the endpoint and retrieves a new access token.
For more information about how to create a security integration and get the authorization details, see Create security integration in the Snowflake documentation.

Key pair

To connect to Snowflake using key pair authentication, you need the private key file and private key file password, along with your Snowflake account user name.
Generate the public and private key pair using OpenSSL. The key pair authentication method requires a 2048-bit RSA key pair. Specify the path to the private key file and password in the connection properties to access Snowflake.

Client credentials

To connect to Snowflake using OAuth 2.0 client credentials, you need your Snowflake client ID, access token URL, client secret, scope, and the access token.
Configure the OAuth endpoint with the client credentials grant type and then create a security integration to get the authorization details.
Before you use the client credentials authentication to connect Snowflake, the organization administrator needs to perform the prerequisite tasks.
  1. 1Create a client application that is compatible with OAuth to use with Snowflake.
  2. 2Configure the authorization server with the client credentials Grant type.
  3. 3Create a security integration of type OAuth in Snowflake.
  4. For more information about how to create a security integration and get the authorization details, see Create security integration for external OAuth in the Snowflake documentation.
Note: You can't use connections configured with the client credentials authentication in mappings configured in advanced mode.

Connect to Snowflake

Let's configure the Snowflake Data Cloud connection properties to connect to Snowflake.

Before you begin

Before you get started, you'll need to get information from your Snowflake account based on the authentication type that you want to configure.
Check out Prepare for authentication to learn more about the authentication prerequisites.

Connection details

The following table describes the basic connection properties:
Property
Description
Connection Name
Name of the connection.
Each connection name must be unique within the organization. Connection names can contain alphanumeric characters, spaces, and the following special characters: _ . + -,
Maximum length is 255 characters.
Description
Description of the connection. Maximum length is 4000 characters.
Type
Snowflake Data Cloud
Runtime Environment
The name of the runtime environment where you want to run tasks.
You cannot run application ingestion and replication tasks and database ingestion and replication tasks on a Hosted Agent or serverless runtime environment.

Authentication types

Select the required authentication method and then configure the authentication-specific parameters.

JDBC URL parameters

You can use the additional JDBC URL parameters field in the Snowflake Data Cloud connection to customize and set any additional parameters when you connect to Snowflake.
The Snowflake warehouse, database, schema, table, and storage integration names are case-sensitive. Be sure to take this into account when you define properties in the additional JDBC parameters field.
You can configure the following properties as additional JDBC URL parameters in the Snowflake Data Cloud connection:
In addition to the parameters listed, this field provides you the flexibility to configure other Snowflake parameters based on your requirements.

Microsoft Azure Active Directory for external OAuth authorization

You can use Microsoft Azure Active Directory as an external OAuth authorization server to authenticate Snowflake.
To use Microsoft Azure Active Directory as an external OAuth authorization server, select Authorization Code as the authentication type in the connection properties. Provide the account name, warehouse, authorization URL, access token URL, client ID, client secret, access token, and scope details from the Microsoft Azure Active Directory OAuth authorization server.
To configure the Microsoft Azure Active Directory OAuth authorization server, see Configure Microsoft Entra ID for external OAuth in the Snowflake documentation.

Proxy server settings

If your organization uses an outgoing proxy server to connect to the Internet, the Secure Agent connects to Informatica Intelligent Cloud Services through the proxy server.
You can configure the Secure Agent to use the proxy server on Windows and Linux. You can use the unauthenticated or authenticated proxy server. You can configure proxy for connections used both in mappings and in mappings in advanced mode.
To configure proxy settings for the Secure Agent, use one of the following methods:

Private links to access Snowflake

You can access Snowflake using AWS or Azure Private Link endpoints.
When you create a Snowflake Data Cloud connection, specify the Snowflake private link account name in the Account field in the connection properties.
The AWS or Azure Private Link setup ensures that the connection to Snowflake uses the AWS or Azure internal network and does not take place over the public Internet.
To connect to the Snowflake account over the private AWS network, see AWS Private Link and Snowflake.
To connect to the Snowflake account over the private Azure network, see Azure Private Link and Snowflake.

Use the serverless runtime environment with key pair authentication

You can use a serverless runtime environment hosted on AWS or Azure to connect to Snowflake with key pair authentication.
Before you configure a Snowflake connection using the serverless runtime environment, perform the following tasks:
Add the private key file path and file name in the Amazon S3 bucket or Azure container in your AWS or Azure account
Perform the following steps to configure a Snowflake connection in a serverless runtime environment:
  1. 1Create the following structure for the serverless agent configuration in AWS or Azure: <Supplementary file location>/serverless_agent_config
  2. 2Add the path to the private key file, including the private key file name, in the Amazon S3 bucket or Azure container in the following location in your AWS or Azure account: <Supplementary file location>/serverless_agent_config/SSL
Configure the .yml serverless configuration file
Perform the following steps to configure the .yml serverless configuration file in the serverless runtime environment, and to copy the private key file path and file name entries to the serverless agent directory:
  1. 1Copy the following code snippet to a text editor:
  2. version: 1
    agent:
    agentAutoApply:
    general:
    sslStore:
    - fileCopy:
    sourcePath: SSL/<Private key file name>
    where the source path is the directory path of the private key file in AWS or Azure.
  3. 2Ensure that the syntax and indentations are valid, and then save the file as serverlessUserAgentConfig.yml in the following AWS or Azure location: <Supplementary file location>/serverless_agent_config
  4. When the .yml file runs, the private key file is copied from the AWS or Azure location to the serverless agent directory.
Configure the connection properties to connect to Snowflake
Specify the path to the private key file, including the private key file name in the Private Key File field in the Snowflake Data Cloud connection.
For example, /home/cldagnt/SystemAgent/serverless/configurations/ssl_store/<Private key file name>