qq_38834316 2018-05-31 16:32 采纳率: 60%
浏览 2910
已采纳

【跨域单点登录】不使用Cookie

传统的单点登录如CAS都是通过Cookie实现的。
但是如果Cookie不能使用的情况,如何实现单点登录呢?
zuul通过token参数实现,这样有没有安全性问题?
期待您的idea

  • 写回答

7条回答 默认 最新

  • qq_36025261 2018-06-08 04:12
    关注

    domain为.一级域名的,在所有二级域名上都是可以共享的,你先确定你是否成功创建了cookie以及domain是否是.一级域名的形式(可以通过chrome开发者工具查看)。我简单测试了一下,确实是可以的。具体做法是在a.test.com下写两条cookie数据,分别是:aaa=111;domain=.a.test.com和bbb=222;domain=.test.com,具体Java代码如下:

    // "aaa=111;domain=.a.test.com",在b.com.test域下无法访问
    Cookie cookie1 = new Cookie("aaa", "111");
    cookie1.setDomain("a.test.com"); // 对于tomcat(8),域名前面不能加"."号!!!
    resp.addCookie(cookie1);
    // "bbb=222;domain=.test.com",在b.com.test域下可以访问
    Cookie cookie2 = new Cookie("bbb", "222");
    cookie2.setDomain("test.com");
    resp.addCookie(cookie2);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?