2016-07-27 71 views
0

我正在使用Cassandra 3.7。我正在使用AuthProvider進行身份驗證。我曾嘗試兩種方法:如何使用Java中的身份驗證連接到Cassandra羣集?

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

+0

你在做什麼應該工作。你能否包含你用來從集羣實際創建連接的代碼。 – mikea

+0

@mikea我已將代碼添加到問題中。 – khateeb

回答

1

變化值:

authenticator: PasswordAuthenticator

authorizer: CassandraAuthorizer

相關問題