Giter Club home page Giter Club logo

Comments (37)

davidcui1225 avatar davidcui1225 commented on July 19, 2024 4

We have a release for the SQL Drivers including the ODBC client that is launching this week- that is expected to resolve this bug

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024 3

UPDATE: I spun up a new cluster for testing purposes, and disabled SSL on the public API (port 9200) -- the ODBC driver connected just fine -- so it is an SSL issue. I turn on SSL and it behaves as described before.

I have loaded (and verified) the CA for the server certificate into the Windows trusted authorities keystore:

  • I can pull up the cluster in a browser with no warnings about insecure certificates
  • I can use 'curl' in a WSL window on the same system with no warnings

So -- it appears that the ODBC driver SSL routines are not respecting/using the system CA store? Am I missing something?

from sql-odbc.

joshuali925 avatar joshuali925 commented on July 19, 2024 1

Thanks @forestmvey that's helpful. So basically "UseSSL" is ignored right now, as a workaround user just have to use consistent protocol in host and node set up

I agree with option 2 as well, since UseSSL seems redundant if user already put https

from sql-odbc.

dlang14 avatar dlang14 commented on July 19, 2024 1

Im having issues while using Amazon Opensearch Service 1.3 and opensearch-sql-odbc-driver 1.5. Ive tried everything from using Domain endpoint (VPC) name, custom url, using ports 443/9200/none, using http/https/none, enabling/disabling SSL, host verification on/off and no matter what I get:
Connection error: [Opensearch][SQL ODBC Driver][SQL Plugin] Connection error: Failed to establish connection to DB
I've proven connection to the opensearch cluster by using the browser on the EC2 with no issues. Any help/input would be much appreciated.

from sql-odbc.

andreaskulicke avatar andreaskulicke commented on July 19, 2024 1

The solution described above worked for me: using "https://" and UseSSL flag. But only for V1.4.0.0. It didn't work for me with V1.5.0.0.

from sql-odbc.

chloe-zh avatar chloe-zh commented on July 19, 2024

We currently are working on the release of ODBC and JDBC drivers for OpenSearch. The release should be working fine with your opensearch cluster. Another workaround is to get the latest installer directly from the source code / GitHub actions cicd workflows, which is not a stable and officially released one though.

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

@chloe-zh I'm glad it's being worked, but I pulled the installer that was created at 3pm EST yesterday (commit 65f449b) in the "OpenSearch ODBC Driver" workflow -- same result. The config dialog had a version 1.2.0.0. The logs on the Windows side show nothing different.

from sql-odbc.

chloe-zh avatar chloe-zh commented on July 19, 2024

Could you check the error log from opensearch side, that would be helpful! Thanks!

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

I turned logging up to TRACE

rootLogger.level = trace

in log42j.properties ... and got these two messages in the cluster.log:

[2021-11-11T17:25:51,995][TRACE][o.o.h.AbstractHttpServerTransport] [poggin] Http channel accepted: Netty4HttpChannel{localAddress=/10.0.0.66:9200, remoteAddress=/10.0.0.7:62739}

[2021-11-11T17:25:52,035][TRACE][o.o.h.AbstractHttpServerTransport] [poggin] Http channel accepted: Netty4HttpChannel{localAddress=/10.0.0.66:9200, remoteAddress=/10.0.0.7:62740}

I can find no other trace of the attempt ... but again, I verified that there was data exchanged between the two systems using tcpdump.

Are there any other logging settings I should adjust, or additional places to look?

from sql-odbc.

adcalsie2 avatar adcalsie2 commented on July 19, 2024

I'm having the same problems in an open distro cluster. Waiting for solution

from sql-odbc.

diego2glez avatar diego2glez commented on July 19, 2024

@chloe-zh

I'm been experiencing this SSL connection problem since to many OpenDistro versions before.
Seems that this never worked?

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

@chloe-zh - Is there any more information I can provide that will help narrow this down?

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

@davidcui1225 - if you want me to test, let me know when there is something I can download -- I'd love to get this issue fixed!

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

@davidcui1225 - How far down the queue is this to work on? I just downloaded the latest artifact and get the same errors.

from sql-odbc.

joshuali925 avatar joshuali925 commented on July 19, 2024

The new ODBC driver links are available on https://opensearch.org/artifacts, you can download it here:

The SSL issue is separate and possibly related to #19

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

Unfortunately, I'm not seeing any action on resolving either of these issues (this one or #19) -- is there anything I can do to assist?

from sql-odbc.

anonyiv avatar anonyiv commented on July 19, 2024

It is a bug related to ssl, you can fix it with the following configuration in opensearch.yml:
plugins.security.ssl.http.clientauth_mode: NONE

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

Not totally sure what this does, but it seems that it would either disable SSL for the client connection or disable authentication (or both) -- neither of which is acceptable in my environment. Is this truly the only solution?

from sql-odbc.

anirudha avatar anirudha commented on July 19, 2024

we are prioritizing this for an immediate fix and release

from sql-odbc.

penghuo avatar penghuo commented on July 19, 2024

Fix in opensearch-project/sql#449

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

@penghuo - I don't see anything in opensearch-project/sql#449 that would have impacted this issue. First, I'm not even to the point where I can use Power BI -- and the issue isn't whether I can validate with a certificate, it's whether SSL is even used for the connection.

Am I missing something?

from sql-odbc.

Yury-Fridlyand avatar Yury-Fridlyand commented on July 19, 2024

opensearch-project/sql#449 has a fix for the Power BI connector.
The fix for the driver would be published soon.

from sql-odbc.

dredwilliams avatar dredwilliams commented on July 19, 2024

What is the expected release date for a new ODBC driver? I still see the 1.1.0.1 version available on the downloads page.

from sql-odbc.

joshuali925 avatar joshuali925 commented on July 19, 2024

linking release issue: opensearch-project/opensearch-build#1872
@mengweieric is working on this release

from sql-odbc.

joshuali925 avatar joshuali925 commented on July 19, 2024

the new drivers (1.4.0.0) are released under bottom of https://opensearch.org/artifacts, let us know if they still have issues

from sql-odbc.

dharminfadia avatar dharminfadia commented on July 19, 2024

the new drivers (1.4.0.0) are released under bottom of https://opensearch.org/artifacts, let us know if they still have issues

Hello @joshuali925
image
latest Driver is install still having same issue

image

I am using Opensearch version is 1.2.4 but still facing issue .

from sql-odbc.

forestmvey avatar forestmvey commented on July 19, 2024

I tested odbc driver versions 1.3.0.0 and 1.4.0.0 and both still ignore the UseSSL flag. When setting
opendistro_security.ssl.http.enabled false on my active node I was able to make a valid connection with both versions when the UseSSL flag has been set.

odbc_test_ssl_1 4 0 0

from sql-odbc.

anonyiv avatar anonyiv commented on July 19, 2024

@forestmvey
@dharminfadia

works correctly
the endpoint must be https enable the advanced option "Enable SSL"

image

image

from sql-odbc.

acarbonetto avatar acarbonetto commented on July 19, 2024

@atarhel did you have the config opendistro_security.ssl.http.enabled false set on your node? Is there any other custom configuration on your OS service?
I'm curious to know why it works for you

from sql-odbc.

anonyiv avatar anonyiv commented on July 19, 2024

@atarhel did you have the config opendistro_security.ssl.http.enabled false set on your node? Is there any other custom configuration on your OS service?

I'm curious to know why it works for you

No, I have also tested it with the AWS opensearch service in the cloud, it works without problems.
can you put more information to help you?
check your opensearch log, the odbc driver allows you to enable debug.

from sql-odbc.

forestmvey avatar forestmvey commented on July 19, 2024

Further testing on the ODBC driver version 1.4.0.0 has highlighted some UI issues around the UseSSL flag. When using the prefix https:// a user can connect to a SSL enabled node regardless of the UseSSL flag. If the user does not specify a protocol then the connection will always default to not using SSL. Some sort of error message or UI change should notify a user when the UseSSL flag status does not match a specified host connection protocol. I have outlined the functionality in these truth tables:

odbc_driver_ssl_truth_table drawio

Driver connecting to SSL enabled node with UseSSL flag set:

odbc_ssl_enabled_config
odbc_ssl_enabled_connect

Driver connecting to SSL enabled node with UseSSL flag not set:

odbc_ssl_disabled_config
odbc_ssl_disabled_connect

from sql-odbc.

acarbonetto avatar acarbonetto commented on July 19, 2024

Thanks @forestmvey @atarhel seems like a UI issue, not a config or setup issue.
Sounds like we should update the checkbox somehow. I'd propose one of a couple of options:

  1. Remove the checkbox completely and expect the protocol to be included in the URL (or default to http://)
  2. Disable the checkbox when a protocol is specified in the URL
  3. Keep the checkbox, but report an error when the checkbox does not correspond to the URL protocol (error when Enable SSL & http:// is included, or when Not Enable SSL & https:// is included).

from sql-odbc.

MaxKsyunz avatar MaxKsyunz commented on July 19, 2024

My preferences is option 2 -- it's the most user-friendly.

While we are there, HostVerification should be disabled unless HTTPS is used.

from sql-odbc.

ChristineChetty11 avatar ChristineChetty11 commented on July 19, 2024

Having same issue with current setup:
AWS Managed Opensearch, V1.2

What I want to point out is that I could not use the sql plugin from my lambda function since the path was actually '_opendistro/_sql' not '_plugins/_sql' as it should be.. Maybe this is related somehow?

from sql-odbc.

acarbonetto avatar acarbonetto commented on July 19, 2024

It should be checking _opendistro/_sql when using opendistro. It falls back to the alternate path when the first one fails.

from sql-odbc.

forestmvey avatar forestmvey commented on July 19, 2024

@joshuali925 I have created a demo for the fix on this issue with PR-653

odbc_ssl_compliance_fix_demo.mp4

from sql-odbc.

lifayt avatar lifayt commented on July 19, 2024

I'm having this problem with AWS Managed OpenSearch, both on OpenDistro clusters as well as OpenSearch clusters (7.10 and 1.3 respectively).

Connection error: [OpenSearch][SQL ODBC Driver][SQL Plugin] Connection error: SQL plugin is not available, please install the SQL plugin to use this driver.

The above error shows up regardless of whether or not I configure the connection to use ssl or not. I can access the endpoint via HTTP just fine, but the ODBC connection always fails. Is there a workaround or alternate odbc driver I can use?

from sql-odbc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.