2016-07-27 3 views
0

Я использую Cassandra 3.7. Для аутентификации я использую AuthProvider. Я попробовал два метода:Как подключиться к кластеру Cassandra с аутентификацией в Java?

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) 

Что вызывает ошибку, и как это исправить?

+0

Что вы делаете, должны работать. Можете ли вы включить код, который вы используете, чтобы фактически создать соединение с кластером. – mikea

+0

@mikea Я добавил код к вопросу. – khateeb

ответ

1

изменение значения идентифицирующей и авторизатор в cassandra.yaml:

authenticator: PasswordAuthenticator

authorizer: CassandraAuthorizer