繁体   English   中英

如何使用Java中的身份验证连接到Cassandra集群?

[英]How to connect to a Cassandra cluster with authentication in Java?

我正在使用Cassandra 3.7。 我正在使用AuthProvider进行身份验证。 我尝试了两种方法:

AuthProvider authProvider = new PlainTextAuthProvider("abcd", "xyz");
Cluster cluster = Cluster.builder().addContactPoint(node).withAuthProvider(authProvider).build();
Session session = cluster.connect();

Cluster cluster = Cluster.builder().addContactPoint(node)..withCredentials("abcd", "xyz").build();
Session session = cluster.connect();

我收到以下错误:

Exception in thread "main" com.datastax.driver.core.exceptions.AuthenticationException: Authentication error on host /127.0.0.1:9042: Host /127.0.0.1:9042 requires authentication, but no authenticator found in Cluster configuration
    at com.datastax.driver.core.AuthProvider$1.newAuthenticator(AuthProvider.java:40)

是什么导致错误,我该如何解决?

在cassandra.yaml中更改身份验证者和授权者的值:

验证者:PasswordAuthenticator

授权人:CassandraAuthorizer

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM