python-cgi和python-django之间的单个签名



有一个项目使用Python Django,另一个独立项目使用Python cgi。两者都有自己的用户身份验证。单元将用户管理合并在一起的简单方法是什么?我的意思是,signin已经内置在python-cgi中,我想对python-django使用相同的signin,我如何将经过身份验证的user_id和username从python-cgi传递到python-adjango。目前,我正在为两个应用程序使用mysql数据库

通常在django中,我们将在views.py 中传递经过身份验证的用户,如下所示

user = request.user

但是signin是使用python-cgi构建的,我如何将经过身份验证的用户从python-cgi传递给python-django(views.py(

感谢

我认为您可以使用Django身份验证中间件之一,如RemoteUserMiddleware或PersistentRemoteUserMiddleware。

它们是利用Web服务器提供的身份验证的中间件。

有关用法详细信息,您可以查看使用REMOTE_USER的身份验证。

当Web服务器负责身份验证时,它通常会设置REMOTE_USER用于底层的环境变量应用在Django中,REMOTE_USER请求.META属性。Django可以配置为使用REMOTE_USER值,使用RemoteUserMiddlewarePersistentRemoteUserMiddlewareRemoteUserBackend中的类django.contrib.auth.

您需要进行一次登录,看看这个

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

就我个人而言,我使用ldap数据库来存储用户,每次用户第一次访问我的应用程序时,都会向服务器发送一个查询,在那里我设置了一个rest api,用于验证用户以前是否登录过,是否没有注销。

最新更新