Amazon Redshift Connector for CData Sync

Build 23.0.8839
  • Amazon Redshift
    • Establishing a Connection
    • Advanced Features
      • SSL Configuration
      • Firewall and Proxy
    • Data Type Mapping
    • Connection String Options
      • Authentication
        • AuthScheme
        • Server
        • Port
        • Database
        • User
        • Password
        • UseSSL
        • Visibility
      • AWS Authentication
        • AWSAccessKey
        • AWSSecretKey
        • AutoCreate
        • DbGroups
        • AWSRoleARN
        • AWSPrincipalARN
        • AWSRegion
        • AWSSessionToken
      • Azure Authentication
        • AzureTenant
      • SSO
        • SSOLoginURL
        • SSOProperties
        • SSOExchangeUrl
      • OAuth
        • OAuthClientId
        • OAuthClientSecret
        • Scope
      • SSL
        • SSLClientCert
        • SSLClientCertType
        • SSLClientCertPassword
        • SSLClientCertSubject
        • SSLServerCert
      • SSH
        • SSHAuthMode
        • SSHClientCert
        • SSHClientCertPassword
        • SSHClientCertSubject
        • SSHClientCertType
        • SSHServer
        • SSHPort
        • SSHUser
        • SSHPassword
        • SSHServerFingerprint
        • UseSSH
      • Firewall
        • FirewallType
        • FirewallServer
        • FirewallPort
        • FirewallUser
        • FirewallPassword
      • Proxy
        • ProxyAutoDetect
        • ProxyServer
        • ProxyPort
        • ProxyAuthScheme
        • ProxyUser
        • ProxyPassword
        • ProxySSLType
        • ProxyExceptions
      • Logging
        • LogModules
      • Schema
        • Location
        • BrowsableSchemas
        • Tables
        • Views
        • IgnoredSchemas
      • Miscellaneous
        • AllowPreparedStatement
        • COPYConversionParameters
        • FetchResultSetMetadata
        • IncludeTableTypes
        • InsertMode
        • MaxRows
        • Other
        • QueryPassthrough
        • RedshiftToS3RoleARN
        • S3Bucket
        • S3BucketFolder
        • StripOutNulls
        • Timeout
        • TimeZone
        • UseUIDForStaging

Amazon Redshift Connector for CData Sync

Overview

The CData Sync App provides a straightforward way to continuously pipeline your Amazon Redshift data to any database, data lake, or data warehouse, making it easily available for Analytics, Reporting, AI, and Machine Learning.

The Amazon Redshift connector can be used from the CData Sync application to pull data from Amazon Redshift and move it to any of the supported destinations.

Amazon Redshift Version Support

The Sync App enables standards-based access to Amazon Redshift based on PostgreSQL 8.0.2 with Amazon Redshift SQL.

Amazon Redshift Connector for CData Sync

Establishing a Connection

Adding a Connection to Amazon Redshift

To add a connection to Amazon Redshift:

  1. In the application console, navigate to the Connections page.
  2. At the Add Connections panel, select the icon for the connection you want to add.
  3. If the Amazon Redshift icon is not available, click the Add More icon to download and install the Amazon Redshift connector from the CData site.

For required properties, see the Settings tab.

For connection properties that are not typically required, see the Advanced tab.

Connecting to Amazon Redshift

The following connection properties are usually required to connect to Amazon Redshift.

  • Server: The host name or IP of the server hosting the Amazon Redshift database.
  • Database: The database that you created for your Amazon Redshift cluster.
  • Port (optional): The port of the server hosting the Amazon Redshift database. 5439 by default.

Follow these steps to obtain these values in the AWS Management Console:

  1. Open the Amazon Redshift console (http://console.aws.amazon.com/redshift).
  2. On the Clusters page, click the name of the cluster.
  3. On the Configuration tab, obtain the properties from the "Cluster Database Properties" section. The connection property values are the same as the values set in the ODBC URL.

The Sync App provides secure communication with Amazon Redshift server using SSL encryption. You can optionally turn off SSL encryption by setting UseSSL to false.

You can also leverage SSL authentication to connect to Amazon Redshift data. To do so, specify the following connection properties:

  • SSLClientCert: Set this to the name of the certificate store for the client certificate. This is used in the case of 2-way SSL, where truststore and keystore are kept on both the client and server machines.
  • SSLClientCertPassword: If a client certificate store is password-protected, set this value to the store's password.
  • SSLClientCertSubject: The subject of the TLS/SSL client certificate. This is used to locate the certificate in the store.
  • SSLClientCertType: The certificate type of the client store.
  • SSLServerCert: The certificate to be accepted from the server.

The following is the example connection string to connect Amazon Redshift using a standard user and password pair and inactive SSL encryption:

User=username;Password=password;Server=example.us-west-2.redshift.amazonaws.com;Database=your_database;UseSSL=false;"

Authenticating to Amazon Redshift

Azure Active Directory

Prerequisites

  • Only non-B2C Azure tenants can complete the Azure AD authentication scheme.
  • You must have an active Azure AD account. If you do not have an active account, create one before beginning this process.

Authentication

To authenticate to Azure AD, you must complete these tasks:

  1. Create and Register an OAuth Application
  2. Create and Configure a Redshift Client Application
  3. Define a New Identity Provider
  4. Specify Connection Properties

The following sections describe these tasks in detail.

Create and Register an OAuth Application

Follow these steps to create an OAuth app for logging into your Amazon Redshift database via Azure:

  1. On the Azure Active Directory Overview page, in the left navigation bar, select App registrations.
  2. Click New registrations at the top of the App registrations page.
  3. On the Register an app page, fill in your details and click Register at the bottom of the page. Save your CallbackURL property value.
  4. After the creation of the application, you are brought to its Overview page. From there, in the left navigation bar:

    1. Click Certificates & secrets.
    2. Click New client secret.
    3. In the Add a client secret window, supply your details and click Add at the bottom of the window.
    4. Save your OAuthClientSecret (the Value field of the OAuth secret that is displayed).

  5. From the newly registered application, click Expose an API in the left navigation bar.
  6. Next to the App ID URI, click Set.
  7. The Set the App ID URI dialog appears with the information filled in from registering. Click Save.
  8. Click Add a scope.
  9. Fill in your details and click Add scope at the bottom of the form.

Create and Configure a Redshift Client Application

Follow these steps to create another application, which serves as the client application for your Amazon Redshift database:

  1. Navigate to the Azure Active Directory management page and click App registrations.
  2. Click New registrations at the top of the page.
  3. On the Register an application page, fill in your details and click Register at the bottom of the page.
  4. Following the creation of the app, you are sent to its Overview page. From there, in the left navigation bar:

    1. Click Certificates & secrets.
    2. Click New client secret.
    3. In the Add a client secret window, supply your details and click Add at the bottom of the window.
    4. Save your OAuthClientSecret (the Value field of the OAuth secret that is displayed).

  5. In the left navigation bar of the client app's management page:

    1. Click API permissions.
    2. Click Add a permission.
    3. Choose Microsoft Graph API.
    4. Click Application permissions.
    5. Select Directory > "Directory.Read.All".
    6. Click Add at the bottom.
    7. Click Grant admin consent.
    8. Click Yes.

  6. In the Azure Active Directory left navigation bar:

    1. Click Groups.
    2. On the Groups page, click New group and fill in the details.
    3. Click No owners selected.
    4. The Add owners window appears. Select the user.
    5. Click Create.

Define a New Identity Provider

Follow these steps to define a new Identify Provider:

  1. In the Azure Active Directory Overviewpage:

    1. Select App registrations from the left navigation pane.
    2. Select the All applications tab and choose your first OAuth application.

  2. In the left navigation bar on the OAuth page, click Manifest. Search in the editor for the accessTokenAcceptedVersion. If the value is null, it is a v1.0 token. If the value is set to 2, this is a v2.0 token.
  3. From the Amazon Redshift instance's query box, submit the identity provider query, following the example below:
        CREATE IDENTITY PROVIDER oauth_standard TYPE azure
        NAMESPACE 'mynamespace'
        PARAMETERS '{
        "issuer":"https://sts.windows.net/your_tenant_here/",
        "client_id":"YourClientId",
        "client_secret":"YourClientSecret",
        "audience":["your_application_id_uri_here"]
        }' 

    Terminology Guide:

    • Your issuer ID: The issuer ID to trust when a token is received. The unique identifier for the tenant_id is appended to the issuer. If using a v1.0 token, use https://sts.windows.net/<your_tenant_id_here>/. If using a v2.0 token, use https://login.microsoftonline.com/<your_tenant_id_here>/v2.0.
    • Your client_id: The unique, public identifier of the application registered with the identity provider. This is referred to as the application ID. It is the clien ID generated for the second application (the Amazon Redshift client application).
    • Your client_secret: A secret identifier, or password, known only to the identity provider and the registered application. This is the secret generated for the second application (the Amazon Redshift application).
    • audience: The Application ID (URI) assigned to the first application (the OAuth application).

    You can use any name you like for the NAMESPACE.

  4. In Amazon Redshift, place the CREATE IDENTITY PROVIDER query (like above example) into the query text box.
  5. Click Run at the bottom of the query box.
  6. In the query text box, create a role on the Redshift database in this format:
    create role "mynamespace:myazuregroup";
    Replace with your identity provider's namespace provided in the CREATE IDENTITY PROVIDER query and the name of Azure group that you created earlier. Click Run at the bottom of the query box.
  7. In the query text box, grant table access to this new role as follows:
    grant select on all tables in schema public to role "mynamespace:myazuregroup";
  8. Replace the above example with your namespace and Azure group name.
  9. Click Run at the bottom of the query box.

Set Connection Properties

Specify the following connection properties:

  • AuthScheme: Set this to AzureAD.
  • Server: Set this to the name of your Amazon Redshift server endpoint.
  • Database: Set this to the name of your Amazon Redshift database that you would like to connect to.
  • User: Set this to the name of the authenticating Amazon Redshift user.
  • AzureTenant: Set this to the ID of the Azure Tenant that your OAuth and client apps were created under. Find this in the Overview page of one of the apps under Directory (tenant) ID.
  • SSOLoginURL: Set this to the value of the Application ID URI, visible on the Overview page of your OAuth app.
  • Scope: For v1.0 OAuth tokens, set this to the Scopes field in the Expose an API page of your OAuth app. For v2.0 OAuth tokens, this will be the same as the OAuth app's Client ID.
  • OAuthClientID: Set this to the first OAuth application client ID in the Overview page of the Amazon Redshift client application that you created.
  • OAuthClientSecret: For your first OAuth application, set this to the Value of the OAuth client secret from the client application's Certificates & secrets page.
  • CallbackURL: Set this to the callback URL of the OAuth app.

Troubleshooting Note If you encounter an "Azure JWT token does not have 'upn' field" error, follow these steps:

  1. On the Azure Active Directory management page, navigate to App Registrations and select your OAuth application.
  2. Click Token configuration in the left navigation bar.
  3. Click Add optional claim.
  4. In the Add optional claim screen, under Token type, click Access.
  5. Under the Claim column, select upn.
  6. Click Add at the bottom.
  7. Select Turn on the Microsoft Graph profile permission (required for claims to appear in the token).
  8. Click Add.
  9. Repeat this process for the client app.
  10. Attempt the connection again.

Azure Active Directory PKCE

To authenticate via Azure AD PKCE, you must complete the following tasks:

  1. Create and Register an OAuth Application
  2. Create and Configure a Redshift Client Application
  3. Define a New Identity Provider
  4. Specify Connection Properties

The following sections describe these tasks in detail.

Create and Register an OAuth Application

Follow these steps to create an OAuth application for logging into your Amazon Redshift database via Azure:

  1. On the Azure Active Directory Overview page, in the left navigation bar, Click App registrations.
  2. Click New registrations at the top of the App registrations page.
  3. On the Register an application page, fill in your details:

    1. For Name, enter a name (for example, "oauth_application").
    2. For Redirect URI, choose Public client/native (mobile and desktop) and enter a valid URL (for example, http://localhost:33333/).

  4. Click Register at the bottom of the page. Save the CallbackURL property value.
  5. From the newly registered application, click Expose an API in the left navigation bar.
  6. Next to the Application ID URI, click Set.
  7. The Set the App ID URI dialog appears with the information filled in your registration. Click Save.
  8. Click Add a scope.
  9. Fill in your details and click Add scope at the bottom of the form.
  10. Save the generated Application ID URI and the API scope; for example, api://6256f0b1-2284-43e4-8501-6e53dec4444f and api://6256f0b1-2284-43e4-8501-6e53dec4444f/jdbc_login.

Create and Configure a Redshift Client Application

Follow these steps to create another application, which serves as the client application for your Amazon Redshift database:

  1. On the Azure Active Directory Overview page, select App registrations from the left navigation bar.
  2. At the top of the App registrations page, click New registrations.
  3. On the Register an application page, fill in your details and click Register at the bottom of the page.
  4. After the creation of the application, you are brought to its Overview page. From there, in the left navigation bar:

    1. Click Certificates & secrets.
    2. Click New client secret.
    3. In the Add a client secret window, add your details and click Add at the bottom of the window.
    4. Save your OAuthClientSecret (the Value field of the OAuth secret that is displayed).

  5. In the left navigation bar of the client app's management page:

    1. Click API permissions.
    2. Click Add a permission.
    3. Choose Microsoft Graph API.
    4. Click Application permissions.
    5. Select Directory > "Directory.Read.All".
    6. Click Add at the bottom.
    7. Click Grant admin consent
    8. Click Yes.

  6. In the Azure Active Directory left navigation bar:

    1. Click Groups.
    2. On the Groups page, click New group and fill in the details.
    3. Click No owners selected.
    4. The Add owners window appears. Select the user.
    5. Click Create.

Define a New Identity Provider

Follow these steps to define a new Identity Provider:

  1. In the Azure Active Directory left navigation bar, click App registrations.
  2. Select the All applications tab and choose your first OAuth application.
  3. On the OAuth screen, in the left navigation bar, click Manifest. Look in the editor for the accessTokenAcceptedVersion. If the value is null or 1, it is a v1.0 token. If the value is 2, this is a v2.0 token.
  4. From the Amazon Redshift instance's query box, submit the identity provider query, following the example below:
        CREATE IDENTITY PROVIDER oauth_standard TYPE azure
        NAMESPACE 'mynamespace'
        PARAMETERS '{
        "issuer":"https://sts.windows.net/your_tenant_here/",
        "client_id":"YourRedshiftApplicationClientId",
        "client_secret":"YourRedshiftApplicationClientSecret"
        ,"audience":["your_oauth_application_id_uri_here"]
        }'
    For a v2.0 token issuer the value should be:
        "issuer":"https://login.microsoftonline.com/your_tenant_here/v2.0",
  5. Terminology Guide:

    1. Your issuer ID: The issuer ID to trust when a token is received. The unique identifier for the tenant_id is appended to the issuer. If you are using a v1.0 token, specify https://sts.windows.net<your_tenant_id_here>. If you are using a v2.0 token, specify https://login.microsoftonline.com<your_tenant_id_here>/v2.0..
    2. Your client_id: The unique, public identifier of the application registered with the identity provider. This is referred to as the application ID. It is the client ID generated for the second application (the Amazon Redshift application).
    3. Your client_secret: A secret identifier, or password, known only to the identity provider and the registered application. This is the secret generated for the second application (the Amazon Redshift application).
    4. audience: The Application ID (URI) assigned to the first application (the OAuth application).
    5. You can use any name you like for the namespace.

  6. In Amazon Redshift, place the CREATE IDENTITY PROVIDER query (like the above example) into the query text box.
  7. Click Run at the bottom of the query box.
  8. In the query text box, create a role on the Redshift database in this format:
    create role "mynamespace:myazuregroup";
  9. Replace with your identity provider's namespace provided in the CREATE IDENTITY PROVIDER query and the name of the Azure group you created earlier.
  10. Click Run at the bottom of the query box.
  11. In the query text box, grant table access to this new role as follows:
    grant select on all tables in schema public to role "mynamespace:myazuregroup";
  12. Replace the above example with your namespace and Azure group name.
  13. Click Run at the bottom of the query box.

Set Connection Properties

After finishing the above configuration, specify the following properties in the driver to connect to amazon Redshift:

  • AuthScheme: Set this to AzureADPKCE.
  • Server: Set this to the name of your Amazon Redshift server endpoint.
  • Database: Set this to the name of your Amazon Redshift database that you want to connect to.
  • Scope: For v1.0 OAuth tokens, set this to the Scopes field in the Expose an API page of your OAuth application (for example,api://d3cb3521-6c20-4e41-b16d-e48c8444ee11/jdbc_login). For v2.0 OAuth tokens, this is the same as the OAuth app's Client ID (for example, d3cb3521-6c20-4e41-b16d-e48c8444ee11).
  • OAuthClientID: Set this to the Application (client) ID in the Overview page of the OAuth application you created.6.
  • CallbackURL: Set this to the callback URL of the OAuth app.

Troubleshooting Note

If you encounter an "Azure JWT token does not have 'upn' field" error, follow these steps:

  1. On the Azure Active Directory management page, navigate to App Registrations and select your OAuth application.
  2. Select Token configuration > Add Optional claim in the left navigation bar.
  3. In the Add optional claim screen, under "Token type", click Access.
  4. Under the Claim column, select upn.
  5. Click Add at the bottom.
  6. Select Turn on the Microsoft Graph profile permission, which is required for claims to appear in the token.
  7. Click Add.
  8. Repeat this process for the client app.
  9. Attempt the connection again.

Standard Authentication

Set the AuthScheme to Basic to connect to Amazon Redshift with login credentials. In addition, set the following connection properties:

  • User: The user which will be used to authenticate with the Amazon Redshift server.
  • Password: The password which will be used to authenticate with the Amazon Redshift server.
The following is an example connection string:
AuthScheme=Basic;User=user;Password=password;Server=example.us-west-2.redshift.amazonaws.com;Database=your_database;

IAM credentials

Set the AuthScheme to IAMCredentials. The following is an example connection string:

AuthScheme=IAMCredentials;Server=example.us-west-2.redshift.amazonaws.com;Database=your_database;User=your_user;AWSAccessKey=your_access_key;AWSSecretKey=your_secretkey;

If you are connecting IAM role with temporary credentials you are also required to apply AWSSessionToken.

You can optionally apply:

  • AutoCreate: Create a database user with the name specified for User if one does not exist while connecting.
  • DbGroups: Database groups the database user joins for the current session.

ADFS

To connect to ADFS, set the AuthScheme to ADFS, and set these properties:

  • User: The ADFS user.
  • Password: The ADFS user's password.
  • SSOLoginURL: The SSO provider's login url.

Example connection string:

AuthScheme=ADFS;User=username;Password=password;SSOLoginURL='https://sts.company.com';

ADFS Integrated

The ADFS Integrated flow indicates you are connecting with the currently logged in Windows user credentials. To use the ADFS Integrated flow, do not specify the User and Password, but otherwise follow the same steps in the ADFS guide above.

To connect to PingFederate, set AuthScheme to PingFederate, and set these properties:

  • User: The PingFederate user.
  • Password: The PingFederate user's password.
  • SSOLoginURL: The SSO provider's login url.
  • AWSRoleARN (optional): If you have multiple role ARNs, specify the one you want to use for authorization.
  • AWSPrincipalARN (optional): If you have multiple principal ARNs, specify the one you want to use for authorization.
  • SSOProperties (optional): Authscheme=Basic if you want to include your username and password as an authorization header in requests to Amazon S3.

To enable mutual SSL authentication for SSOLoginURL, the WS-Trust STS endpoint, configure these SSOProperties:

  • SSLClientCert
  • SSLClientCertType
  • SSLClientCertSubject
  • SSLClientCertPassword

Example connection string:

Server=redshift-cluster-1.xxxxxxxxxxxx.us-east-1.redshift.amazonaws.com;Database=dev;Port=5439;UseSSL=true;SSLServerCert=*;AuthScheme=PingFederate;AutoCreate=TRUE;SSOLoginURL=https://mycustomserver.com:9033/idp/sts.wst;SSOExchangeUrl=https://us-east-1.signin.aws.amazon.com/platform/saml/acs/764ef411-xxxxxx;User=admin;Password=PassValue;AWSRegion=NORTHERNVIRGINIA;

Amazon Redshift Connector for CData Sync

Advanced Features

This section details a selection of advanced features of the Amazon Redshift Sync App.

SSL Configuration

Use SSL Configuration to adjust how Sync App handles TLS/SSL certificate negotiations. You can choose from various certificate formats; see the SSLServerCert property under "Connection String Options" for more information.

Firewall and Proxy

Configure the Sync App for compliance with Firewall and Proxy, including Windows proxies. You can also set up tunnel connections.

Logging

See Logging for an overview of configuration settings that can be used to refine CData logging. For basic logging, you only need to set two connection properties, but there are numerous features that support more refined logging, where you can select subsets of information to be logged using the LogModules connection property.

Amazon Redshift Connector for CData Sync

SSL Configuration

Customizing the SSL Configuration

By default, the Sync App attempts to negotiate SSL/TLS by checking the server's certificate against the system's trusted certificate store.

To specify another certificate, see the SSLServerCert property for the available formats to do so.

Client SSL Certificates

The Amazon Redshift Sync App also supports setting client certificates. Set the following to connect using a client certificate.

  • SSLClientCert: The name of the certificate store for the client certificate.
  • SSLClientCertType: The type of key store containing the TLS/SSL client certificate.
  • SSLClientCertPassword: The password for the TLS/SSL client certificate.
  • SSLClientCertSubject: The subject of the TLS/SSL client certificate.

Amazon Redshift Connector for CData Sync

Firewall and Proxy

Connecting Through a Firewall or Proxy

Set the following properties:

  • To use a proxy-based firewall, set FirewallType, FirewallServer, and FirewallPort.
  • To tunnel the connection, set FirewallType to TUNNEL.
  • To authenticate, specify FirewallUser and FirewallPassword.
  • To authenticate to a SOCKS proxy, additionally set FirewallType to SOCKS5.

Amazon Redshift Connector for CData Sync

Data Type Mapping

Data Type Mappings

The Sync App maps types from the data source to the corresponding data type available in the schema. The table below documents these mappings.

Amazon Redshift CData Schema
abstime string
aclitem string
bigint long
bigserial long
bit varying string
bit string
boolean bool
box string
bytea binary
char string
character varying string
character string
cid string
cidr string
circle string
date date
daterange string
double precision float
gtsvector string
inet string
int2vector string
int4range string
int8range string
integer int
json string
jsonb binary
line string
lseg string
macaddr8 string
macaddr string
money decimal
name string
numeric decimal
numrange string
oid string
oidvector string
path string
pg_dependencies string
pg_lsn string
pg_ndistinct string
pg_node_tree string
point string
polygon string
real float
refcursor string
regclass string
regconfig string
regdictionary string
regnamespace string
regoper string
regoperator string
regproc string
regprocedure string
regrole string
regtype string
reltime string
serial int
smallint int
smallserial int
smgr string
text string
tid string
time with time zone string
time without time zone time
timestamp with time zone datetime
timestamp without time zone datetime
tinterval string
tsquery string
tsrange string
tstzrange string
tsvector string
txid_snapshot string
uuid string
xid string
xml string

Amazon Redshift Connector for CData Sync

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 establishing a connection, see Establishing a Connection.

Authentication


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Amazon Redshift.
ServerThe host name or IP address of the Amazon Redshift cluster.
PortThe port number of the Amazon Redshift server.
DatabaseThe name of the Amazon Redshift database.
UserThe Amazon Redshift user account used to authenticate.
PasswordThe password used to authenticate the user.
UseSSLThis field sets whether SSL is enabled.
VisibilityVisibility restrictions used to filter exposed metadata for tables with privileges granted to them for current user. For example 'SELECT,INSERT' filter is restricting metatdata visibility only for those tables which may be accessed by current user for SELECT and INSERT operations. Supported privilege values are SELECT, INSERT, UPDATE, DELETE, REFERENCES.

AWS Authentication


PropertyDescription
AWSAccessKeyYour AWS account access key or the access key for an authorized IAM user.
AWSSecretKeyYour AWS account secret key or the secret key for an authorized IAM user.
AutoCreateSpecify true to create a database user with the name specified for User if one does not exist while connecting with IAM credentials. See AuthScheme .
DbGroupsA comma-delimited list of the names of one or more existing database groups the database user joins for the current session when connecting with IAM credentials. See AuthScheme .
AWSRoleARNThe Amazon Resource Name of the role to use when authenticating.
AWSPrincipalARNThe ARN of the SAML Identity provider in your AWS account.
AWSRegionThe hosting region for your Amazon Web Services.
AWSSessionTokenYour AWS session token.

Azure Authentication


PropertyDescription
AzureTenantThe Microsoft Online tenant being used to access data. If not specified, your default tenant is used.

SSO


PropertyDescription
SSOLoginURLThe identity provider's login URL.
SSOPropertiesAdditional properties required to connect to the identity provider in a semicolon-separated list.
SSOExchangeUrlThe URL used for consuming the SAML response and exchanging it for service specific credentials.

OAuth


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.
ScopeSpecify scope to obtain the initial access and refresh token.

SSL


PropertyDescription
SSLClientCertThe TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
SSLClientCertTypeThe type of key store containing the TLS/SSL client certificate.
SSLClientCertPasswordThe password for the TLS/SSL client certificate.
SSLClientCertSubjectThe subject of the TLS/SSL client certificate.
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.

SSH


PropertyDescription
SSHAuthModeThe authentication method used when establishing an SSH Tunnel to the service.
SSHClientCertA certificate to be used for authenticating the SSHUser.
SSHClientCertPasswordThe password of the SSHClientCert key if it has one.
SSHClientCertSubjectThe subject of the SSH client certificate.
SSHClientCertTypeThe type of SSHClientCert private key.
SSHServerThe SSH server.
SSHPortThe SSH port.
SSHUserThe SSH user.
SSHPasswordThe SSH password.
SSHServerFingerprintThe SSH server fingerprint.
UseSSHWhether to tunnel the Amazon Redshift connection over SSH. Use SSH.

Firewall


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Logging


PropertyDescription
LogModulesCore modules to be included in the log file.

Schema


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
IgnoredSchemasVisibility restriction filter which is used to hide the list of schemas by metadata quering. For example, 'information_schema, pg_catalog'. Schema names are case sensitive.

Miscellaneous


PropertyDescription
AllowPreparedStatementPrepare a query statement before its execution.
COPYConversionParametersSpecifies the coma separated list of parameter to use in the COPY command when InsertMode is S3Staging or S3StagingWithIAM. Supported parameters are: BLANKSASNULL DELIMITER EMPTYASNULL EXPLICIT_IDS NULL AS TRIMBLANKS TRUNCATECOLUMNS.
FetchResultSetMetadataThis field sets whether the provider retrieves metadata pertaining to the schema and table name for resultset columns returned by the server.
IncludeTableTypesIf set to true, the provider will query for the types of individual tables and views.
InsertModeSpecifies what method to use when inserting bulk data. By default DML mode is used.
MaxRowsLimits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
OtherThese hidden properties are used only in specific use cases.
QueryPassthroughThis option passes the query to the Amazon Redshift server as is.
RedshiftToS3RoleARNThe Amazon Resource Name of the role to use when authenticating S3 with IAM role by the COPY command for the bulk inserts.
S3BucketSpecifies the name of AWS S3 bucket to upload bulk data for staging.
S3BucketFolderSpecifies the name of the folder in AWS S3 bucket to upload bulk data for staging. By default bulk data are staged in the root folder.
StripOutNullsWhen set the null characters are stripped out from character values in bulk operations.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
TimeZoneSet time zone for the current session.
UseUIDForStagingUse this property in combination with InsertMode assigned with S3Staging or S3StagingWithIAM. By default the the driver creates staging files with names that prepend the targeted table's name, so the files are overwritten between sessions. When the property is set to True , the provider additionally attaches temporary unique identifiers to these names. It may be required if you use parallel jobs to insert rows into the same table. Thus, the staging files are not overwritten by the jobs. A caveat is that using this property adds to the number of staging files put onto S3 bucket, since the file names are not controlled by the driver between different sessions. In this case you may want to define an AWS S3 policy on the bucket to remove staging files that were stored in a bucket automatically.
Amazon Redshift Connector for CData Sync

Authentication

This section provides a complete list of the Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AuthSchemeThe type of authentication to use when connecting to Amazon Redshift.
ServerThe host name or IP address of the Amazon Redshift cluster.
PortThe port number of the Amazon Redshift server.
DatabaseThe name of the Amazon Redshift database.
UserThe Amazon Redshift user account used to authenticate.
PasswordThe password used to authenticate the user.
UseSSLThis field sets whether SSL is enabled.
VisibilityVisibility restrictions used to filter exposed metadata for tables with privileges granted to them for current user. For example 'SELECT,INSERT' filter is restricting metatdata visibility only for those tables which may be accessed by current user for SELECT and INSERT operations. Supported privilege values are SELECT, INSERT, UPDATE, DELETE, REFERENCES.
Amazon Redshift Connector for CData Sync

AuthScheme

The type of authentication to use when connecting to Amazon Redshift.

Remarks

  • Auto: Lets the driver decide automatically based on the other connection properties you have set.
  • Basic: Set this to use BASIC user / password authentication.
  • ADFS: Set this to perform Active Directory Federated Services authentication.
  • PingFederate: Set this to use the PingFederate SSO identity provider in order to perform authentication.
  • IAMCredentials: Set this to perform authentication with Redshift's GetClusterCredentials API.
  • AzureAD: Set this to use Azure Active Directory OAuth authentication.
  • AzureADPKCE: Set this to use native IdP federation with Microsoft Azure AD.

Amazon Redshift Connector for CData Sync

Server

The host name or IP address of the Amazon Redshift cluster.

Remarks

The host name or IP of the Amazon Redshift cluster Database. You can obtain this value from the AWS Management Console:

  1. Open the Amazon Redshift console (http://console.aws.amazon.com/redshift).
  2. On the Clusters page, click the name of the cluster.
  3. On the Configuration tab for the cluster, copy the cluster URL from the connection strings displayed.

Amazon Redshift Connector for CData Sync

Port

The port number of the Amazon Redshift server.

Remarks

The port number of the Server hosting the Amazon Redshift Database. If not specified the default port number 5439 is used.

Amazon Redshift Connector for CData Sync

Database

The name of the Amazon Redshift database.

Remarks

The database to connect to when connecting to the Amazon Redshift Server. If the database is not provided, the user's default database will be used.

Amazon Redshift Connector for CData Sync

User

The Amazon Redshift user account used to authenticate.

Remarks

Together with Password, this field is used to authenticate against the Amazon Redshift server.

Amazon Redshift Connector for CData Sync

Password

The password used to authenticate the user.

Remarks

The User and Password are together used to authenticate with the server.

Amazon Redshift Connector for CData Sync

UseSSL

This field sets whether SSL is enabled.

Remarks

This field sets whether the Sync App will attempt to negotiate TLS/SSL connections to the server. By default, the Sync App checks the server's certificate against the system's trusted certificate store. To specify another certificate, set SSLServerCert.

Amazon Redshift Connector for CData Sync

Visibility

Visibility restrictions used to filter exposed metadata for tables with privileges granted to them for current user. For example 'SELECT,INSERT' filter is restricting metatdata visibility only for those tables which may be accessed by current user for SELECT and INSERT operations. Supported privilege values are SELECT, INSERT, UPDATE, DELETE, REFERENCES.

Remarks

By default visibility filtering is not applied. Filtering values are case insensitive.

Amazon Redshift Connector for CData Sync

AWS Authentication

This section provides a complete list of the AWS Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AWSAccessKeyYour AWS account access key or the access key for an authorized IAM user.
AWSSecretKeyYour AWS account secret key or the secret key for an authorized IAM user.
AutoCreateSpecify true to create a database user with the name specified for User if one does not exist while connecting with IAM credentials. See AuthScheme .
DbGroupsA comma-delimited list of the names of one or more existing database groups the database user joins for the current session when connecting with IAM credentials. See AuthScheme .
AWSRoleARNThe Amazon Resource Name of the role to use when authenticating.
AWSPrincipalARNThe ARN of the SAML Identity provider in your AWS account.
AWSRegionThe hosting region for your Amazon Web Services.
AWSSessionTokenYour AWS session token.
Amazon Redshift Connector for CData Sync

AWSAccessKey

Your AWS account access key or the access key for an authorized IAM user.

Remarks

To authorize Amazon Redshift requests, provide the credentials for an administrator account or for an IAM user with custom permissions. Set this property along with AWSSecretKey.

Note: Though you can connect as the AWS account administrator, it is recommended to use IAM user credentials to access AWS services.

Obtaining the Access Key

To obtain the credentials for an IAM user, follow the steps below:

  1. Sign into the IAM console.
  2. In the navigation pane, select Users.
  3. To create or manage the access keys for a user, select the user and then select the Security Credentials tab.

To obtain the credentials for your AWS root account, follow the steps below:

  1. Sign into the AWS Management console with the credentials for your root account.
  2. Select your account name or number and select My Security Credentials in the menu that is displayed.
  3. Click Continue to Security Credentials and expand the Access Keys section to manage or create root account access keys.

Amazon Redshift Connector for CData Sync

AWSSecretKey

Your AWS account secret key or the secret key for an authorized IAM user.

Remarks

Your AWS account secret key or the secret key for an authorized IAM user. See AWSAccessKey to obtain the secret key and access key.

Amazon Redshift Connector for CData Sync

AutoCreate

Specify true to create a database user with the name specified for User if one does not exist while connecting with IAM credentials. See AuthScheme .

Remarks

The default is false.

Amazon Redshift Connector for CData Sync

DbGroups

A comma-delimited list of the names of one or more existing database groups the database user joins for the current session when connecting with IAM credentials. See AuthScheme .

Remarks

The group names must match the dbgroup resources ARNs specified in the IAM policy attached to the IAM user or role.

By default, the new user is added only to PUBLIC.

Amazon Redshift Connector for CData Sync

AWSRoleARN

The Amazon Resource Name of the role to use when authenticating.

Remarks

When authenticating outside of AWS, it is common to use a Role for authentication instead of your direct AWS account credentials. Entering the AWSRoleARN will cause the CData Sync App to perform a role based authentication instead of using the AWSAccessKey and AWSSecretKey directly. The AWSAccessKey and AWSSecretKey must still be specified to perform this authentication. You cannot use the credentials of an AWS root user when setting RoleARN. The AWSAccessKey and AWSSecretKey must be those of an IAM user.

Amazon Redshift Connector for CData Sync

AWSPrincipalARN

The ARN of the SAML Identity provider in your AWS account.

Remarks

The ARN of the SAML Identity provider in your AWS account.

Amazon Redshift Connector for CData Sync

AWSRegion

The hosting region for your Amazon Web Services.

Remarks

The hosting region for your Amazon Web Services. Available values are OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, JAKARTA, MUMBAI, OSAKA, SEOUL, SINGAPORE, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRELAND, LONDON, MILAN, PARIS, STOCKHOLM, ZURICH, BAHRAIN, UAE, SAOPAULO, GOVCLOUDEAST, and GOVCLOUDWEST.

Amazon Redshift Connector for CData Sync

AWSSessionToken

Your AWS session token.

Remarks

Your AWS session token. This value can be retrieved in different ways. See this link for more info.

Amazon Redshift Connector for CData Sync

Azure Authentication

This section provides a complete list of the Azure Authentication properties you can configure in the connection string for this provider.


PropertyDescription
AzureTenantThe Microsoft Online tenant being used to access data. If not specified, your default tenant is used.
Amazon Redshift Connector for CData Sync

AzureTenant

The Microsoft Online tenant being used to access data. If not specified, your default tenant is used.

Remarks

The Microsoft Online tenant being used to access data. For instance, contoso.onmicrosoft.com. Alternatively, specify the tenant Id. This value is the directory Id in the Azure Portal > Azure Active Directory > Properties.

Typically it is not necessary to specify the Tenant. This can be automatically determined by Microsoft when using the OAuthGrantType set to CODE (default). However, it may fail in the case that the user belongs to multiple tenants. For instance, if an Admin of domain A invites a user of domain B to be a guest user. The user will now belong to both tenants. It is a good practice to specify the Tenant, although in general things should normally work without having to specify it.

The AzureTenant is required when setting OAuthGrantType to CLIENT. When using client credentials, there is no user context. The credentials are taken from the context of the app itself. While Microsoft still allows client credentials to be obtained without specifying which Tenant, it has a much lower probability of picking the specific tenant you want to work with. For this reason, we require AzureTenant to be explicitly stated for all client credentials connections to ensure you get credentials that are applicable for the domain you intend to connect to.

Amazon Redshift Connector for CData Sync

SSO

This section provides a complete list of the SSO properties you can configure in the connection string for this provider.


PropertyDescription
SSOLoginURLThe identity provider's login URL.
SSOPropertiesAdditional properties required to connect to the identity provider in a semicolon-separated list.
SSOExchangeUrlThe URL used for consuming the SAML response and exchanging it for service specific credentials.
Amazon Redshift Connector for CData Sync

SSOLoginURL

The identity provider's login URL.

Remarks

The identity provider's login URL.

Amazon Redshift Connector for CData Sync

SSOProperties

Additional properties required to connect to the identity provider in a semicolon-separated list.

Remarks

Additional properties required to connect to the identity provider in a semicolon-separated list. is used in conjunction with the SSOLoginURL.

SSO configuration is discussed further in .

Amazon Redshift Connector for CData Sync

SSOExchangeUrl

The URL used for consuming the SAML response and exchanging it for service specific credentials.

Remarks

The CData Sync App will use the URL specified here to consume a SAML response and exchange it for service specific credentials. The retrieved credentials are the final piece during the SSO connection that are used to communicate with Amazon Redshift.

Amazon Redshift Connector for CData Sync

OAuth

This section provides a complete list of the OAuth properties you can configure in the connection string for this provider.


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.
ScopeSpecify scope to obtain the initial access and refresh token.
Amazon Redshift Connector for CData Sync

OAuthClientId

The client Id assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId value, sometimes also called a consumer key, and a client secret, the OAuthClientSecret.

Amazon Redshift Connector for CData Sync

OAuthClientSecret

The client secret assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId, also called a consumer key. You will also receive a client secret, also called a consumer secret. Set the client secret in the OAuthClientSecret property.

Amazon Redshift Connector for CData Sync

Scope

Specify scope to obtain the initial access and refresh token.

Remarks

Specify scope to obtain the initial access and refresh token.

Amazon Redshift Connector for CData Sync

SSL

This section provides a complete list of the SSL properties you can configure in the connection string for this provider.


PropertyDescription
SSLClientCertThe TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
SSLClientCertTypeThe type of key store containing the TLS/SSL client certificate.
SSLClientCertPasswordThe password for the TLS/SSL client certificate.
SSLClientCertSubjectThe subject of the TLS/SSL client certificate.
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.
Amazon Redshift Connector for CData Sync

SSLClientCert

The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).

Remarks

The name of the certificate store for the client certificate.

The SSLClientCertType field specifies the type of the certificate store specified by SSLClientCert. If the store is password protected, specify the password in SSLClientCertPassword.

SSLClientCert is used in conjunction with the SSLClientCertSubject field in order to specify client certificates. If SSLClientCert has a value, and SSLClientCertSubject is set, a search for a certificate is initiated. See SSLClientCertSubject for more information.

Designations of certificate stores are platform-dependent.

The following are designations of the most common User and Machine certificate stores in Windows:

MYA certificate store holding personal certificates with their associated private keys.
CACertifying authority certificates.
ROOTRoot certificates.
SPCSoftware publisher certificates.

In Java, the certificate store normally is a file containing certificates and optional private keys.

When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (for example, PKCS12 certificate store).

Amazon Redshift Connector for CData Sync

SSLClientCertType

The type of key store containing the TLS/SSL client certificate.

Remarks

This property can take one of the following values:

USER - defaultFor Windows, this specifies that the certificate store is a certificate store owned by the current user. Note that this store type is not available in Java.
MACHINEFor Windows, this specifies that the certificate store is a machine store. Note that this store type is not available in Java.
PFXFILEThe certificate store is the name of a PFX (PKCS12) file containing certificates.
PFXBLOBThe certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format.
JKSFILEThe certificate store is the name of a Java key store (JKS) file containing certificates. Note that this store type is only available in Java.
JKSBLOBThe certificate store is a string (base-64-encoded) representing a certificate store in JKS format. Note that this store type is only available in Java.
PEMKEY_FILEThe certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
PEMKEY_BLOBThe certificate store is a string (base64-encoded) that contains a private key and an optional certificate.
PUBLIC_KEY_FILEThe certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
PUBLIC_KEY_BLOBThe certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate.
SSHPUBLIC_KEY_FILEThe certificate store is the name of a file that contains an SSH-style public key.
SSHPUBLIC_KEY_BLOBThe certificate store is a string (base-64-encoded) that contains an SSH-style public key.
P7BFILEThe certificate store is the name of a PKCS7 file containing certificates.
PPKFILEThe certificate store is the name of a file that contains a PuTTY Private Key (PPK).
XMLFILEThe certificate store is the name of a file that contains a certificate in XML format.
XMLBLOBThe certificate store is a string that contains a certificate in XML format.

Amazon Redshift Connector for CData Sync

SSLClientCertPassword

The password for the TLS/SSL client certificate.

Remarks

If the certificate store is of a type that requires a password, this property is used to specify that password to open the certificate store.

Amazon Redshift Connector for CData Sync

SSLClientCertSubject

The subject of the TLS/SSL client certificate.

Remarks

When loading a certificate the subject is used to locate the certificate in the store.

If an exact match is not found, the store is searched for subjects containing the value of the property. If a match is still not found, the property is set to an empty string, and no certificate is selected.

The special value "*" picks the first certificate in the certificate store.

The certificate subject is a comma separated list of distinguished name fields and values. For example, "CN=www.server.com, OU=test, C=US, [email protected]". The common fields and their meanings are shown below.

FieldMeaning
CNCommon Name. This is commonly a host name like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma, it must be quoted.

Amazon Redshift Connector for CData Sync

SSLServerCert

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

Remarks

If using a TLS/SSL connection, this property can be used to specify the TLS/SSL certificate to be accepted from the server. Any other certificate that is not trusted by the machine is rejected.

This property can take the following forms:

Description Example
A full PEM Certificate (example shortened for brevity) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
A path to a local file containing the certificate C:\cert.cer
The public key (example shortened for brevity) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
The MD5 Thumbprint (hex values can also be either space or colon separated) ecadbdda5a1529c58a1e9e09828d70e4
The SHA1 Thumbprint (hex values can also be either space or colon separated) 34a929226ae0819f2ec14b4a3d904f801cbb150d

If not specified, any certificate trusted by the machine is accepted.

Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.

Amazon Redshift Connector for CData Sync

SSH

This section provides a complete list of the SSH properties you can configure in the connection string for this provider.


PropertyDescription
SSHAuthModeThe authentication method used when establishing an SSH Tunnel to the service.
SSHClientCertA certificate to be used for authenticating the SSHUser.
SSHClientCertPasswordThe password of the SSHClientCert key if it has one.
SSHClientCertSubjectThe subject of the SSH client certificate.
SSHClientCertTypeThe type of SSHClientCert private key.
SSHServerThe SSH server.
SSHPortThe SSH port.
SSHUserThe SSH user.
SSHPasswordThe SSH password.
SSHServerFingerprintThe SSH server fingerprint.
UseSSHWhether to tunnel the Amazon Redshift connection over SSH. Use SSH.
Amazon Redshift Connector for CData Sync

SSHAuthMode

The authentication method used when establishing an SSH Tunnel to the service.

Remarks

  • None: No authentication is performed. The current User value is ignored, and the connection is logged in as anonymous.
  • Password: The Sync App uses the values of User and Password to authenticate the user.
  • Public_Key: The Sync App uses the values of User and SSHClientCert to authenticate the user. SSHClientCert must have a private key available for this authentication method to succeed.

Amazon Redshift Connector for CData Sync

SSHClientCert

A certificate to be used for authenticating the SSHUser.

Remarks

SSHClientCert must contain a valid private key in order to use public key authentication. A public key is optional, if one is not included then the Sync App generates it from the private key. The Sync App sends the public key to the server and the connection is allowed if the user has authorized the public key.

The SSHClientCertType field specifies the type of the key store specified by SSHClientCert. If the store is password protected, specify the password in SSHClientCertPassword.

Some types of key stores are containers which may include multiple keys. By default the Sync App will select the first key in the store, but you can specify a specific key using SSHClientCertSubject.

Amazon Redshift Connector for CData Sync

SSHClientCertPassword

The password of the SSHClientCert key if it has one.

Remarks

This property is only used when authenticating to SFTP servers with SSHAuthMode set to PublicKey and SSHClientCert set to a private key.

Amazon Redshift Connector for CData Sync

SSHClientCertSubject

The subject of the SSH client certificate.

Remarks

When loading a certificate the subject is used to locate the certificate in the store.

If an exact match is not found, the store is searched for subjects containing the value of the property.

If a match is still not found, the property is set to an empty string, and no certificate is selected.

The special value "*" picks the first certificate in the certificate store.

The certificate subject is a comma separated list of distinguished name fields and values. For instance "CN=www.server.com, OU=test, C=US, [email protected]". Common fields and their meanings are displayed below.

FieldMeaning
CNCommon Name. This is commonly a host name like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma it must be quoted.

Amazon Redshift Connector for CData Sync

SSHClientCertType

The type of SSHClientCert private key.

Remarks

This property can take one of the following values:

TypesDescriptionAllowed Blob Values
MACHINE/USER Blob values are not supported.
JKSFILE/JKSBLOB base64-only
PFXFILE/PFXBLOBA PKCS12-format (.pfx) file. Must contain both a certificate and a private key.base64-only
PEMKEY_FILE/PEMKEY_BLOBA PEM-format file. Must contain an RSA, DSA, or OPENSSH private key. Can optionally contain a certificate matching the private key.base64 or plain text. Newlines may be replaced with spaces when providing the blob as text.
PPKFILE/PPKBLOBA PuTTY-format private key created using the puttygen tool.base64-only
XMLFILE/XMLBLOBAn XML key in the format generated by the .NET RSA class: RSA.ToXmlString(true).base64 or plain text.

Amazon Redshift Connector for CData Sync

SSHServer

The SSH server.

Remarks

The SSH server.

Amazon Redshift Connector for CData Sync

SSHPort

The SSH port.

Remarks

The SSH port.

Amazon Redshift Connector for CData Sync

SSHUser

The SSH user.

Remarks

The SSH user.

Amazon Redshift Connector for CData Sync

SSHPassword

The SSH password.

Remarks

The SSH password.

Amazon Redshift Connector for CData Sync

SSHServerFingerprint

The SSH server fingerprint.

Remarks

The SSH server fingerprint.

Amazon Redshift Connector for CData Sync

UseSSH

Whether to tunnel the Amazon Redshift connection over SSH. Use SSH.

Remarks

By default the Sync App will attempt to connect directly to Amazon Redshift. When this option is enabled, the Sync App will instead establish an SSH connection with the SSHServer and tunnel the connection to Amazon Redshift through it.

Amazon Redshift Connector for CData Sync

Firewall

This section provides a complete list of the Firewall properties you can configure in the connection string for this provider.


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.
Amazon Redshift Connector for CData Sync

FirewallType

The protocol used by a proxy-based firewall.

Remarks

This property specifies the protocol that the Sync App will use to tunnel traffic through the FirewallServer proxy.

Type Default Port Description
TUNNEL 80 When this is set, the Sync App opens a connection to Amazon Redshift and traffic flows back and forth through the proxy.
SOCKS4 1080 When this is set, the Sync App sends data through the SOCKS 4 proxy specified by FirewallServer and FirewallPort and passes the FirewallUser value to the proxy, which determines if the connection request should be granted.
SOCKS5 1080 When this is set, the Sync App sends data through the SOCKS 5 proxy specified by FirewallServer and FirewallPort. If your proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes.

Amazon Redshift Connector for CData Sync

FirewallServer

The name or IP address of a proxy-based firewall.

Remarks

This property specifies the IP address, DNS name, or host name of a proxy allowing traversal of a firewall. The protocol is specified by FirewallType: Use FirewallServer with this property to connect through SOCKS or do tunneling.

Amazon Redshift Connector for CData Sync

FirewallPort

The TCP port for a proxy-based firewall.

Remarks

This specifies the TCP port for a proxy allowing traversal of a firewall. Use FirewallServer to specify the name or IP address. Specify the protocol with FirewallType.

Amazon Redshift Connector for CData Sync

FirewallUser

The user name to use to authenticate with a proxy-based firewall.

Remarks

The FirewallUser and FirewallPassword properties are used to authenticate against the proxy specified in FirewallServer and FirewallPort, following the authentication method specified in FirewallType.

Amazon Redshift Connector for CData Sync

FirewallPassword

A password used to authenticate to a proxy-based firewall.

Remarks

This property is passed to the proxy specified by FirewallServer and FirewallPort, following the authentication method specified by FirewallType.

Amazon Redshift Connector for CData Sync

Proxy

This section provides a complete list of the Proxy properties you can configure in the connection string for this provider.


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .
Amazon Redshift Connector for CData Sync

ProxyAutoDetect

This indicates whether to use the system proxy settings or not.

Remarks

This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.

Amazon Redshift Connector for CData Sync

ProxyServer

The hostname or IP address of a proxy to route HTTP traffic through.

Remarks

The hostname or IP address of a proxy to route HTTP traffic through. The Sync App can use the HTTP, Windows (NTLM), or Kerberos authentication types to authenticate to an HTTP proxy.

If you need to connect through a SOCKS proxy or tunnel the connection, see FirewallType.

By default, the Sync App uses the system proxy. If you need to use another proxy, set ProxyAutoDetect to false.

Amazon Redshift Connector for CData Sync

ProxyPort

The TCP port the ProxyServer proxy is running on.

Remarks

The port the HTTP proxy is running on that you want to redirect HTTP traffic through. Specify the HTTP proxy in ProxyServer. For other proxy types, see FirewallType.

Amazon Redshift Connector for CData Sync

ProxyAuthScheme

The authentication type to use to authenticate to the ProxyServer proxy.

Remarks

This value specifies the authentication type to use to authenticate to the HTTP proxy specified by ProxyServer and ProxyPort.

Note that the Sync App will use the system proxy settings by default, without further configuration needed; if you want to connect to another proxy, you will need to set ProxyAutoDetect to false, in addition to ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

The authentication type can be one of the following:

  • BASIC: The Sync App performs HTTP BASIC authentication.
  • DIGEST: The Sync App performs HTTP DIGEST authentication.
  • NEGOTIATE: The Sync App retrieves an NTLM or Kerberos token based on the applicable protocol for authentication.
  • PROPRIETARY: The Sync App does not generate an NTLM or Kerberos token. You must supply this token in the Authorization header of the HTTP request.

If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.

Amazon Redshift Connector for CData Sync

ProxyUser

A user name to be used to authenticate to the ProxyServer proxy.

Remarks

The ProxyUser and ProxyPassword options are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

You can select one of the available authentication types in ProxyAuthScheme. If you are using HTTP authentication, set this to the user name of a user recognized by the HTTP proxy. If you are using Windows or Kerberos authentication, set this property to a user name in one of the following formats:

user@domain
domain\user

Amazon Redshift Connector for CData Sync

ProxyPassword

A password to be used to authenticate to the ProxyServer proxy.

Remarks

This property is used to authenticate to an HTTP proxy server that supports NTLM (Windows), Kerberos, or HTTP authentication. To specify the HTTP proxy, you can set ProxyServer and ProxyPort. To specify the authentication type, set ProxyAuthScheme.

If you are using HTTP authentication, additionally set ProxyUser and ProxyPassword to HTTP proxy.

If you are using NTLM authentication, set ProxyUser and ProxyPassword to your Windows password. You may also need these to complete Kerberos authentication.

For SOCKS 5 authentication or tunneling, see FirewallType.

By default, the Sync App uses the system proxy. If you want to connect to another proxy, set ProxyAutoDetect to false.

Amazon Redshift Connector for CData Sync

ProxySSLType

The SSL type to use when connecting to the ProxyServer proxy.

Remarks

This property determines when to use SSL for the connection to an HTTP proxy specified by ProxyServer. This value can be AUTO, ALWAYS, NEVER, or TUNNEL. The applicable values are the following:

AUTODefault setting. If the URL is an HTTPS URL, the Sync App will use the TUNNEL option. If the URL is an HTTP URL, the component will use the NEVER option.
ALWAYSThe connection is always SSL enabled.
NEVERThe connection is not SSL enabled.
TUNNELThe connection is through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy.

Amazon Redshift Connector for CData Sync

ProxyExceptions

A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Remarks

The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.

Note that the Sync App uses the system proxy settings by default, without further configuration needed; if you want to explicitly configure proxy exceptions for this connection, you need to set ProxyAutoDetect = false, and configure ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

Amazon Redshift Connector for CData Sync

Logging

This section provides a complete list of the Logging properties you can configure in the connection string for this provider.


PropertyDescription
LogModulesCore modules to be included in the log file.
Amazon Redshift Connector for CData Sync

LogModules

Core modules to be included in the log file.

Remarks

Only the modules specified (separated by ';') will be included in the log file. By default all modules are included.

See the Logging page for an overview.

Amazon Redshift Connector for CData Sync

Schema

This section provides a complete list of the Schema properties you can configure in the connection string for this provider.


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
IgnoredSchemasVisibility restriction filter which is used to hide the list of schemas by metadata quering. For example, 'information_schema, pg_catalog'. Schema names are case sensitive.
Amazon Redshift Connector for CData Sync

Location

A path to the directory that contains the schema files defining tables, views, and stored procedures.

Remarks

The path to a directory which contains the schema files for the Sync App (.rsd files for tables and views, .rsb files for stored procedures). The folder location can be a relative path from the location of the executable. The Location property is only needed if you want to customize definitions (for example, change a column name, ignore a column, and so on) or extend the data model with new tables, views, or stored procedures.

If left unspecified, the default location is "%APPDATA%\\CData\\Redshift Data Provider\\Schema" with %APPDATA% being set to the user's configuration directory:

Platform %APPDATA%
Windows The value of the APPDATA environment variable
Linux ~/.config

Amazon Redshift Connector for CData Sync

BrowsableSchemas

This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Remarks

Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.

Amazon Redshift Connector for CData Sync

Tables

This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.

Remarks

Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Amazon Redshift Connector for CData Sync

Views

Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Remarks

Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Amazon Redshift Connector for CData Sync

IgnoredSchemas

Visibility restriction filter which is used to hide the list of schemas by metadata quering. For example, 'information_schema, pg_catalog'. Schema names are case sensitive.

Remarks

By default restrictions are not applied.

Amazon Redshift Connector for CData Sync

Miscellaneous

This section provides a complete list of the Miscellaneous properties you can configure in the connection string for this provider.


PropertyDescription
AllowPreparedStatementPrepare a query statement before its execution.
COPYConversionParametersSpecifies the coma separated list of parameter to use in the COPY command when InsertMode is S3Staging or S3StagingWithIAM. Supported parameters are: BLANKSASNULL DELIMITER EMPTYASNULL EXPLICIT_IDS NULL AS TRIMBLANKS TRUNCATECOLUMNS.
FetchResultSetMetadataThis field sets whether the provider retrieves metadata pertaining to the schema and table name for resultset columns returned by the server.
IncludeTableTypesIf set to true, the provider will query for the types of individual tables and views.
InsertModeSpecifies what method to use when inserting bulk data. By default DML mode is used.
MaxRowsLimits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
OtherThese hidden properties are used only in specific use cases.
QueryPassthroughThis option passes the query to the Amazon Redshift server as is.
RedshiftToS3RoleARNThe Amazon Resource Name of the role to use when authenticating S3 with IAM role by the COPY command for the bulk inserts.
S3BucketSpecifies the name of AWS S3 bucket to upload bulk data for staging.
S3BucketFolderSpecifies the name of the folder in AWS S3 bucket to upload bulk data for staging. By default bulk data are staged in the root folder.
StripOutNullsWhen set the null characters are stripped out from character values in bulk operations.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
TimeZoneSet time zone for the current session.
UseUIDForStagingUse this property in combination with InsertMode assigned with S3Staging or S3StagingWithIAM. By default the the driver creates staging files with names that prepend the targeted table's name, so the files are overwritten between sessions. When the property is set to True , the provider additionally attaches temporary unique identifiers to these names. It may be required if you use parallel jobs to insert rows into the same table. Thus, the staging files are not overwritten by the jobs. A caveat is that using this property adds to the number of staging files put onto S3 bucket, since the file names are not controlled by the driver between different sessions. In this case you may want to define an AWS S3 policy on the bucket to remove staging files that were stored in a bucket automatically.
Amazon Redshift Connector for CData Sync

AllowPreparedStatement

Prepare a query statement before its execution.

Remarks

If the AllowPreparedStatement property is set to false, statements are parsed each time they are executed. Setting this property to false can be useful if you are executing many different queries only once.

If you are executing the same query repeatedly, you will generally see better performance by leaving this property at the default, true. Preparing the query avoids recompiling the same query over and over. However, prepared statements also require the Sync App to keep the connection active and open while the statement is prepared.

Amazon Redshift Connector for CData Sync

COPYConversionParameters

Specifies the coma separated list of parameter to use in the COPY command when InsertMode is S3Staging or S3StagingWithIAM. Supported parameters are: BLANKSASNULL DELIMITER EMPTYASNULL EXPLICIT_IDS NULL AS TRIMBLANKS TRUNCATECOLUMNS.

Remarks

All parameteres are optional. By default all but 'NULL AS' and 'DELIMITER' are inactive. Default 'DELIMITER' is comma char. See also UseUIDForStaging for more details about the value used as a null mark.

Amazon Redshift Connector for CData Sync

FetchResultSetMetadata

This field sets whether the provider retrieves metadata pertaining to the schema and table name for resultset columns returned by the server.

Remarks

By default, the Sync App will not request that the server provides detailed information about resultset columns like the table name or schema name. It requires issuing additional metadata queries via Sync App , and it may affect query performance essentially in some scenarios. Consider setting this property to True when you need such detailed descriptive information for the resultset columns.

Amazon Redshift Connector for CData Sync

IncludeTableTypes

If set to true, the provider will query for the types of individual tables and views.

Remarks

If set to true, the Sync App will query Redshift for the types of individual tables and views.

Amazon Redshift Connector for CData Sync

InsertMode

Specifies what method to use when inserting bulk data. By default DML mode is used.

Remarks

When this is set to DML the Sync App uses Insert SQL statements to upload bulk data.

When this is set to S3Staging the Sync App uses the bulk upload API to upload data to the AWS S3 staging folder.

Bulk Insertion

InsertMode provides the following options for executing a bulk insert operation by the driver:

  1. DML: This is the default option for sending multiple INSERT statements to the server by the driver in bulk. In this case, the driver issues a multi-row INSERT statement with respective syntax supported by the server. See Use a multi-row insert in the Amazon Redshift documentation.
  2. S3Staging: This option involves two steps. Initially, multiple rows are streamed to the Amazon S3 bucket in CSV format. A staging CSV file is then created in the bucket. In the second step, Redshift's COPY FROM command copies the staged CSV file to a database. See COPY in the Amazon Redshift documentation for more information.

    The minimum set of policies required to connect AWS S3 by an IAM user, or a role assumed by it, are:

    • S3:ListBucket
    • S3:GetObject
    • S3:PutObject.

    Note that this mode uses your AWSAccessKey and AWSSecretKey in COPY commands that are sent to the server. This could present a security concern. If you want to hide sensitive information, use the S3StagingWithIAM mode instead.

  3. S3StagingWithIAM: This option is similar to S3Staging, but it uses an IAM role parameter for the COPY command.

    The AWSAccessKey and AWSSecretKey are still required to connect in this mode, but they are not be included in the COPY commands sent to Redshift.

NOTE:If you choose the S3Staging or S3StagingWithIAM insert mode, and if you set the UseUIDForStaging connection property to True, you may want to define an AWS S3 policy on the bucket to remove staging files that are automatically stored in the bucket.

See also:

  • AllowPreparedStatement
  • RedshiftToS3RoleARN

Amazon Redshift Connector for CData Sync

MaxRows

Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.

Remarks

Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.

Amazon Redshift Connector for CData Sync

Other

These hidden properties are used only in specific use cases.

Remarks

The properties listed below are available for specific use cases. Normal driver use cases and functionality should not require these properties.

Specify multiple properties in a semicolon-separated list.

Integration and Formatting

DefaultColumnSizeSets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000.
ConvertDateTimeToGMTDetermines whether to convert date-time values to GMT, instead of the local time of the machine.
RecordToFile=filenameRecords the underlying socket data transfer to the specified file.

Amazon Redshift Connector for CData Sync

QueryPassthrough

This option passes the query to the Amazon Redshift server as is.

Remarks

When this is set, queries are passed through directly to Amazon Redshift.

Amazon Redshift Connector for CData Sync

RedshiftToS3RoleARN

The Amazon Resource Name of the role to use when authenticating S3 with IAM role by the COPY command for the bulk inserts.

Remarks

By default, if this property is not set, the COPY command uses 'default' value for the IAM role.

Amazon Redshift Connector for CData Sync

S3Bucket

Specifies the name of AWS S3 bucket to upload bulk data for staging.

Remarks

Amazon Redshift Connector for CData Sync

S3BucketFolder

Specifies the name of the folder in AWS S3 bucket to upload bulk data for staging. By default bulk data are staged in the root folder.

Remarks

Amazon Redshift Connector for CData Sync

StripOutNulls

When set the null characters are stripped out from character values in bulk operations.

Remarks

Amazon Redshift Connector for CData Sync

Timeout

The value in seconds until the timeout error is thrown, canceling the operation.

Remarks

If Timeout = 0, operations do not time out. The operations run until they complete successfully or until they encounter an error condition.

If Timeout expires and the operation is not yet complete, the Sync App throws an exception.

Amazon Redshift Connector for CData Sync

TimeZone

Set time zone for the current session.

Remarks

If the TimeZone property is not set, provider uses client system time zone. Setting this property can be useful when you need the server to convert time with time zone and timestamp with timezone values to specific time zone, which is different than client's system time zone.

Amazon Redshift Connector for CData Sync

UseUIDForStaging

Use this property in combination with InsertMode assigned with S3Staging or S3StagingWithIAM. By default the the driver creates staging files with names that prepend the targeted table's name, so the files are overwritten between sessions. When the property is set to True , the provider additionally attaches temporary unique identifiers to these names. It may be required if you use parallel jobs to insert rows into the same table. Thus, the staging files are not overwritten by the jobs. A caveat is that using this property adds to the number of staging files put onto S3 bucket, since the file names are not controlled by the driver between different sessions. In this case you may want to define an AWS S3 policy on the bucket to remove staging files that were stored in a bucket automatically.

Remarks

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839