SSO单点登录和单点退出(跨顶级域名)

在网上搜索了很多资料,都没有真正解决问题,还得自己想办法。


单点登录:

当在SSO SERVER端(例:sso.a.com)登录成功后,再次访问第二域名(例:www.b.com)时,通过调取sso server端的跨域登录,然后跳转到b网站写入cookie(这里使用ajax json技术)

单点退出:

想了几种方法,

首先按照单点登录的方法,通过jsonp使用时,不行,总是删除不了b网站的cookie

然后直接调用b网站去执行删除cookie也不行

最后,写了个过滤器,设置一个退出状态

1、所有退出都指向sso网站,退出时,写入退出状态

2、访问B网站时,在过滤器中,通过httpclient调用sso server中的接口,取得退出状态

3、根据退出状态,判断是否清除B网站下的cookie值,是的话,清除。

4、注意,在登录时,要写退出状态为否。

解决问题,比较粗糙,不过后续不断改进吧。





你可能感兴趣的:(SSO单点登录和单点退出(跨顶级域名))