Couchbase
To connect to data, set the Server property to the hostname or IP address of the Couchbase server(s) you are authenticating to. If your Couchbase server is configured to use SSL, you can enable it either by using an https URL for Server (like 'https://couchbase.server'), or by setting the UseSSL property to True.
1 Couchbase Analytics
By default, the provider connects to the N1QL Query service. In order to connect to the Couchbase Analytics service, you will also need to set the CouchbaseService property to Analytics.
1.1 Couchbase Cloud
A few special settings are required to connect to Couchbase Cloud:
Set the AuthScheme to Basic
Set the Server option to the domain listed in the Couchbase Cloud console.
Enable the UseSSL option.
Set the ConnectionMode to Cloud
Set the DNSServer option to a DNS server. In most cases this should be a public DNS service like 1.1.1.1 or 8.8.8.8.
Set the SSLServerCert option to * to trust the Couchbase server certificate. You can also provide the certificate using that option or your trust store if you want the provider to validate it.
2 Authenticating with Couchbase
The provider supports several forms of authentication depending upon how your Couchbase Server is configured. Couchbase Cloud only accepts Standard Authentication, while Couchbase Server accepts all forms.
2.1 Authenticating with Standard Authentication
To authenticate with standard authentication, set the following:
AuthScheme: Use the Basic option.
User: The user authenticating to Couchbase.
Password: The password of the user authenticating to Couchbase.
2.2 Authenticating with Client Certificates
The provider supports authenticating with client certificates when SSL is enabled. To use client certificate authentication, set the following properties.
AuthScheme: Required. Use the SSLCertificate option.
SSLClientCertType: Required. The type of client certificate set within SSLClientCert.
SSLClientCert: Required. The client certificate in the format given by SSLClientCertType. Usually the path to your private key file.
SSLClientCertPassword: Optional. The password of the client certificate if it is encrypted.
SSLClientCertSubject: Optional. The subject of the client certificate, by default the first certificate found in the store. This is required if more than one certificate is available in the certificate store.
2.3 Authenticating with a Credentials File
You can also authenticate using using a credentials file containing multiple logins. This is included for legacy use and is not recommended when connecting to a Couchbase Server that supports role-based authentication.
AuthScheme: Use the CredentialsFile option.
CredentialsFile; The path to the credentials file. Refer to Couchbase's documentation for more information on the format of this file.
The following are the connection properties for Couchbase. Not all properties are required. Enter only property values pertaining to your installation. Several properties will be automatically initialized with the appRules defaults.
Property
|
Description
|
Authentication | |
AnalyticsPort | The port for connecting to the Couchbase Analytics Endpoint. |
CouchbaseService | Determines the Couchbase service to connect to. Default is N1QL. Available options are N1QL and Analytics. |
CredentialsFile | Use this property if you need to provide credentials for multiple users or buckets. This file takes priority over other forms of authentication. |
N1QLPort | The port for connecting to the Couchbase N1QL Endpoint. |
Password | The password used to authenticate to Couchbase. |
Server | The address of the Couchbase server or servers to which you are connecting. |
User | The user who is authenticating to Couchbase. |
UseSSL | Whether to negotiate TLS/SSL when connecting to the Couchbase server. |
WebConsolePort | The port for connecting to the Couchbase Web Console. |
Data | |
SupportEnhancedSQL | If the property is set to true, allow the provider to perform queries client-side when Couchbase does not support them. |
Firewall | |
FirewallPassword | A password used to authenticate to a proxy-based firewall. |
FirewallPort | The TCP port for a proxy-based firewall. |
FirewallServer | The name or IP address of a proxy-based firewall. |
FirewallType | The protocol used by a proxy-based firewall. |
FirewallUser | The user name to use to authenticate with a proxy-based firewall. |
Logging | |
Logfile | A path to the log file. |
MaxLogFileCount | A string specifying the maximum file count of log files. When the limit is hit, a new log is created in the same folder with the date and time appended to the end and the oldest log file will be deleted. |
MaxLogFileSize | A string specifying the maximum size in bytes for a log file (for example, 10 MB). When the limit is hit, a new log is created in the same folder with the date and time appended to the end. |
Verbosity | The verbosity level that determines the amount of detail included in the log file. |
Misc | |
AllowJSONParameters | Allows raw JSON to be used in parameters when QueryPassthrough is enabled. |
ChildSeparator | The character or characters used to denote child tables. |
ConnectionLifeTime | The maximum lifetime of a connection in seconds. Once the time has elapsed, the connection object is disposed. |
ConnectionString | *** |
CreateTableRamQuota | The default RAM quota, in megabytes, to use when inserting buckets via the CREATE TABLE syntax. |
Dataverse | Which Analytics dataverse to scan when discovering tables. |
DataverseSeparator | The character or characters used to denote Analytics dataverses. |
FlattenArrays | By default, nested arrays are returned as strings of JSON. The FlattenArrays property can be used to flatten the elements of nested arrays into columns of their own. Set FlattenArrays to the number of elements you want to return from nested arrays. |
FlattenObjects | Set FlattenObjects to true to flatten object properties into columns of their own. Otherwise, objects nested in arrays are returned as strings of JSON. |
FlavorSeparator | The character or characters used to denote flavors. |
GenerateSchemaFiles | Indicates the user preference as to when schemas should be generated and saved. |
InferNumSampleValues | The maximum number of values for every field to scan before determining its data type. Applies to Automatic Schema Discovery when TypeDetectionScheme is set to INFER. |
InferSampleSize | The maximum number of documents to scan for the columns available in the bucket. Applies to Automatic Schema Discovery when TypeDetectionScheme is set to INFER. |
InferSimilarityMetric | Specifies the similarity degree where different schemas will be considered to be the same flavor. Applies to Automatic Schema Discovery when TypeDetectionScheme is set to INFER. |
MaxRows | Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time. |
Other | These hidden properties are used only in specific use cases. |
PageSize | The number of results to return per page of data retrieved from the Couchbase server. |
PeriodsSeparator | The character or characters used to denote hierarchy. |
PoolIdleTimeout | The allowed idle time for a connection before it is closed. |
PoolMaxSize | The maximum connections in the pool. |
PoolMinSize | The minimum number of connections in the pool. |
PoolWaitTime | The max seconds to wait for an available connection. |
PseudoColumns | This property indicates whether or not to include pseudo columns as columns to the table. |
QueryExecutionTimeout | This sets the server-side timeout for the query, which governs how long Couchbase will execute the query before returning a timeout error. |
QueryPassthrough | This option passes the query to the Couchbase server as is. |
Readonly | You can use this property to enforce read-only access to Couchbase from the provider. |
RowScanDepth | The maximum number of documents to scan for the columns available in the bucket. |
SSLServerCert | The certificate to be accepted from the server when connecting using TLS/SSL. |
StrictComparison | Adjusts how precisely to translate filters on SQL input queries into Couchbase queries. This can be set to a comma-separated list of values, where each value can be one of: date, number, boolean, or string. |
Timeout | The value in seconds until the timeout error is thrown, canceling the operation. |
TypeDetectionScheme | Determines how the provider builds tables and columns from the buckets found in Couchbase. |
UseConnectionPooling | This property enables connection pooling. |
ValidateJSONParameters | Allows the provider to validate that string parameters are valid JSON before sending the query to Couchbase. |
Proxy | |
ProxyAuthScheme | The authentication type to use to authenticate to the ProxyServer proxy. |
ProxyAutoDetect | This indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings. |
ProxyExceptions | A semicolon separated list of hosts or IPs that are exempt from connecting through the ProxyServer . |
ProxyPassword | A password to be used to authenticate to the ProxyServer proxy. |
ProxyPort | The TCP port the ProxyServer proxy is running on. |
ProxyServer | The hostname or IP address of a proxy to route HTTP traffic through. |
ProxySSLType | The SSL type to use when connecting to the ProxyServer proxy. |
ProxyUser | A user name to be used to authenticate to the ProxyServer proxy. |
Schema | |
TableSupport | How much effort the provider will put into discovering tables on the Couchbase server. |
Last updated