gpt4 book ai didi

session - GWT:将 session ID 存储在 cookie 中,然后呢?

转载 作者:行者123 更新时间:2023-12-04 11:31:12 25 4
gpt4 key购买 nike

我目前正在使用 GWT 制作一个网站,托管在 AppEngine 上。我正在使用我自己的登录名来制作它(我知道 Google 提供了一些带有 GWT 的东西,但我需要我自己的登录系统),而且我已经尝试找出 session 已有很长一段时间了。我找到了一些教程,我正在阅读的网站之一是 http://code.google.com/p/google-web-toolkit-incubator/wiki/LoginSecurityFAQ

那里有一个关于“如何记住登录”的部分。我知道如何通过 RPC 调用获取 session ID 并将其存储在客户端的 cookie 中。我不明白的是,最终在一天左右之后,用户回来了,我应该从 cookie 中获取 session ID 并将其发送回服务器。为了安全地评估 session ID 是否仍然合法,并提取有关用户的所有必要信息,我应该在服务器上做什么?

附加问题:
1. 什么会使 session ID 发生变化?
2. 如果用户在笔记本电脑上,而用户去了其他地方怎么办。他是否仍然能够安全地重新登录而无需再次输入他的登录名和密码?

谢谢!

~斯科特

最佳答案

类似问题:question on GWT, Cookies and webpage directing .
您应该记住的一件重要事情:不要仅依赖 cookie - 在请求的有效负载中传输 session ID/ token ,并将其与服务器端的 cookie 值进行比较。这将防止 XSRF 攻击。这是你应该担心的事情。

如何处理 session ID 的策略取决于您对应用程序安全性的重视程度以及它是什么类型的应用程序。例如,您可以从不同的 IP 在 GMail 上使用相同的 token 登录 - 我认为他们允许这样做,因为用户的 IP 在 session 中更改是很常见的。但是,他们确实添加了一项功能,可让您查看用户最近从哪些 IP 登录。并且不要忘记具有动态 IP 的用户(相当多) - 如果您跟踪 token 和 IP,您基本上将不允许这些用户在 session 之间保持登录状态。

What am I supposed to do on the server in order to securely evaluate if session ID is still legal, and pull up all the necessary information about the user?



您应该跟踪数据库中的 session ID/登录对。

What would make the session ID change?



要么过期,要么用户尝试使用未绑定(bind)到其 IP 的 token 登录。您也可以添加自己的规则 - 例如登录次数等。为了提高安全性,您可以在每个新登录/ session 上生成一个新的 session ID/ token (用户使用旧 token 进行身份验证,服务器检查它是否有效并将他/她从现在开始应该使用的新 token 发回给用户)。

关于session - GWT:将 session ID 存储在 cookie 中,然后呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3507926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com