gpt4 book ai didi

java - 通过 ssl 将 cassandra 与 datastax cassandra JAVA 驱动程序连接

转载 作者:行者123 更新时间:2023-12-04 22:42:41 25 4
gpt4 key购买 nike

我正在使用 datastax cassandra 3.6.0 版并尝试使用 ssl 连接到 cassandra。
我有一个 ca 证书已经存储在目录 "/etc/ssl/certs/cassandra.crt" .
我在 JAVA 中创建了一个 cassandra 集群:

cluster = Cluster.builder().addContactPoints(hostArray).withPort(Integer.parseInt(port)).withCredentials(username, password).build();

我确实看到了 withSSL(SSLOptions)在 build 者中,
如何使用上述证书文件在 java 中创建 SSLOPtions,以便我可以使用它来创建集群?
在 Python 中我有
        ssl_opts = {"ca_certs": "/etc/ssl/certs/cassandra.crt"}
auth_provider = PlainTextAuthProvider( username , password )
cluster = Cluster(
cluster_ips,
auth_provider=auth_provider,
port=20102,
ssl_options=ssl_opts,
load_balancing_policy=DCAwareRoundRobinPolicy()
)
如何对 crt 文件执行相同操作以在 java 中创建集群?

最佳答案

您需要先创建 SSLContext。要创建 SSLContext,您可以在此处引用示例 SSLContext Example .一旦你有 SSLConext 对象,你可以得到 SSLOptions 如下

 JdkSSLOptions sslOptions = JdkSSLOptions.builder().withSSLContext(context).withCipherSuites(theCipherSuites).build();
然后你可以在 withSSL 方法中传递这个 sslOptions 作为
cluster = Cluster.builder().addContactPoints(hostArray).withPort(Integer.parseInt(port)).withCredentials(username, password).withSSL(sslOptions).build();


关于java - 通过 ssl 将 cassandra 与 datastax cassandra JAVA 驱动程序连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64556775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com