python无法连接到启用了TLS1.2的HiveServer2

2024-03-28 14:02:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我的HiveServer2启用了SSL(仅启用了最低限度的TLS1.2)和LDAP,没有启用kerberos。配置单元服务器2.运输方式=二进制。 直线连接的工作原理如下: beeline -u jdbc:hive2://domain:10000/default\;ssl=true\;sslTrustStore=/home/user/query.jks\;trustStorePassword=blah -n user -p pass -e "SELECT * FROM table LIMIT 3"

正如预期的那样,通过beeline不传递正确的信任库详细信息或错误的ldap凭据意味着连接无法工作。在

我想使用python库连接到HiveServer2(特别是使用TLS1.2的配置单元设置)。在

我看过几个库,比如impyla、pyhive、pyhs2、sqlalchemy,但是没有一个适合我。 我看到了其他人提出的几个问题:

在没有TLS1.2保护的HiveServer2实例的情况下,有许多在线连接示例。在

`>;>>黑斑羚.dbapi导入连接

conn = connect(host='domain', port=10000, use_ssl=True, auth_mechanism='LDAP', user='user', password='pass', ca_cert='/home/user/query.pem') Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/python2.7/site-packages/impala/dbapi.py", line 147, in connect auth_mechanism=auth_mechanism) File "/usr/local/lib/python2.7/site-packages/impala/hiveserver2.py", line 658, in connect transport.open() File "/usr/local/lib/python2.7/site-packages/thrift_sasl/init.py", line 68, in open self._trans.open() File "/usr/local/lib64/python2.7/site-packages/thrift/transport/TSSLSocket.py", line 118, in open message=message) thrift.transport.TTransport.TTransportException: Could not connect to domain:10000: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:726)`


Tags: inpyhttpsgithubcomsslpackagesusr