ArangoDB с Python - 401 не авторизован для выполнения этого запроса - PullRequest
0 голосов
/ 25 октября 2018

В настоящее время я пытаюсь создать и заполнить коллекцию автоматически через Python.Как уже упоминалось, БД, которую я выбрал, - Аранго .У меня проблема в том, что я получаю сообщение об ошибке:

[HTTP 401] [ERR 11] не авторизован для выполнения этого запроса

Я отключенЯ попытался переустановить Arango, чтобы проверить, не испортил ли я что-то при настройке профиля администратора, но все вроде бы нормально.Единственный подобный вопрос, который я нашел до сих пор, это этот , но он все еще как-то не имеет отношения к моей проблеме.

Что касается сборщика, я его так и настроил:

config={
   "database": 'exampleDB',
   "host":'localhost',
   "protocol":'http',
   "port":'8529',
   "username":'someone',
   "password":'xxxx'
}

Есть ли что-то еще, чего мне не хватает для настройки конфигурации прав доступа?Или проблема может быть где-то еще.

Я не публикую свой полный код, потому что это программное обеспечение, принадлежащее компании.

1 Ответ

0 голосов
/ 25 октября 2018

В случае pyArango вам необходимо предоставить учетные данные при создании экземпляра класса подключения:

from pyArango.connection import *
conn = Connection(username=config['username'], password=config['password'])

Документация: https://bioinfo.iric.ca/~daoudat/pyArango/connection.html

В случае python-arango вам сначала понадобится клиентский объект, затем вызовите метод db() и укажите имя базы данных и учетные данные:

from arango import ArangoClient
client = ArangoClient(protocol='http', host='localhost', port=8529)
db = client.db('_system', username=config['username'], password=config['password'])

Документация: https://python -driver-for-arangodb.readthedocs.io / en / master / Overview.html

Исходный репозиторий arango-python заброшен пять лет назад, он не поддерживает серверные версии 2.x или 3.x, и я не смог найти ничего для аутентификации (поиск по GitHub не дал результатов для "auth", "password", "user", "cred«).Сайт docs еще более устаревший.

Проект ArangoPy также выглядит довольно мертвым, он поддерживает ArangoDB 2.2 - 2.6 в соответствии с readme.Там нет примера для аутентификации. Клиентский конструктор принимает параметр с именем auth, но его использование остается неясным (<username>:<password>?).

...