对sso使用django-此包为第三方包提供了一个桥。

django-sessionprofile的Python项目详细描述


https://travis-ci.org/modelbrouwers/django-sessionprofile.svg?branch=masterhttps://coveralls.io/repos/modelbrouwers/django-sessionprofile/badge.svghttps://readthedocs.org/projects/django-sessionprofile/badge/?version=latesthttps://img.shields.io/pypi/v/django-sessionprofile.svg

django sessionprofile是任何可定制的软件之间的桥梁。 验证后端和django。如果要使用django进行单点登录,则 包装起重。

安装-django

$ pip install django-sessionprofile

将sessionprofile添加到已安装的应用程序,并运行python manage.py migrate。

将sessionprofile中间件(sessionprofile.middleware.sessionprofilemiddleware)添加到中间件设置中-确保它位于sessionmiddleware之前。

此外,会话cookie必须可用于第三方应用程序, 如果它位于同一个域上,那么这应该不是问题。

后端

目前有一个后端可用:'sessionprofile.backends.databasebackend'。 在未来,可能会有其他的后端,比如sessionprofile.backends.cacheddatabasebackend'。

安装-第三方应用程序

这取决于您决定使用哪个后端,该示例假设 后端。

在第三方应用程序中进行身份验证时,应阅读会话 cookie(会话cookie名称),并查询sessionprofile表:

SELECT users_user.username, users_user.email FROM users_user, sessionprofile_sessionprofile sp WHERE sp.session_id = ‘<sessionid_from_cookie>’ AND users_user.id = sp.user_id

剩下的认证流程由您来实现。文档中提供了phpbb 3.0.x的示例。

谢谢

非常感谢Resolver Systems有限公司(现在是Pythonanywhere的一部分)谁 制作了这个库的初始版本,专门针对phpbb3。

待办事项

django 1.9将提供可定制的db会话后端,我们可以提供 这样的后端将减少对中间件的需求。

Github PR

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java需要设置框架。可设置大小(false)以重新绘制()   java我对PDF文件感到困惑   为什么是太阳。jvm。热点。调试器。DebuggerException:无法打开二进制文件`?   设置结果为textview时出现java空指针异常   我应该使用什么同步原语在Java中实现事件驱动程序框架?   java为什么WindowClosing处理程序在退出程序之前不执行后台任务?   如何将“20170712T18:43:04.000Z”转换为安卓或java中的相对时间?   Java,获取按键的时间长度,currentTimeMillies()始终为24   maven构建的java可执行Jar找不到logback。xml   java在其外部的函数中使用for循环中的值   java如何以表格格式将不同长度的数据对齐   java Play 2.5 WebSocket连接构建   maven而非eclipse的java强制转换问题   java如何在JFreeChart中使X轴上的值水平?   构建Java Windows应用程序以访问在线MySQL数据库需要什么   java添加构造函数会出错吗?这没有道理,请帮忙,编程问题   java在一个jframe中的两个JPanel中使用两个绘制方法   java数学或逻辑问题   java如何复制Androids库存摄像头方向更改