各位大佬们,下午好!我现在遇到一个问题如下:利用CASSSO搭建在tomcat服务器上运行后,利用phpCAS作为客户验证登录端本地测试情况如下:三个PHPCAS端,只要有一个登录后,其它两个无需登录,这个在localhost上有效,不同端口也有效当我把hosts文件里的127.0.0.1映射不同的域名时,遭殃了,拿不到cookie,我知道cookie要在同域中才能共享现在就是说,怎样不仅于cookie来实现不同域名的客户端可以实现SSO,就像淘宝跟天猫一样。急啊,求给思路,或者资源。
2 回答
慕森王
TA贡献1777条经验 获得超3个赞
回调,让服务端做.登录成功后,登录服务会在其域名(sso登录服务的域名)下种入相关cookie.登录B时,B的后端先检测是否已登录(域名B下是否有cookie),如果未登录则带着回调url(B的登录成功回调地址)跳转到登录页(sso登录服务的页面),登录服务检测到用户已登录(sso登录服务的域名下已有cookie)则把页面重定向到(带有登录等信息)B的回调url,B的回调接口或者页面在自己的域名下种下B自己的cookie.完事.安全性:登录服务只接受指定的回调url
qq_笑_17
TA贡献1818条经验 获得超7个赞
第一种,同一个域,但是不同子域,把cas的token设置到根域下,就可以了第二种,所有网站都是你自己的,那你可以写一个js挂到所有域下面,用html5的postMessage做第三种,就类似Oauth做了,就是把token带到url上,进行传递,更通用
添加回答
举报
0/150
提交
取消