IBM Informix Connection Details
Introduction
Connector Version
This documentation is based on version 23.0.9039 of the connector.
Get Started
Informix Version Support
Compatibile with IBM Informix 9.70 and newer. The connector supports industry-standard Distributed Relational Database Architecture (DRDA) connectivity only.
Establish a Connection
Connect to Informix
Set the following properties to connect to Informix:
Server
: Set this to the name of the server running Informix.Port
: Set this to the port the Informix server is listening on.Database
: Set this to the name of the Informix database.User
: Set this to the username of a user allowed to access the database.Password
: Set this to the password of a user allowed to access the database.
Important Notes
Configuration Files and Their Paths
- All references to adding configuration files and their paths refer to files and locations on the Jitterbit agent where the connector is installed. These paths are to be adjusted as appropriate depending on the agent and the operating system. If multiple agents are used in an agent group, identical files will be required on each agent.
Advanced Features
This section details a selection of advanced features of the Informix connector.
SSL Configuration
Use SSL Configuration to adjust how connector handles TLS/SSL certificate negotiations. You can choose from various certificate formats; see the SSLServerCert
property under "Connection String Options" for more information.
Proxy
To configure the connector using private agent proxy settings, select the Use Proxy Settings
checkbox on the connection configuration screen.
SSL Configuration
Customize the SSL Configuration
By default, the connector 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 Informix connector 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.
Advanced Configurations Properties
The advanced configurations 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. Click the links for further details.
Property | Description |
---|---|
AuthScheme | The authentication mechanism that the provider will use to authenticate with Informix. |
Server | The name of the Informix server. |
Port | The port used to connect to the server hosting the database. |
User | A database user. |
Password | The user's password. |
Database | The name of the Informix database. |
UseSSL | This field sets whether SSL is enabled. |
AlternateServers | This property allows you to specify multiple servers in addition to the one configured in Server and Port . Specify both a server name and port; separate servers with a comma. |
Property | Description |
---|---|
SSLClientCert | The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL). |
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. |
SSLServerCert | The certificate to be accepted from the server when connecting using TLS/SSL. |
Property | Description |
---|---|
SSHAuthMode | The authentication method used when establishing an SSH Tunnel to the service. |
SSHClientCert | A certificate to be used for authenticating the SSHUser. |
SSHClientCertPassword | The password of the SSHClientCert key if it has one. |
SSHClientCertSubject | The subject of the SSH client certificate. |
SSHClientCertType | The type of SSHClientCert private key. |
SSHServer | The SSH server. |
SSHPort | The SSH port. |
SSHUser | The SSH user. |
SSHPassword | The SSH password. |
SSHServerFingerprint | The SSH server fingerprint. |
UseSSH | Whether to tunnel the Informix connection over SSH. Use SSH. |
Property | Description |
---|---|
Location | A path to the directory that contains the schema files defining tables, views, and stored procedures. |
BrowsableSchemas | This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA, TableB, TableC. |
Views | Restricts the views reported to a subset of the available tables. For example, Views=ViewA, ViewB, ViewC. |
Property | Description |
---|---|
DBLocale | This property specifies what Charset/Encoding will be used to parse table data. |
MaxRows | Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses. |
Other | These hidden properties are used only in specific use cases. |
QueryPassthrough | This option passes the query to the Informix server as is. |
SessionVariables | A semicolon-separated list of SET ENVIRONMENT commands to set on the current connection. |
SwitchMode | This property allows you to specify a switching mode to select a server from AlternateServers as the active server. |
SwitchStrategy | This property allows you to specify a switching strategy to select a server from AlternateServers as the active server. |
Timeout | A timeout for connections in seconds. |
Authentication
This section provides a complete list of authentication properties you can configure.
Property | Description |
---|---|
AuthScheme | The authentication mechanism that the provider will use to authenticate with Informix. |
Server | The name of the Informix server. |
Port | The port used to connect to the server hosting the database. |
User | A database user. |
Password | The user's password. |
Database | The name of the Informix database. |
UseSSL | This field sets whether SSL is enabled. |
AlternateServers | This property allows you to specify multiple servers in addition to the one configured in Server and Port . Specify both a server name and port; separate servers with a comma. |
AuthScheme
The authentication mechanism that the provider will use to authenticate with Informix.
Possible Values
USRIDPWD
, EUSRIDPWD
Data Type
string
Default Value
USRIDPWD
Remarks
- USRIDPWD: Set this to use user ID and password to authenticate.
- EUSRIDPWD: Set this to use encrypted user ID and encrypted password to authenticate.
Server
The name of the Informix server.
Data Type
string
Default Value
""
Remarks
This property should be set to the name or network address of the server hosting the Informix database.
Port
The port used to connect to the server hosting the database.
Data Type
string
Default Value
50000
Remarks
The port used to connect to the server hosting the database.
User
A database user.
Data Type
string
Default Value
""
Remarks
The username of a user authorized to access the database.
Password
The user's password.
Data Type
string
Default Value
""
Remarks
The password provided for authentication with the database.
Database
The name of the Informix database.
Data Type
string
Default Value
""
Remarks
The name of the Informix database running on the specified Server. To connect to the database, you will also need to specify a User and Password for a user authorized to access the database.
UseSSL
This field sets whether SSL is enabled.
Data Type
bool
Default Value
false
Remarks
This field sets whether the connector will attempt to negotiate TLS/SSL connections to the server. By default, the connector checks the server's certificate against the system's trusted certificate store. To specify another certificate, set SSLServerCert.
AlternateServers
This property allows you to specify multiple servers in addition to the one configured in Server and Port . Specify both a server name and port; separate servers with a comma.
Data Type
string
Default Value
""
Remarks
This property allows you to specify the other servers in addition to the one configured in Server and Port. You must specify all servers using AlternateServers
, Server, and Port.
Specify both a server name and port in AlternateServers
; separate servers with a comma. For example:
Server=localhost;Port=27017;AlternateServers=localhost:27018,localhost:27019;
SSL
This section provides a complete list of SSL properties you can configure.
Property | Description |
---|---|
SSLClientCert | The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL). |
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. |
SSLServerCert | The certificate to be accepted from the server when connecting using TLS/SSL. |
SSLClientCert
The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL).
Data Type
string
Default Value
""
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:
Property | Description |
---|---|
MY | A certificate store holding personal certificates with their associated private keys. |
CA | Certifying authority certificates. |
ROOT | Root certificates. |
SPC | Software 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).
SSLClientCertType
The type of key store containing the TLS/SSL client certificate.
Possible Values
USER
, MACHINE
, PFXFILE
, PFXBLOB
, JKSFILE
, JKSBLOB
, PEMKEY_FILE
, PEMKEY_BLOB
, PUBLIC_KEY_FILE
, PUBLIC_KEY_BLOB
, SSHPUBLIC_KEY_FILE
, SSHPUBLIC_KEY_BLOB
, P7BFILE
, PPKFILE
, XMLFILE
, XMLBLOB
Data Type
string
Default Value
USER
Remarks
This property can take one of the following values:
Property | Description |
---|---|
USER - default | For 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. |
MACHINE | For Windows, this specifies that the certificate store is a machine store. Note that this store type is not available in Java. |
PFXFILE | The certificate store is the name of a PFX (PKCS12) file containing certificates. |
PFXBLOB | The certificate store is a string (base-64-encoded) representing a certificate store in PFX (PKCS12) format. |
JKSFILE | The certificate store is the name of a Java key store (JKS) file containing certificates. Note that this store type is only available in Java. |
JKSBLOB | The 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_FILE | The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate. |
PEMKEY_BLOB | The certificate store is a string (base64-encoded) that contains a private key and an optional certificate. |
PUBLIC_KEY_FILE | The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate. |
PUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains a PEM- or DER-encoded public key certificate. |
SSHPUBLIC_KEY_FILE | The certificate store is the name of a file that contains an SSH-style public key. |
SSHPUBLIC_KEY_BLOB | The certificate store is a string (base-64-encoded) that contains an SSH-style public key. |
P7BFILE | The certificate store is the name of a PKCS7 file containing certificates. |
PPKFILE | The certificate store is the name of a file that contains a PuTTY Private Key (PPK). |
XMLFILE | The certificate store is the name of a file that contains a certificate in XML format. |
XMLBLOB | The certificate store is a string that contains a certificate in XML format. |
SSLClientCertPassword
The password for the TLS/SSL client certificate.
Data Type
string
Default Value
""
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.
SSLClientCertSubject
The subject of the TLS/SSL client certificate.
Data Type
string
Default Value
*
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, E=support@company.com". The common fields and their meanings are shown below.
Field | Meaning |
---|---|
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
If a field value contains a comma, it must be quoted.
SSLServerCert
The certificate to be accepted from the server when connecting using TLS/SSL.
Data Type
string
Default Value
""
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.
Certificates are validated as trusted by the machine based on the System's trust store. The trust store used is the 'javax.net.ssl.trustStore' value specified for the system. If no value is specified for this property, Java's default trust store is used (for example, JAVA_HOME\lib\security\cacerts).
Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.
SSH
This section provides a complete list of SSH properties you can configure.
Property | Description |
---|---|
SSHAuthMode | The authentication method used when establishing an SSH Tunnel to the service. |
SSHClientCert | A certificate to be used for authenticating the SSHUser. |
SSHClientCertPassword | The password of the SSHClientCert key if it has one. |
SSHClientCertSubject | The subject of the SSH client certificate. |
SSHClientCertType | The type of SSHClientCert private key. |
SSHServer | The SSH server. |
SSHPort | The SSH port. |
SSHUser | The SSH user. |
SSHPassword | The SSH password. |
SSHServerFingerprint | The SSH server fingerprint. |
UseSSH | Whether to tunnel the Informix connection over SSH. Use SSH. |
SSHAuthMode
The authentication method used when establishing an SSH Tunnel to the service.
Possible Values
None
, Password
, Public_Key
Data Type
string
Default Value
Password
Remarks
- None: No authentication is performed. The current User value is ignored, and the connection is logged in as anonymous.
- Password: The connector uses the values of User and Password to authenticate the user.
- Public_Key: The connector uses the values of User and SSHClientCert to authenticate the user. SSHClientCert must have a private key available for this authentication method to succeed.
SSHClientCert
A certificate to be used for authenticating the SSHUser.
Data Type
string
Default Value
""
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 connector generates it from the private key. The connector 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 connector will select the first key in the store, but you can specify a specific key using SSHClientCertSubject.
SSHClientCertPassword
The password of the SSHClientCert key if it has one.
Data Type
string
Default Value
""
Remarks
This property is only used when authenticating to SFTP servers with SSHAuthMode set to PublicKey and SSHClientCert set to a private key.
SSHClientCertSubject
The subject of the SSH client certificate.
Data Type
string
Default Value
*
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, E=example@jbexample.com". Common fields and their meanings are displayed below.
Field | Meaning |
---|---|
CN | Common Name. This is commonly a host name like www.server.com. |
O | Organization |
OU | Organizational Unit |
L | Locality |
S | State |
C | Country |
E | Email Address |
If a field value contains a comma it must be quoted.
SSHClientCertType
The type of SSHClientCert private key.
Possible Values
USER
, MACHINE
, PFXFILE
, PFXBLOB
, JKSFILE
, JKSBLOB
, PEMKEY_FILE
, PEMKEY_BLOB
, PPKFILE
, PPKBLOB
, XMLFILE
, XMLBLOB
Data Type
string
Default Value
PEMKEY_FILE
Remarks
This property can take one of the following values:
Types | Description | Allowed Blob Values |
---|---|---|
MACHINE/USER | Not available on this platform. | Blob values are not supported. |
JKSFILE/JKSBLOB | A Java keystore file. Must contain both a certificate and a private key. Only available in Java. | base64-only |
PFXFILE/PFXBLOB | A PKCS12-format (.pfx) file. Must contain both a certificate and a private key. | base64-only |
PEMKEY_FILE/PEMKEY_BLOB | A 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/PPKBLOB | A PuTTY-format private key created using the puttygen tool. | base64-only |
XMLFILE/XMLBLOB | An XML key in the format generated by the .NET RSA class: RSA.ToXmlString(true) . | base64 or plain text. |
SSHServer
The SSH server.
Data Type
string
Default Value
""
Remarks
The SSH server.
SSHPort
The SSH port.
Data Type
string
Default Value
22
Remarks
The SSH port.
SSHUser
The SSH user.
Data Type
string
Default Value
""
Remarks
The SSH user.
SSHPassword
The SSH password.
Data Type
string
Default Value
""
Remarks
The SSH password.
SSHServerFingerprint
The SSH server fingerprint.
Data Type
string
Default Value
""
Remarks
The SSH server fingerprint.
UseSSH
Whether to tunnel the Informix connection over SSH. Use SSH.
Data Type
bool
Default Value
false
Remarks
By default the connector will attempt to connect directly to Informix. When this option is enabled, the connector will instead establish an SSH connection with the SSHServer and tunnel the connection to Informix through it.
Schema
This section provides a complete list of schema properties you can configure.
Property | Description |
---|---|
Location | A path to the directory that contains the schema files defining tables, views, and stored procedures. |
BrowsableSchemas | This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA, TableB, TableC. |
Views | Restricts the views reported to a subset of the available tables. For example, Views=ViewA, ViewB, ViewC. |
Location
A path to the directory that contains the schema files defining tables, views, and stored procedures.
Data Type
string
Default Value
%APPDATA%\Informix Data Provider\Schema
Remarks
The path to a directory which contains the schema files for the connector (.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%\Informix Data Provider\Schema" with %APPDATA%
being set to the user's configuration directory:
Platform | %APPDATA% |
---|---|
Windows | The value of the APPDATA environment variable |
Mac | ~/Library/Application Support |
Linux | ~/.config |
BrowsableSchemas
This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Data Type
string
Default Value
""
Remarks
Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.
Tables
This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
Data Type
string
Default Value
""
Remarks
Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the connector.
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.
Views
Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
Data Type
string
Default Value
""
Remarks
Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the connector.
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.
Miscellaneous
This section provides a complete list of miscellaneous properties you can configure.
Property | Description |
---|---|
DBLocale | This property specifies what Charset/Encoding will be used to parse table data. |
MaxRows | Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses. |
Other | These hidden properties are used only in specific use cases. |
QueryPassthrough | This option passes the query to the Informix server as is. |
SessionVariables | A semicolon-separated list of SET ENVIRONMENT commands to set on the current connection. |
SwitchMode | This property allows you to specify a switching mode to select a server from AlternateServers as the active server. |
SwitchStrategy | This property allows you to specify a switching strategy to select a server from AlternateServers as the active server. |
Timeout | A timeout for connections in seconds. |
DBLocale
This property specifies what Charset/Encoding will be used to parse table data.
Data Type
string
Default Value
""
Remarks
If set this property to NULL or empty, the driver will use the SQLDAGRP.SQLCCSID as default Charset/Encoding, you can visit the documentation for details: https://www.ibm.com/docs/en/ims/15.1.0?topic=objects-sqldard-command-x2411
.
MaxRows
Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
Data Type
int
Default Value
-1
Remarks
Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
Other
These hidden properties are used only in specific use cases.
Data Type
string
Default Value
""
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
Property | Description |
---|---|
DefaultColumnSize | Sets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000. |
ConvertDateTimeToGMT | Determines whether to convert date-time values to GMT, instead of the local time of the machine. |
RecordToFile=filename | Records the underlying socket data transfer to the specified file. |
QueryPassthrough
This option passes the query to the Informix server as is.
Data Type
bool
Default Value
false
Remarks
When this is set, queries are passed through directly to Informix.
SessionVariables
A semicolon-separated list of SET ENVIRONMENT commands to set on the current connection.
Data Type
string
Default Value
""
Remarks
A semicolon-separated list of SET ENVIRONMENT commands to set on the current connection. For example: 'sessionVariables="SET ENVIRONMENT DELIMIDENT ON;"'
SwitchMode
This property allows you to specify a switching mode to select a server from AlternateServers as the active server.
Possible Values
None
, Failover
, LoadBalance
Data Type
string
Default Value
Failover
Remarks
There are three switching modes available: None: Always use the default server. Failover: When the active server cannot be accessed, another server in AlternateServers will be used as the active server. LoadBalance: This option includes the feature of "Failover". In addition, the active server will also be changed after a transcation is committed.
Specify SwitchMode:
SwitchMode=Failover;
SwitchStrategy
This property allows you to specify a switching strategy to select a server from AlternateServers as the active server.
Possible Values
Sequence
, Random
, BestResponse
Data Type
string
Default Value
sequence
Remarks
There are three switching strategies available: Sequence: Always use the next server in AlternateServers as the active server. Random: Use a random server in AlternateServers as the active server. BestResponse: Always use the server with the shortest response time.
Specify SwitchStrategy:
SwitchStrategy=Random;
Timeout
A timeout for connections in seconds.
Data Type
string
Default Value
60
Remarks
Specify the timeout in seconds. If the Timeout
property is set to 0, operations do not time out: they will run until they complete successfully or encounter an error condition.
An error condition will occur if Timeout
expires and the operation is not yet complete.