ADO.NET Provider for Snowflake

Build 24.0.9175

Connection String Options

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.

For more information on connecting, see Establishing a Connection.

Authentication


PropertyDescription
AuthSchemeThe authentication scheme used. Accepted entries are Password, OKTA, PrivateKey, AzureAD, AzureMSI, OAuth, PingFederate, or ExternalBrowser.
AccountThe Account provided for authentication with Snowflake database. This is usually derived from the URL automatically.
WarehouseThe name of the Snowflake warehouse.
UserThe username provided for authentication with the Snowflake database.
PasswordThe user's password.
URLThe URL of Snowflake database.
MFAPasscodeSpecifies the passcode to use for multi-factor authentication.
RoleNameThe role of the Snowflake user: PUBLIC, SYSADMIN, or ACCOUNTADMIN.
CredentialsLocationThe location of the settings file where credentials are saved.
AzureResourceThe Azure Active resource to authenticate to (used during Azure Managed Service Identity exchange).It should be set to the App Id URI.

Connection


PropertyDescription
UseVirtualHostingIf true (default), buckets will be referenced in the request using the hosted-style request: http://yourbucket.s3.amazonaws.com/yourobject. If set to false, the bean will use the path-style request: http://s3.amazonaws.com/yourbucket/yourobject. Note that this property will be set to false, in case of an S3 based custom service when the CustomURL is specified.

Azure Authentication


PropertyDescription
AzureTenantIdentifies the Snowflake tenant being used to access data, either by name (for example, contoso.omnicrosoft.com) or ID. (Conditional).

SSO


PropertyDescription
ProofKeyThe ProofKey for authentication with Snowflake database. This is usually derived from GetSSOAuthorizationURL call.
ExternalTokenThe External Token for authentication with the Snowflake database. This is usually derived from the external handler. For example, handle the callback URL from procedure GetSSOAuthorizationURL will get this token.
SSOPropertiesAdditional properties required to connect to the identity provider in a semicolon-separated list.

KeyPairAuth


PropertyDescription
PrivateKeyThe private key provided for key pair authentication with Snowflake.
PrivateKeyPasswordThe password for the private key specified in the PrivateKey property, if required.
PrivateKeyTypeThe type of key store containing the private key to use with key pair authentication.
PrivateKeySubjectThe subject of the certificate containing the private key to use with key pair authentication.

OAuth


PropertyDescription
InitiateOAuthSpecifies the process for obtaining or refreshing the OAuth access token, which maintains user access while an authenticated, authorized user is working.
OAuthClientIdSpecifies the client Id that was assigned the custom OAuth application was created. (Also known as the consumer key.) This ID registers the custom application with the OAuth authorization server.
OAuthClientSecretSpecifies the client secret that was assigned when the custom OAuth application was created. (Also known as the consumer secret ). This secret registers the custom application with the OAuth authorization server.
OAuthAccessTokenA token received after authentication to the OAuth network, granting the user access. The access token is used in place of the user's login ID and password, which stay on the server.
CallbackURLThe OAuth callback URL to return to when authenticating. This value must match the callback URL you specify in your Add-In settings.
StateAn optional value that has meaning for your OAuth App.
OAuthSettingsLocationSpecifies the location of the settings file where OAuth values are saved. Storing OAuth settings in a central location avoids the need for users to enter OAuth connection properties manually each time they log in. It also enables credentials to be shared across connections or processes.
OAuthAuthenticatorThis determines the authenticator that the OAuth application requests from Snowflake.
ScopeThis determines the scopes that the OAuth application requests from Snowflake.
OAuthAuthorizationURLThe authorization URL for the OAuth service.
OAuthAccessTokenURLThe URL to retrieve the OAuth access token from.
OAuthVerifierSpecifies a verifier code returned from the OAuthAuthorizationURL . Used when authenticating to OAuth on a headless server, where a browser can't be launched. Requires both OAuthSettingsLocation and OAuthVerifier to be set.
PKCEVerifierA random value used as input for calling GetOAuthAccessToken in the PKCE flow.
OAuthRefreshTokenGets and refreshes the currently-active OAuth Access Token.
OAuthExpiresInSpecifies the duration in seconds, of an OAuth Access Token's lifetime. The token can be reissued to keep access alive as long as the user keeps working.
OAuthTokenTimestampDisplays a Unix epoch timestamp in milliseconds that shows how long ago the current Access Token was created.

SSL


PropertyDescription
SSLServerCertSpecifies the certificate to be accepted from the server when connecting using TLS/SSL.

Firewall


PropertyDescription
FirewallTypeSpecifies the protocol the provider uses to tunnel traffic through a proxy-based firewall.
FirewallServerIdentifies the IP address, DNS name, or host name of a proxy used to traverse a firewall and relay user queries to network resources.
FirewallPortSpecifies the TCP port to be used for a proxy-based firewall.
FirewallUserIdentifies the user ID of the account authenticating to a proxy-based firewall.
FirewallPasswordSpecifies the password of the user account authenticating to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectSpecifies whether the provider checks your system proxy settings for existing proxy server configurations, rather than using a manually specified proxy server.
ProxyServerThe hostname or IP address of the proxy server that you want to route HTTP traffic through.
ProxyPortThe TCP port on your specified proxy server (set in the ProxyServer connection property) that has been reserved for routing HTTP traffic to and from the client.
ProxyAuthSchemeSpecifies the authentication method the provider uses when authenticating to the proxy server specified in the ProxyServer connection property.
ProxyUserThe username of a user account registered with the proxy server specified in the ProxyServer connection property.
ProxyPasswordThe password associated with the user specified in the ProxyUser connection property.
ProxySSLTypeThe SSL type to use when connecting to the proxy server specified in the ProxyServer connection property.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the proxy server set in the ProxyServer connection property.

Logging


PropertyDescription
LogfileSpecifes the file path to the log file where the provider records its activities, such as authentication, query execution, and connection details.
VerbositySpecifies the verbosity level of the log file, which controls the amount of detail logged. Supported values range from 1 to 5.
LogModulesSpecifies the core modules to include in the log file. Use a semicolon-separated list of module names. By default, all modules are logged.
MaxLogFileSizeSpecifies the maximum size of a single log file in bytes. For example, '10 MB'. When the file reaches the limit, the provider creates a new log file with the date and time appended to the name.
MaxLogFileCountSpecifies the maximum number of log files the provider retains. When the limit is reached, the oldest log file is deleted to make space for a new one.

Schema


PropertyDescription
LocationSpecifies the location of a directory containing schema files that define tables, views, and stored procedures. Depending on your service's requirements, this may be expressed as either an absolute path or a relative path.
BrowsableSchemasOptional setting that restricts the schemas reported to a subset of all available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC .
TablesOptional setting that restricts the tables reported to a subset of all available tables. For example, Tables=TableA,TableB,TableC .
ViewsOptional setting that restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC .
DatabaseThe name of the Snowflake database.
SchemaThe schema of the Snowflake database.

Caching


PropertyDescription
AutoCacheSpecifies whether the content of tables targeted by SELECT queries is automatically cached to the specified cache database.
CacheProviderThe namespace of an ADO.NET provider. The specified provider is used as the target database for all caching operations.
CacheConnectionThe connection string for the specified cache database.
CacheLocationSpecifies the path to the cache when caching to a file.
CacheToleranceThe tolerance, in seconds, for stale data in the specified cache database.
OfflineGet the data from the specified cache database instead of live Snowflake data.
CacheMetadataDetermines whether the provider caches table metadata to a file-based cache database.

Miscellaneous


PropertyDescription
AllowPreparedStatementPrepare a query statement before its execution.
AllowUserVariablesWhen set to True, user variables (prefixed by an $) can be used in SQL queries.
ApplicationNameThe application name connection string property expresses the HTTP User-Agent.
AsyncQueryTimeoutThe timeout for asynchronous requests issued by the provider to download large result sets.
BatchModeAllow specifying the batch mode. Default: Auto.
BatchSizeSpecifies the maximum number of rows included in each batch operation. Set to 0 to submit the entire batch as a single request.
BindingTypeAllow specifying the binding type for the Date, Time and Timestamp_* type.
ConnectionLifeTimeSpecifies the maximum lifetime of a connection in seconds. When the specified time elapses, the provider closes the connection. Set to 0 or leave empty for no time limit.
CustomStageThe name of a custom stage to use during bulk write operations.
ExternalStageAWSAccessKeyYour AWS account access key. Only used when defining a CustomStage for bulk write operations.
ExternalStageAWSSecretKeyYour AWS account secret key. Only used when defining a CustomStage for bulk write operations.
ExternalStageAzureSASTokenThe string value of the Azure Blob shared access signature.
IgnoreCaseWhether to ignore case in identifiers. Default: false.
IncludeTableTypesIf set to true, the provider will report the types of individual tables and views.
MaxRowsSpecifies the maximum rows returned for queries without aggregation or GROUP BY.
MaxThreadsSpecifies the number of concurrent requests.
MergeDeleteA boolean indicating whether batch DELETE statements should be converted to MERGE statements automatically. Only used when the DELETE statement's where clause contains a table's primary key field only and they are combined with AND logical operator.
MergeInsertA boolean indicating whether INSERT statements should be converted to MERGE statements automatically. Only used when the INSERT contains a table's primary key field.
MergeUpdateA boolean indicating whether batch UPDATE statements should be converted to MERGE statements automatically. Only used when the UPDATE statement's where clause contains a table's primary key field only and they are combined with AND logical operator.
OtherSpecifies additional hidden properties for specific use cases. These are not required for typical provider functionality. Use a semicolon-separated list to define multiple properties.
PagesizeSpecifies the maximum number of results to return from Snowflake, per page. This setting overrides the default page size set by the datasource, which is optimized for most use cases.
PoolIdleTimeoutSpecifies the maximum idle time, in seconds, that a connection can remain in the pool before being closed.
PoolMaxSizeSpecifies the maximum number of connections allowed in the connection pool. The default value is 100. Set to 0 or a negative value to disable pooling.
PoolMinSizeSpecifies the minimum number of connections maintained in the connection pool. The default value is 1.
PoolWaitTimeSpecifies the maximum number of seconds a connection request waits for an available connection in the pool. If the wait exceeds this time, an error is returned. The default is 60 seconds.
QueryPassthroughThis option passes the query to the Snowflake server as is.
ReadonlyToggles read-only access to Snowflake from the provider.
ReplaceInvalidUTF8CharsSpecifies whether to repalce invalid UTF8 characters with a '?'.
RetryOnS3TimeoutWhether or not to retry when network issues occur at during chunk downloading.
RTKSpecifies the runtime key for licensing the provider. If unset or invalid, the provider defaults to the standard licensing method. Use this property only in environments where the standard licensing method is unsupported or requires a runtime key.
S3DomainThe URI of the S3 bucket you are using as your Snowflake S3 stage.
SessionIdleTimeoutThe timeout minutes for Session, the values comes from Snowflake's session policy, which indicate the session policy parameter SESSION_IDLE_TIMEOUT_MINS. The default value is 240 minutes.
SessionParametersThe session parameters for Snowflake. For example: SessionParameters='QUERY_TAG=MyTag;QUOTED_IDENTIFIERS_IGNORE_CASE=True;';.
TimeoutSpecifies the maximum time, in seconds, that the provider waits for a server response before throwing a timeout error. The default is 60 seconds. Set to 0 to disable the timeout.
UseConnectionPoolingEnables the connection pooling feature, which allows the provider to reuse existing connections instead of creating new ones for each request.

Copyright (c) 2025 CData Software, Inc. - All rights reserved.
Build 24.0.9175