java - 关于 SSL setSessionTimeout

标签 java ssl

我已经创建了一个 SSL session 。我想在超过超时值时使 session 无效。我的问题是我是否需要添加单独的代码来检查 session 时间以使 session 页面无效,或者此函数会自动处理这个问题?

socket.startHandshake();
sess= socket.getSession()
socket.setSessionTimeout(120);

设置 session 超时

setsessiontimeout()

指定在 servlet 容器使该 session 无效之前客户端请求之间的时间(以秒为单位)。

最佳答案

我怀疑您是否了解 SSL session 或其超时的真正含义。我认为您实际上是在谈论由 JSESSIONID 标识的 servlet session 。它的超时值在 web.xml 中配置。 servlet 容器会在超时时自动使 session 失效。

SSL session 用于在相同的两个对等点之间发生多个连接时减少握手开销。在 SSL session 上设置超时会导致它在超时后过期,但这仅意味着客户端在下次连接时必须创建一个具有完整握手的新 SSL session (因为新连接无法加入过期的 session )。例如,这并不意味着他的现有连接失效,或者他从 Web 应用程序中注销。

另一方面,如果您的问题确实是关于 SSLSessionContext.setSessionTimeout(),(a) 是的,它设置了 SSL session 超时,就像它在 Javadoc 中所说的那样,并且 (b) 我无法理解您为什么要询问 JSSE 中的其他方法来做同样的事情。

关于java - 关于 SSL setSessionTimeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10241021/

相关文章:

java - 为多个 Activity 创建 GoogleApiClient

java - 检查两个字符串是否是变位词

php - curl 错误 : SSL connect error

python - 使用 python 脚本在 apache2 上不通过 SSL 显示图像

ssl - 我有一个 .pfx 文件,但无法使用它

java - 在java中使用分数

java - ConstraintLayout 无法转换为 android.widget.TextView

java - Netsparker 工具显示 cookie 未标记为 HttpOnly

java - 您将 SSL 添加到 Tomcat 6 的体验如何?

Python ssl 登录卡在 Debian 上