Интерфейс SSLSessionContext
public interface SSLSessionContext
Объект SSLSessionContext представляет набор SSLSession , связанных с одним объектом. Например, он может быть связан с сервером или клиентом, участвующим во множестве сессий одновременно.
Не все среды содержат контексты сессий.
Существуют SSLSessionContext параметра, влияющие на то, как хранятся сессии:
- Сессии могут быть настроены на истечение срока действия по истечении заданного лимита времени.
- Количество сессий, которые могут быть сохранены в контексте, может быть ограничено.
SSLSessionContext можно перечислить.- Since:
- 1.4
- См. также:
SSLSession
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
Enumeration<byte[]> | getIds() | Возвращает перечисление всех идентификаторов сессий, сгруппированных в этом |
SSLSession | getSession(byte[] sessionId) | Возвращает |
int | getSessionCacheSize() | Возвращает размер кэша, используемого для хранения |
int | getSessionTimeout() | Возвращает лимит времени ожидания |
void | setSessionCacheSize(int size) | Устанавливает размер кэша, используемого для хранения |
void | setSessionTimeout(int seconds) | Устанавливает лимит времени ожидания для |
Методы
getSession
SSLSession getSession(byte[] sessionId)
Возвращает SSLSession, связанный с указанным идентификатором сессии.
- Параметры:
-
sessionId- идентификатор сессии - Возвращает:
- объект
SSLSessionили null, если указанный идентификатор сессии не относится к действительной SSLSession. - Исключения:
-
NullPointerException- еслиsessionIdравно null.
getIds
Enumeration<byte[]> getIds()
Возвращает перечисление всех идентификаторов сессий, сгруппированных в этом SSLSessionContext.
- Возвращает:
- перечисление всех идентификаторов сессий
setSessionTimeout
void setSessionTimeout(int seconds)
throws IllegalArgumentException Устанавливает лимит времени ожидания для SSLSession объектов, сгруппированных в этом SSLSessionContext.
Если лимит времени ожидания установлен в 't' секунд, сессия превышает лимит времени ожидания 't' секунд после ее создания. Когда лимит времени ожидания превышен для сессии, объект SSLSession становится недействительным, и будущие подключения не могут возобновить или присоединиться к сессии. Проверка сессий, превышающих лимит времени ожидания, выполняется сразу же при каждом изменении лимита времени ожидания для этого SSLSessionContext.
- Примечание API:
- Обратите внимание, что реализация JDK использует значения по умолчанию как для размера кэша сессий, так и для времени ожидания. См.
getSessionCacheSizeиgetSessionTimeoutдля получения дополнительной информации. Приложения должны учитывать свои потребности в производительности и переопределять значения по умолчанию, если необходимо. - Параметры:
-
seconds- новый лимит времени ожидания сессии в секундах; ноль означает отсутствие ограничения. - Исключения:
-
IllegalArgumentException- если указанное время ожидания< 0. - См. также:
getSessionTimeout()
getSessionTimeout
int getSessionTimeout()
Возвращает лимит времени ожидания SSLSession объектов, сгруппированных в этом SSLSessionContext.
Если лимит времени ожидания установлен в 't' секунд, сессия превышает лимит времени ожидания 't' секунд после ее создания. Когда лимит времени ожидания превышен для сессии, объект SSLSession становится недействительным, и будущие подключения не могут возобновить или присоединиться к сессии. Проверка сессий, превышающих лимит времени ожидания, выполняется сразу же при каждом изменении лимита времени ожидания для этого SSLSessionContext.
- Примечание реализации:
- Реализация JDK возвращает время ожидания сессии, установленное методом
setSessionTimeoutили, если не установлено, значение по умолчанию 86400 секунд (24 часа). - Возвращает:
- лимит времени ожидания сессии в секундах; ноль означает отсутствие ограничения.
- См. также:
setSessionTimeout(int)
setSessionCacheSize
void setSessionCacheSize(int size)
throws IllegalArgumentException Устанавливает размер кэша, используемого для хранения SSLSession объектов, сгруппированных в этом SSLSessionContext.
- Примечание API:
- Обратите внимание, что реализация JDK использует значения по умолчанию как для размера кэша сессий, так и для времени ожидания. См.
getSessionCacheSizeиgetSessionTimeoutдля получения дополнительной информации. Приложения должны учитывать свои потребности в производительности и переопределять значения по умолчанию, если необходимо. - Параметры:
-
size- новый лимит размера кэша сессий; ноль означает отсутствие ограничения. - Исключения:
-
IllegalArgumentException- если указанный размер< 0. - См. также:
getSessionCacheSize()
getSessionCacheSize
int getSessionCacheSize()
Возвращает размер кэша, используемого для хранения SSLSession объектов, сгруппированных в этом SSLSessionContext.
- Примечание реализации:
- Реализация JDK возвращает размер кэша, установленный методом
setSessionCacheSizeили, если не установлено, значение системной переменной. Если ни то ни другое не установлено, возвращается значение по умолчанию 20480. - Возвращает:
- размер кэша сессий; ноль означает отсутствие ограничения по размеру.
- См. также:
setSessionCacheSize(int)
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/javax/net/ssl/SSLSessionContext.html