TLS позволяет возобновить сеанс с помощью идентификаторов сеансов или билетов сеансов. В этом посте показано, как это можно сделать на веб-сервере Apache и Nginx.В частности, Apache имеет директиву SSLSessionTicketKeyFile
, которая позволяет зашифровать билет сеанса TLS определенным ключом, а не ключом, выбранным случайным образом при запуске.Это полезно в кластере, где любой участник кластера может открыть тикет, зашифрованный другим участником с помощью общего ключа.
Я не смог найти подобную функцию в документации Tomcat TLS .Тем не менее, я нашел метод под названием setTicketKeys
, который, кажется, делает именно то, что я хочу:
public void setTicketKeys(byte[] keys)
Sets the SSL session ticket keys of this context.
Parameters:
keys - The session ticket keys
Я также нашел класс из Facebook Nifty , которыйиспользует эту функцию.
Мой вопрос: мне нужен экземпляр OpenSSLSessionContext
для вызова setTicketKeys()
.Как мне получить этот экземпляр?
Редактировать: Если это можно сделать с помощью конфигурации, тем лучше!