2017-01-04 4 views
0

Я пытаюсь создать очень простую систему входа в систему. Для чего я использую neo4j в качестве базы данных.Как использовать neo4j с Web2py?

Согласно documentation, я не могу найти способ подключения neo4j к DAL.

Должен ли я вручную подключиться к neo4j, а затем начать сеанс или есть способ для меня, чтобы использовать DAL (что позволяет мне легко заботиться о вход в систему)?

ответ

1

Чтобы использовать конкретную базу данных с web2py DAL, для нее должен быть адаптер, а для Neo4j нет адаптера. Встроенная система аутентификации web2py зависит от DAL, поэтому для ее использования вы должны хранить как минимум данные, связанные с Auth, в одной из баз данных, поддерживаемых DAL. Ваши варианты:

  1. Храните все в Neo4j и, следовательно, не используйте встроенную систему Auth.
  2. Используйте альтернативную базу данных для данных Auth (вы все равно можете использовать Neo4j для всего остального), что позволяет использовать систему Auth для Web2py.
  3. Напишите свой собственный адаптер DAL для Neo4j, как описано here.
+0

Большое вам спасибо за информацию, Энтони! В настоящее время я делаю это: Вариант 2. Я сохраняю основные данные о neo4j и только данные Auth в MySQL. Я не * копирую * базу данных, просто сохраняя имя пользователя и пароль (хэширование bcrypt) в MySQL - для входа в систему. Это звучит хорошо? Я также рассмотрю возможность написания собственного адаптера DAL! – Arjun

+1

Да, это кажется разумным. – Anthony

+0

Мне любопытно еще одно - как упоминалось выше, мои пароли хранятся как (bcrypt hash). Поэтому, когда я ввожу пароль с открытым текстом и нажимаю «Войти», я хотел бы вычислить его хэш-проверку с сохраненным хэшем. Вопрос: Как написать свой собственный метод * login() для этого? Я прочитал, что мне нужно работать с методом auth.login_bare(), но как бы определить его? Благодаря! – Arjun

 Смежные вопросы

  • Нет связанных вопросов^_^