Как использовать 2 разных аутентификации на сайте с поддержкой Django? - PullRequest
1 голос
/ 11 октября 2010

В настоящее время я управляю веб-сайтом, написанным на django, который имеет 2 стандартные области - интерфейс и бэк-офис (который построен с использованием интерфейса администратора django).

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

До сих пор они оба использовали стандартную django.contrib.auth аутентификацию.

Я знаю, что мог бы заставить клиента просто использовать разных пользователей (и, возможно, запретить пользователям "backoffice" входить в интерфейсную часть), но - они хотят больше изменений, таких как: бездействие сеанса на стороне администратора сокращено до несколько минут (пока на фронтенде - чтобы он был как всегда).

Можно ли определить части сайта django для использования разной аутентификации? С различными печеньями и т. Д.?

Или я должен использовать другой домен для бэк-офиса, например, иметь внешний интерфейс на site.com и admin на admin.site.com, а затем запускать оба приложения как два различных приложения, используя различные настройки для файлов cookie и т. Д.?

1 Ответ

2 голосов
/ 11 октября 2010

Django предоставляет внутренний интерфейс аутентификации: http://docs.djangoproject.com/en/dev/topics/auth/#authentication-backends

Здесь вы можете указать, как вы хотите, чтобы пользователь проходил аутентификацию.Вы можете использовать локальные методы login () для аутентификации пользователей backoffice, и все, что вам нужно для внешнего интерфейса, вы можете реализовать по мере необходимости.В любом случае, это место, где вы определяете эту функциональность.

...