единый вход между python cgi и python django - PullRequest
0 голосов
/ 06 декабря 2018

Есть один проект, использующий Python Django, другой отдельный проект, использующий Python CGI.У обоих есть свой собственный аутентификатор пользователя.модуль.Какой простой способ объединить управление пользователями вместе?Я имею в виду вход уже встроенный в Python CGI, я хочу использовать тот же вход для Python Django, как я могу передать аутентифицированный user_id и имя пользователя из Python CGI в Python Django. В настоящее время я использую базы данных MySQL для обоих приложений

обычно в django мы передаем аутентифицированного пользователя следующим образом в views.py

user = request.user

Но вход создается с помощью Python CGI, как я могу передать аттестованного пользователя из Python CGI в Python Django (views.py)

Спасибо

Ответы [ 2 ]

0 голосов
/ 16 декабря 2018

Я думаю, что вы можете использовать одно из Django аутентификационного промежуточного программного обеспечения вроде RemoteUserMiddleware или PersistentRemoteUserMiddleware .

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

Вы можете увидеть Аутентификацию с использованием REMOTE_USER для подробностей использования.

Когда веб-сервер заботится об аутентификации, он обычноустанавливает переменную окружения REMOTE_USER для использования в базовом приложении.В Django REMOTE_USER доступен в атрибуте request.META .Django можно настроить на использование значения REMOTE_USER с использованием RemoteUserMiddleware или PersistentRemoteUserMiddleware и RemoteUserBackend классов, найденных в django.contrib.aut ч.

0 голосов
/ 13 декабря 2018

вам нужно сделать единый вход, посмотрите на это

https://github.com/namespace-ee/django-rest-framework-sso

лично я использую базу данных ldap для хранения пользователей, каждый раз, когда пользователь получает доступ к моему приложениюВпервые запрос отправляется на сервер, где у меня настроен API-интерфейс rest, который проверяет, вошел ли пользователь ранее и не вышел ли он из системы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...