TLS允许通过会话ID或会话票证恢复会话。 This post显示了如何在Apache Web服务器和Nginx中执行此操作。特别地,Apache有一个SSLSessionTicketKeyFile
directive,它允许TLS会话票证通过特定的密钥而不是在启动时随机选择的密钥进行加密。这在群集中非常有用,在群集中,任何群集成员都可以通过共享密钥打开由另一个成员加密的票证。
我在Tomcat TLS documentation中找不到类似的功能。但是,我发现了一种名为setTicketKeys
的方法,它似乎完全可以满足我的要求:
public void setTicketKeys(byte[] keys)
Sets the SSL session ticket keys of this context.
Parameters:
keys - The session ticket keys
我还发现a class from Facebook Nifty使用了此功能。
我的问题是:我需要一个
OpenSSLSessionContext
的实例才能调用setTicketKeys()
。我应该如何获得这个实例?
编辑:如果可以通过配置完成操作,那就更好了!
答案 0 :(得分:-1)
这实际上记录在Tomcat documentation中:主要收获是: