Я изучаю и настраиваю свой кластер cassandra и пытаюсь использовать python в качестве клиента для взаимодействия с ним. В yaml я установил аутентификатор как PasswordAuthenticator.Как передать имя пользователя и пароль в cassandra в python
Итак, теперь я планирую предоставить свое имя пользователя и пароль для функции подключения, но не найду места для их размещения.
cluster = Cluster(hosts)
session = cluster.connect(keyspace)
В принципе, вы предоставляете только хост и пространство ключей. Тип документации предлагает подключение к анонимному? http://datastax.github.io/python-driver/getting_started.html#connecting-to-cassandra
Если я просто использовать этот пример, я получаю следующее сообщение об ошибке
raise NoHostAvailable("Unable to connect to any servers", errors)
cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'hou722067': AuthenticationFailed('Remote end requires authentication.',)})
ли идентификационная информация поступает через несколько конфигурационных файлов? Это похоже на очень базовую функциональность, и я не могу себе представить, что это не распространяется на драйвер клиента python. Должно быть, я что-то пропустил.
Короче говоря, мой вопрос: как мне войти в cassandra с помощью python?
Заранее благодарим за любой намек!
==================================================================================================================================== === Получил это фигуру.
Я должен указать имя пользователя и пароль в поле auth_provider, которое является функцией, возвращающей словарь, содержащий «имя пользователя» и «пароль» с соответствующими строковыми значениями.
Нечто подобное четкости getCredential (самость, хоста): верительных = { 'имя пользователя': 'MyUser', 'пароль': 'MyPassword'} возврата учетных
кластера = Кластер (узлов, auth_provider = getCredential)
Если вы нашли решение вашей проблемы, то пожалуйста, напишите его и принимайте это как ответ. Это позволит другим пользователям узнать, что эта проблема решена. –
Я новый участник, и система не позволит мне ответить на мой вопрос в течение 10 дней или около того. Вот почему я просто разместил обновление в сообщении. Я отвечу, как только система позволит мне это сделать. – drakihsu