`
xiaolin0199
  • 浏览: 565455 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

django多网站用户统一认证方案:django-simple-sso

 
阅读更多

简述

 

代码与文档:https://github.com/ojii/django-simple-sso

 

原理:

写道
项目分服务器端和客户端,客户端原本是没有用户信息的,他的所有用户登录操作都会去服务器端验证,
当验证通过,服务器端会向客户端发送用户信息,客户端则保存用户信息,用该用户进行登录

 

简易流程图:



 

 

django-simple-sso的安装

写道
下载地址:https://github.com/ojii/django-simple-sso/tarball/master
解压后,直接运行:sudo python setup.py install

 

 

创建两个简单的django网站

写道
服务器网站地址:http://127.0.0.1:8000/
客户网站地址:http://192.168.0.31:8000/

 

服务器网站的设置

写道
settings.py中INSTALLED_APPS加入simple_sso.sso_server

 

python manage.py syncdb 创建数据库

 

urls.py中加入

test_server = SimpleSSOServer()

urlpatterns = patterns('',
    url('^server/', include(test_server.get_urls())),
)
写道
创建一个Client对象,主要用户客户网站身份验证
创建之后数据库sso_server_client应该用一条记录
其中root_url中应该与你的客户网站验证的url对应,如我的是:http://192.168.0.31:8000/client/



 

 

服务器端设置

写道
settings.py中加入
SIMPLE_SSO_SECRET 上面服务器创建client对象保存的secret
SIMPLE_SSO_KEY 上面服务器创建client对象保存的key
SIMPLE_SSO_SERVER 服务器网站url,如我的是:http://127.0.0.1:8000/server/

 

urls.py中加入

    url('^client/', include('simple_sso.sso_client.urls')),

 

 

客户网站



 

 

客户网站点击登录后,跳转到服务器网站



 

 

服务器网站验证通过后,跳转回客户网站



 

 

  • 大小: 45.7 KB
  • 大小: 15.5 KB
  • 大小: 62.5 KB
  • 大小: 70.6 KB
  • 大小: 68.5 KB
分享到:
评论
1 楼 u012339746 2017-01-05  
博主能给下demo么,求联系方式,急用

相关推荐

Global site tag (gtag.js) - Google Analytics