Spec-Zone.ru › OpenJDK 17

Интерфейс SSLSessionContext

public interface SSLSessionContext
Объект SSLSessionContext представляет набор SSLSession, связанных с одним субъектом. Например, он может быть связан с сервером или клиентом, которые участвуют во многих сессиях одновременно.

Не все среды содержат контексты сессий. Например, бессостояние сессии возобновления.

Контексты сессий могут не содержать все сессии. Например, бессостоятельные сессии не хранятся в контексте сессии.

Существуют SSLSessionContext параметра, которые влияют на то, как хранятся сессии:

  • Сессии могут быть установлены на истечение после указанного лимита времени.
  • Количество сессий, которые могут храниться в контексте, может быть ограничено.
Сессия может быть получена по её идентификатору сессии, и все идентификаторы сессий в SSLSessionContext могут быть перечислены.
Since:
1.4
См. также:
  • SSLSession

Краткое описание методов

Модификатор и тип Метод Описание
Enumeration<byte[]> getIds()
Возвращает перечисление всех известных идентификаторов сессий, сгруппированных под этим SSLSessionContext.
SSLSession getSession(byte[] sessionId)
Возвращает SSLSession, связанный с указанным идентификатором сессии.
int getSessionCacheSize()
Возвращает размер кэша, используемого для хранения SSLSession объектов, сгруппированных под этим SSLSessionContext.
int getSessionTimeout()
Возвращает лимит таймаута SSLSession объектов, сгруппированных под этим SSLSessionContext.
void setSessionCacheSize(int size)
Устанавливает размер кэша, используемого для хранения SSLSession объектов, сгруппированных под этим SSLSessionContext.
void setSessionTimeout(int seconds)
Устанавливает лимит таймаута для SSLSession объектов, сгруппированных под этим SSLSessionContext.

Подробное описание методов

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, или, если он не установлен, значение системной переменной javax.net.ssl.sessionCacheSize. Если ни то, ни другое не установлено, возвращается значение по умолчанию 20480.
Возвращает:
размер кэша сессий; ноль означает, что ограничений нет.
См. также:
  • setSessionCacheSize(int)

© 1993, 2021, 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/17/docs/api/java.base/javax/net/ssl/SSLSessionContext.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API