Heim  >  Artikel  >  Backend-Entwicklung  >  请教PHP的SSO(单点登录)解决办法?

请教PHP的SSO(单点登录)解决办法?

WBOY
WBOYOriginal
2016-06-23 14:03:54892Durchsuche

单点登录,比如www.aaa.com,www.bbb.com两个网站,要实现aaa登录后,bbb网站也实现登录
这两天网上查看了挺多资料
基本都说使用用户验证中心,设置ticket,我实施了下,通过P3P跨站传COOKIE,但是怎么验证这个cookie的合法性呢?


回复讨论(解决方案)

在 www.aaa.com 登陆时通过验证中心设置一 token 到 cookie 同时验证中心保存此 token
进入 www.bbb.com 时携带 token 访问验证中心,与保存的 token 对比

版主好!
1.那验证中心放在哪里?我现在是设置在第三个域名站下的
2.验证中心存token?放在session中或数据库?
3.进入bbb时携带token是什么意思?bbb中的cookie已设置token?

验证中心放在哪都可以
验证中心需存放 token ,这和验证码检验是一样的
token 存放于数据库,与对应用户关联

当通过P3P跨站传COOKIE时。token 已在 bbb 的 cookie 中

基本懂了,但是cookie的加密是个问题

不存在cookie加密问题,token 本身就是个加密串

token加密设置到cookie里,那token怎么个加密啊?这个加密是不可逆的?只是和验证中心的进行比对?

iframe 跨域通信可以试试,似乎现在都是这么解决的!

http://www.alloyteam.com/2012/08/lightweight-solution-for-an-iframe-cross-domain-communication/



哈哈,为了分数..

iframe 跨域通信可以试试,似乎现在都是这么解决的!

http://www.alloyteam.com/2012/08/lightweight-solution-for-an-iframe-cross-domain-communication/
iframe也看到过之前这么做,但我现在的方案是用P3P

主要一些业务流程上还想不明白

token加密设置到cookie里,那token怎么个加密啊?这个加密是不可逆的?只是和验证中心的进行比对?

你自定义一个私钥 通过私钥来创建token

版主啊!~~~

结贴了。。。。。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn