中了beakhyun的毒 2024-07-26 19:41 采纳率: 25%
浏览 18

谷粒商城的单点登录问题

最近看了谷粒商城的单点登录方案,然后在网上找常见的方案,发现没有和它相同流程的。

谷粒商城是sso验证通过之后带着令牌来到app服务器,然后app服务器根据令牌找到redis中的用户信息,将它放到session当中。
但是我看网上很多描述的都是“将Token存在cookie中,然后再次访问的时候验证cookie的有效性”,根本没提到session,
所以他到底属于那种方案呢,以及所有的用户信息都放到服务器session中,就相当于一个用户好几份session,这种方案真的合理吗?
有没有和我相同疑惑的,真的我哭死。

  • 写回答

2条回答 默认 最新

  • 专家-司宇[在线] 2024-07-26 19:41
    关注

    引自免费微信小程序:皆我百晓生

    我理解你的困惑,关于谷粒商城的单点登录机制确实涉及一些复杂的概念和流程。我会尝试用通俗易懂的方式为你解答。

    首先,谷粒商城的单点登录流程大致是这样的:用户在身份验证成功后,服务器会发放一个令牌(Token)给客户端(通常是浏览器)。客户端带着这个令牌访问应用服务器时,应用服务器会根据令牌在Redis中查找对应的用户信息,然后将这些信息放入session中。这样,用户在应用内的后续操作就可以通过session来进行身份验证,而不需要每次都进行身份验证。

    关于你的问题,“他到底属于那种方案呢?”——谷粒商城的这种单点登录机制其实融合了“基于Token的身份验证”和“基于session的身份验证”两种方案的元素。它采用Token作为身份验证的凭证,并且在服务端使用session来存储用户信息,以实现用户在应用内的无缝体验。

    关于将用户信息存入session的问题,“所有的用户信息都放到服务器session中,就相当于一个用户好几份session”,确实会有这种可能。在大型系统中,如果为每个用户都在服务端维护一个唯一的session,可能会带来一些问题。例如,随着用户数量的增长,服务器的内存压力会增大;另外,如果用户跨越多个设备使用同一账号时,每个设备都会有一个独立的session,这增加了管理的复杂性。但是,只要设计得当,这种方案仍然可以高效运行。关键在于如何管理和维护这些session,确保系统的安全性和性能。

    对于你的困惑,有许多开发者也有类似的疑虑。在互联网上可以找到许多关于单点登录机制的讨论和文章,包括关于如何在应用中使用Token和session的最佳实践等。我建议你可以进一步阅读这些资料,以获得更深入的理解。此外,也可以参考一些开源的单点登录系统的实现,如OAuth 2.0等,它们为我们提供了实现单点登录的具体方案和实践经验。总的来说,“最佳实践”会因应用的具体需求和规模而异,所以你需要根据具体情况来选择合适的方案。希望这些解答能帮到你!如果你还有其他问题或需要进一步的解释,请随时向我提问。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月26日

悬赏问题

  • ¥15 数据量少可以用MK趋势分析吗
  • ¥15 使用VH6501干扰RTR位,CANoe上显示的错误帧不足32个就进入bus off快慢恢复,为什么?
  • ¥15 大智慧怎么编写一个选股程序
  • ¥100 python 调用 cgps 命令获取 实时位置信息
  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证
  • ¥20 ensp怎么配置让PC1和PC2通讯上
  • ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
  • ¥15 dnat基础问题,本机发出,别人返回的包,不能命中