Приложение для аутентификации для Django - программирование
Подтвердить что ты не робот

Приложение для аутентификации для Django

Какое приложение для Django лучше всего подходит для аутентификации:

  • имеет настраиваемые обязательные поля, например, позволяет использовать электронную почту как имя пользователя
  • интегрируется с другими API аутентификации, такими как Facebook, Twitter, Google
  • поток восстановления пароля настраивается, отправляет временный пароль и ссылку восстановления
  • предпочтительно имеет систему приглашений, поэтому процесс регистрации можно контролировать.

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

4b9b3361

Ответ 1

Существует не один пакет django, который будет охватывать все, вместо этого есть множество отличных проектов, которые отвечают каждому из требований, которые вы упомянули:

  • общий auth: django-auth - это часть дистрибутива django, но нуждается в защите
  • социальная аутентификация: django-social-auth - объединяет социальную аутентификацию с потоком django-auth по умолчанию
  • регистрация и пароли: django-registration - добавляет поток регистрации, включая подтверждение и подтверждение по электронной почте и т.д.
  • система приглашений: django-invitation - позволяет ограничивать регистрацию приглашениями
  • профили: django-profiles - позволяет расширить учетную запись пользователя с помощью профиля

Вы также можете посмотреть django-userena, который является новым решением для управления пользователями для вашего приложения django. Я не смотрел, как это работает или насколько он всеобъемлющий, но выглядит многообещающим.

Наконец, посмотрите на пакеты django для других приложений для проверки подлинности:

http://djangopackages.com/grids/g/authentication/

EDIT:

Этот пост немного устарел

  • django-social-auth стал python-social-auth
  • django-allauth: существует еще одно хорошее все-в-одном приложение auth, называемое django-allauth, Я не использовал его широко, но я считаю, что он заботится о auth, social-auth, регистрации и профилях в одном приложении.
  • Конфигурируемые пользовательские модели. Django 1.5 представил конфигурационные модели пользователей в модуле auth, чтобы теперь вы могли редактировать поля, которые вы хотите использовать для своего пользователя (только по электронной почте, без имени пользователя и т.д.). Это также полезно, если вы хотите добавить информацию, подобную профилю, пользователю без необходимости присоединяться к другой таблице (например, с помощью django-profiles или отношения OneToOne с настраиваемой моделью профиля)

Ответ 2

Вот хорошее и официальное сравнение только для пакетов проверки подлинности Facebook

Аутентификация Facebook

Ответ 3

Перейдите к django allauth. Он охватывает все потоки аутентификации, пользовательскую модель пользователя. и более 50+ поставщиков социальной аутентификации. Мы используем его с давних пор, и за это время он значительно изменился.

Ответ 4

Сначала вам нужно установить social-auth-app-django:

pip install social-auth-app-django

Затем добавьте его в свой INSTALLED_APPS (в настройках), тогда вам нужно создать ключи API, используя следующие шаги для сетей, которые вы хотите включить:

  • Google
    • Создать проект на Google Cloud Platform
  • Facebook
    • Войдите в разработчики Facebook и создайте ключи API.
  • Twitter

После создания проекта вы получите идентификатор приложения и приложение Secret (не разделяйте его ни с кем), затем добавьте эти ID и секретные настройки и предоставите действительный URL-адрес redirec для получения дополнительной информации