【发布时间】:2018-05-18 15:09:42
【问题描述】:
在解释我面临的问题之前,我会告诉你我本地机器上的验证点。
- 我拥有所有与 Cassandra 相关的配置,并且我拥有我的机器所需的权限(访问)。
-
我可以通过
cqlsh连接禁用 SSL 的 Cassandra 节点或禁用 TLS 的节点>.- 例如,我可以使用以下命令连接到以下 C* 节点
cqlsh -u xxxxx -p xxxxxx 123.abc.com- 但同时我无法使用选项 SSL 连接到以下节点
cqlsh --ssl -u xxxxx -p xxxxxx 123.xyz.com
-
以下是我的 cqlshrc 文件内容:
[Authentication] Usename = xxxx password = xxxx [connection] hostname = 123.xyz.com port = 9042 factory = cqlshlib.ssl.ssl_transport_factory [ssl] certfile=~/certfiles/xyz.pem validate = false 即使我尝试将 certFile 路径设置为环境变量。
我收到以下异常:
启用验证; SSL 传输工厂需要指定有效的证书文件。请在 /XXXX/XXXXX/.cassandra/cqlshrc(或使用 [certfiles] 部分)中将 [ssl] 部分中的证书文件路径作为“certfile”选项提供,或设置 SSL_CERTFILE 环境变量。
【问题讨论】:
-
您是否尝试将
~扩展为实际的主路径?我怀疑 cqlsh 可能不会执行这个扩展 -
是的,试过了。它不工作。