Configuration options for the Amazon Redshift Python connector
Following, you can find descriptions for the options that you can specify for the Amazon Redshift Python connector.
access_key_id
-
Default value – None
-
Data type – String
The access key for the IAM role or user configured for IAM database authentication.
This parameter is optional.
allow_db_user_override
-
Default value – False
-
Data type – Boolean
- True
-
Specifies that the connector uses the
DbUser
value from the Security Assertion Markup Language (SAML) assertion. - False
-
Specifies that the value in the
DbUser
connection parameter is used.
This parameter is optional.
app_name
-
Default value – None
-
Data type – String
The name of the identity provider (IdP) application used for authentication.
This parameter is optional.
auth_profile
-
Default value – None
-
Data type – String
The name of an Amazon Redshift authentication profile having connection properties as
JSON. For more information about naming connection parameters, see the
RedshiftProperty
class. The RedshiftProperty
class
stores connection parameters provided by the end user and, if applicable, generated
during the IAM authentication process (for example, temporary IAM credentials). For
more information, see the RedshiftProperty class
This parameter is optional.
auto_create
-
Default value – False
-
Data type – Boolean
A value that indicates whether to create the user if the user doesn't exist.
This parameter is optional.
client_id
-
Default value – None
-
Data type – String
The client ID from Azure IdP.
This parameter is optional.
client_secret
-
Default value – None
-
Data type – String
The client secret from Azure IdP.
This parameter is optional.
cluster_identifier
-
Default value – None
-
Data type – String
The cluster identifier of the Amazon Redshift cluster.
This parameter is optional.
credentials_provider
-
Default value – None
-
Data type – String
The IdP that is used for authenticating with Amazon Redshift. Following are valid values:
-
AdfsCredentialsProvider
-
AzureCredentialsProvider
-
BrowserAzureCredentialsProvider
-
BrowserAzureOAuth2CredentialsProvider
-
BrowserIdcAuthPlugin
– An authorization plugin using AWS IAM Identity Center. -
BrowserSamlCredentialsProvider
-
IdpTokenAuthPlugin
– An authorization plugin that accepts an AWS IAM Identity Center token or OpenID Connect (OIDC) JSON-based identity tokens (JWT) from any web identity provider linked to the AWS IAM Identity Center. -
PingCredentialsProvider
-
OktaCredentialsProvider
This parameter is optional.
database
-
Default value – None
-
Data type – String
The name of the database to which you want to connect.
This parameter is required.
database_metadata_current_db_only
-
Default value – True
-
Data type – Boolean
A value that indicates whether an application supports multidatabase datashare catalogs. The default value of True indicates that the application doesn't support multidatabase datashare catalogs for backward compatibility.
This parameter is optional.
db_groups
-
Default value – None
-
Data type – String
A comma-separated list of existing database group names that the user indicated by DbUser joins for the current session.
This parameter is optional.
db_user
-
Default value – None
-
Data type – String
The user ID to use with Amazon Redshift.
This parameter is optional.
endpoint_url
-
Default value – None
-
Data type – String
The Amazon Redshift endpoint URL. This option is only for AWS internal use.
This parameter is optional.
group_federation
-
Default value – False
-
Data type – Boolean
This option specifies whether to use Amazon Redshift IDP groups.
This parameter is optional.
- true
-
Use Amazon Redshift Identity Provider (IDP) groups.
- false
-
Use STS API and GetClusterCredentials for user federation and specify db_groups for the connection.
host
-
Default value – None
-
Data type – String
The hostname of Amazon Redshift cluster.
This parameter is optional.
iam
-
Default value – False
-
Data type – Boolean
IAM authentication is enabled.
This parameter is required.
iam_disable_cache
-
Default value – False
-
Data type – Boolean
This option specifies whether the IAM credentials are cached. By default, the IAM credentials are cached. This improves performance when requests to the API gateway are throttled.
This parameter is optional.
idc_client_display_name
-
Default Value – Amazon Redshift Python connector
-
Data Type – String
The display name to be used for the client that's using BrowserIdcAuthPlugin.
This parameter is optional.
idc_region
-
Default Value – None
-
Data Type – String
The AWS region where the AWS IAM Identity Center instance is located.
This parameter is required only when authenticating using
BrowserIdcAuthPlugin
in the credentials_provider configuration
option.
idpPort
-
Default value – 7890
-
Data type – Integer
The listen port to which IdP sends the SAML assertion.
This parameter is required.
idp_response_timeout
-
Default value – 120
-
Data type – Integer
The timeout for retrieving SAML assertion from IdP.
This parameter is required.
idp_tenant
-
Default value – None
-
Data type – String
The IdP tenant.
This parameter is optional.
issuer_url
-
Default Value – None
-
Data Type – String
Points to the AWS IAM Identity Center server's instance endpoint.
This parameter is required only when authenticating using
BrowserIdcAuthPlugin
in the credentials_provider configuration
option.
listen_port
-
Default value – 7890
-
Data type – Integer
The port that the driver uses to receive the SAML response from the identity provider or authorization code when using SAML, Azure AD, or AWS IAM Identity Center services through a browser plugin.
This parameter is optional.
login_url
-
Default value – None
-
Data type – String
The single sign-on Url for the IdP.
This parameter is optional.
max_prepared_statements
-
Default value – 1000
-
Data type – Integer
The maximum number of prepared statements that can be open concurrently.
This parameter is required.
numeric_to_float
-
Default value – False
-
Data type – Boolean
This option specifies if the connector converts numeric data type values from decimal.Decimal to float. By default, the connector receives numeric data type values as decimal.Decimal and does not convert them.
We don't recommend enabling numeric_to_float for use cases that require precision, as results may be rounded.
For more information on decimal.Decimal and the tradeoffs between it and float,
see decimal —
Decimal fixed point and floating point arithmetic
This parameter is optional.
partner_sp_id
-
Default value – None
-
Data type – String
The Partner SP ID used for authentication with Ping.
This parameter is optional.
password
-
Default value – None
-
Data type – String
The password to use for authentication.
This parameter is optional.
port
-
Default value – 5439
-
Data type – Integer
The port number of the Amazon Redshift cluster.
This parameter is required.
preferred_role
-
Default value – None
-
Data type – String
The IAM role preferred for the current connection.
This parameter is optional.
principal_arn
-
Default value – None
-
Data type – String
The Amazon Resource Name (ARN) of the user or IAM role for which you are generating a policy. It's recommended that you attach a policy to a role and then assign the role to your user, for access.
This parameter is optional.
profile
-
Default value – None
-
Data type – String
The name of a profile in an AWS credentials file that contains AWS credentials.
This parameter is optional.
provider_name
-
Default value – None
-
Data type – String
The name of the Redshift Native Authentication Provider.
This parameter is optional.
region
-
Default value – None
-
Data type – String
The AWS Region where the cluster is located.
This parameter is optional.
role_arn
-
Default value – None
-
Data type – String
The Amazon Resource Name (ARN) of the role that the caller is assuming. This
parameter is used by the provider indicated by JwtCredentialsProvider
.
For the JwtCredentialsProvider
provider, this parameter is mandatory.
Otherwise, this parameter is optional.
role_session_name
-
Default value – jwt_redshift_session
-
Data type – String
An identifier for the assumed role session. Typically, you pass the name or
identifier that is associated with the user who is using your application. The
temporary security credentials that your application uses are associated with that
user. This parameter is used by the provider indicated by
JwtCredentialsProvider
.
This parameter is optional.
scope
-
Default value – None
-
Data type – String
A space-separated list of scopes to which the user can consent. You specify this parameter so that your application can get consent for APIs that you want to call. You can specify this parameter when you specify BrowserAzureOAuth2CredentialsProvider for the credentials_provider option.
This parameter is required for the BrowserAzureOAuth2CredentialsProvider plug-in.
secret_access_key_id
-
Default value – None
-
Data type – String
The secret access key for the IAM role or user configured for IAM database authentication.
This parameter is optional.
session_token
-
Default value – None
-
Data type – String
The access key for the IAM role or user configured for IAM database authentication. This parameter is required if temporary AWS credentials are being used.
This parameter is optional.
serverless_acct_id
-
Default value – None
-
Data type – String
The Amazon Redshift Serverless account ID.
This parameter is optional.
serverless_work_group
-
Default value – None
-
Data type – String
The Amazon Redshift Serverless workgroup name.
This parameter is optional.
ssl
-
Default value – True
-
Data type – Boolean
Secure Sockets Layer (SSL) is enabled.
This parameter is required.
ssl_insecure
-
Default value – True
-
Data type – Boolean
A value that specifies whether the IdP hosts server certificate is to be verified.
This parameter is optional.
sslmode
-
Default value – verify-ca
-
Data type – String
The security of the connection to Amazon Redshift. You can specify either of the following:
-
verify-ca
-
verify-full
This parameter is required.
timeout
-
Default value – None
-
Data type – Integer
The number of seconds before the connection to the server times out.
This parameter is optional.
token
-
Default Value – None
-
Data Type – String
An AWS IAM Identity Center provided access token or an OpenID Connect (OIDC) JSON Web Token (JWT) provided by a web identity provider that's linked with AWS IAM Identity Center. Your application must generate this token by authenticating the user of your application with AWS IAM Identity Center or an identity provider linked with AWS IAM Identity Center.
This parameter works with IdpTokenAuthPlugin
.
token_type
-
Default Value – None
-
Data Type – String
The type of token that is being used in IdpTokenAuthPlugin
.
You can specify the following values:
- ACCESS_TOKEN
-
Enter this if you use an AWS IAM Identity Center provided access token.
- EXT_JWT
-
Enter this if you use an OpenID Connect (OIDC) JSON Web Token (JWT) provided by a web-based identity provider that's integrated with AWS IAM Identity Center.
This parameter works with IdpTokenAuthPlugin
.
user
-
Default value – None
-
Data type – String
The user name to use for authentication.
This parameter is optional.
web_identity_token
-
Default value – None
-
Data type – String
The OAuth 2.0 access token or OpenID Connect ID token that is provided by the
identity provider. Make sure that your application gets this token by authenticating
the user who is using your application with a web identity provider. The provider
indicated by JwtCredentialsProvider
uses this parameter.
For the JwtCredentialsProvider
provider, this parameter is mandatory.
Otherwise, this parameter is optional.