Существует протокол для обработки этой службы, называемой Центральной службой аутентификации (http://www.jasig.org/cas), или CAS. CAS использует протокол OAuth2, чтобы обеспечить безопасный способ управления процедурой единого знака - у пользователей есть единый логин, который используется через токены и прокси-билеты для аутентификации пользователя в различных приложениях с использованием одного сервера аутентификации CAS. Это процедура, которую я работаю для использования для аутентификации пользователей в нескольких приложениях (мы используем Java с Spring Security и Spring CAS), однако этим летом мы разработали доказательство концепции с Django и внутренним API-интерфейсом компании, в котором мы внедрили процедуру CAS с приложением Django - пользователи, прошедшие проверку подлинности Django, через сервер CAS, который мы запускаем, и вернули их как действительные, прошедшие аутентификацию пользователей Django. Для этого мы использовали промежуточное программное обеспечение django-cas и пользовательскую бэкэнд-библиотеку, которую можно найти здесь: https://bitbucket.org/cpcc/django-cas/overview.
CAS - это, безусловно, путь, если вы хотите обработать аутентификацию пользователя одним знаком в нескольких приложениях - это была причина, по которой CAS была создана в первую очередь. Кривая обучения с CAS может быть немного крутой, но django-cas делает достаточно хорошую работу, что упрощает настройку CAS в проекте Django.
IMHO вы должны взглянуть на шаблоны единого входа. –