web.xml 中的会话超时和安全

Session-Timeout and Secure in web.xml

我已经在此处发布问题之前做了一些功课,我知道,如果我的服务器在规定的时间限制内没有收到任何请求,会话超时将使我的会话过期。

但我的疑问是:

我的服务器是无会话的,即它根本不维护会话。

对于每个请求,我检查令牌是否存在,我将批准该请求,否则拒绝该请求,此外,如果用户选择退出,我将该令牌标记为无效。这样下次如果有人使用该令牌,protected api 不应被访问。

是的,我在生成新令牌时使用了到期时间。

这是否意味着,我不必在 web.xml 中设置 "session-timeout"?

还是我遗漏了什么?

谢谢。

/***** 已更新 ******/

让我添加更多信息,我从用户那里获取 "Username" 和 "Password" 并生成有效期为 1 天的令牌。对于每个 api 请求,我都希望用户向我发送此令牌,然后我才会让他走得更远。 当他注销时,我将此标记标记为无效,所以下次他尝试使用任何 api 时,我再次询问他 "Username" 和 "Password" <-- 这就是我假设他的当他点击注销我时会话结束。

现在,我的疑问是

假设用户先来给我 "Username" 和 "Password",我生成一个令牌并将其交给他,我将令牌的有效期设置为 1 天。

现在我设置 Session-timeout = 20 分钟,这意味着如果用户在 20 分钟内没有发出任何请求,他的会话就会结束。

但我敢肯定,如果 20 分钟后他会点击任何 API,服务器将授予请求,因为令牌仍然有效(用户尚未注销)。

那么使用"SESSION-TIMEOUT"有什么用呢?

在 JEE Servlet 应用程序中,会话是与 cookie 关联的值。在幕后,这个值被 servlet 容器用作在服务器内存中存储带有参数的映射的键。 web.xml 中的会话超时值确定在 cookie 值过期之前用户可以处于非活动状态的时间长度,并且映射被丢弃以进行垃圾回收。