From bd36802b06fe0743037d5bec0dd89564d7d63a8f Mon Sep 17 00:00:00 2001 From: Jordan Wilson Date: Mon, 16 Mar 2020 14:27:17 -0700 Subject: [PATCH] update connection string options post-auth/encryption --- README.md | 48 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 04a499ee..e8cd5a9b 100644 --- a/README.md +++ b/README.md @@ -14,20 +14,48 @@ The driver comes in the form of a library file: If using with ODBC compatible BI tools,refer to the tool documentation on configuring a new ODBC driver. Typically, all that's required is to make the tool aware of the location of the driver library file and then use it to setup database (i.e Elasticsearch) connections. -### Connection Strings and other Settings +### Connection Strings and Other Settings -To setup a connection, the driver requires a ODBC connection strings. The connection strings are of the form: +To setup a connection, the driver uses an ODBC connection string. Connection strings are semicolon-delimited strings specifying the set of options to use for a connection. Typically, a connection string will either: ->1. DSN=my_dsn;Username=my_username;Password=my_password; ->2. Host=host_name;Port=port_number;Username=my_username;Password=my_password; +1. specify a Data Source Name containing a pre-configured set of options (`DSN=xxx;User=xxx;Password=xxx;`) +2. or configure options explicitly using the string (`Host=xxx;Port=xxx;LogLevel=ES_DEBUG;...`) -* **DSN**: String that has an associated data structure used to describe a connection to a data source. -* **Host**: Hostname or IP address of the target cluster. -* **Port**: Port number on which the cluster's REST interface is listening. Default value depends on the scheme selected. For http, the default is 9200. For https, the default is 443. -* **Username**: Connection username. -* **Password**: Connection password. +The following are the driver options that can be configured using a DSN or connection string: -TODO AE-45: Update new connection string options +(**NOTE:** All option names are *case-insensitive*.) + +#### Basic Options + +| Option | Description | Type | Default | +|--------|-------------|------|---------------| +| `DSN` | **D**ata **S**ource **N**ame used for configuring the connection. | string | | +| `Host` / `Server` | Hostname or IP address for the target cluster. | string | | +| `Port` | Port number on which the cluster's REST interface is listening. | string | | + +#### Authentication Options + +| Option | Description | Type | Default | +|--------|-------------|------|---------------| +| `Auth` | Authentication mechanism to use. | one of `BASIC` (basic HTTP), `AWS_SIGV4` (AWS auth), `NONE` | `NONE` +| `User` / `UID` | [`Auth=BASIC`] Username for the connection. | string | | +| `Password` / `PWD` | [`Auth=BASIC`] Password for the connection. | string | | +| `Region` | [`Auth=AWS_SIGV4`] Region used for signing requests | AWS region (eg. `us-west-1`) | | + +#### Advanced Options + +| Option | Description | Type | Default | +|--------|-------------|------|---------------| +| `UseSSL` | Whether to establish the connection over SSL/TLS | boolean (`0` or `1`) | false (`0`) | +| `HostnameVerification` | Indicate whether certificate hostname verification should be performed for an SSL/TLS connection. | boolean (`0` or `1`) | true (`1`) | +| `ResponseTimeout` | The maximum time to wait for responses from the `Host`, in seconds. | integer | `10` | + +#### Logging Options + +| Option | Description | Type | Default | +|--------|-------------|------|---------------| +| `LogLevel` | Severity level for driver logs. | one of `ES_OFF`, `ES_FATAL`, `ES_ERROR`, `ES_INFO`, `ES_DEBUG`, `ES_TRACE`, `ES_ALL` | `ES_WARNING` | +| `LogOutput` | Location for storing driver logs. | string | WIN: `C:\`, MAC: `/tmp` | ## Download and Installation