Класс SSLContextSpi

public abstract class SSLContextSpi
extends Object

Этот класс определяет интерфейс поставщика сервисов (SPI) для класса SSLContext.

Все абстрактные методы в этом классе должны быть реализованы каждым поставщиком криптографических сервисов, желающим предоставить реализацию конкретного контекста SSL.

Since:
1.4
См. также:
SSLContext

Конструкторы

Конструктор Описание
SSLContextSpi()

Методы

Модификатор и тип Метод Описание
protected abstract SSLEngine engineCreateSSLEngine()

Создаёт новый SSLEngine с использованием этого контекста.

protected abstract SSLEngine engineCreateSSLEngine​(String host, int port)

Создаёт SSLEngine с использованием этого контекста.

protected abstract SSLSessionContext engineGetClientSessionContext()

Возвращает объект клиента SSLSessionContext для этого контекста.

protected SSLParameters engineGetDefaultSSLParameters()

Возвращает копию SSLParameters, указывающую на стандартные настройки для этого контекста SSL.

protected abstract SSLSessionContext engineGetServerSessionContext()

Возвращает объект сервера SSLSessionContext для этого контекста.

protected abstract SSLServerSocketFactory engineGetServerSocketFactory()

Возвращает объект ServerSocketFactory для этого контекста.

protected abstract SSLSocketFactory engineGetSocketFactory()

Возвращает объект SocketFactory для этого контекста.

protected SSLParameters engineGetSupportedSSLParameters()

Возвращает копию SSLParameters, указывающую на максимальные поддерживаемые настройки для этого контекста SSL.

protected abstract void engineInit​(KeyManager[] km, TrustManager[] tm, SecureRandom sr)

Инициализирует этот контекст.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

SSLContextSpi

public SSLContextSpi()

Методы

engineInit

protected abstract void engineInit(KeyManager[] km,
                                   TrustManager[] tm,
                                   SecureRandom sr)
                            throws KeyManagementException

Инициализирует этот контекст.

Параметры:
km - источники ключей аутентификации
tm - источники решений доверия к аутентификации клиента
sr - источник случайных чисел
Исключения:
KeyManagementException - если эта операция завершается неудачно
См. также:
SSLContext.init(KeyManager [], TrustManager [], SecureRandom)

engineGetSocketFactory

protected abstract SSLSocketFactory engineGetSocketFactory()

Возвращает объект SocketFactory для этого контекста.

Возвращает:
объект SocketFactory
Исключения:
UnsupportedOperationException - если базовый поставщик не реализует операцию.
IllegalStateException - если SSLContextImpl требует инициализации, а engineInit() не был вызван
См. также:
SSLContext.getSocketFactory()

engineGetServerSocketFactory

protected abstract SSLServerSocketFactory engineGetServerSocketFactory()

Возвращает объект ServerSocketFactory для этого контекста.

Возвращает:
объект ServerSocketFactory
Исключения:
UnsupportedOperationException - если базовый поставщик не реализует операцию.
IllegalStateException - если SSLContextImpl требует инициализации, а engineInit() не был вызван
См. также:
SSLContext.getServerSocketFactory()

engineCreateSSLEngine

protected abstract SSLEngine engineCreateSSLEngine()

Создаёт новый SSLEngine с использованием этого контекста.

Приложения, использующие этот метод фабрики, не предоставляют подсказок для внутренней стратегии повторного использования сеанса. Если нужны подсказки, следует использовать engineCreateSSLEngine(String, int).

Некоторые наборы шифров (например, Kerberos) требуют информацию о удалённом имени хоста, в этом случае метод фабрики не следует использовать.

Примечание реализации:
Зависит от поставщика, использует ли возвращаемый SSLEngine по умолчанию клиентский или серверный режим для подключения (D)TLS. Реализация JDK SunJSSE provider по умолчанию использует серверный режим. Однако рекомендуется всегда явно задавать нужный режим, вызывая SSLEngine.setUseClientMode() перед вызовом других методов SSLEngine.
Возвращает:
объект SSLEngine
Исключения:
IllegalStateException - если SSLContextImpl требует инициализации, а engineInit() не был вызван
Since:
1.5
См. также:
SSLContext.createSSLEngine()

engineCreateSSLEngine

protected abstract SSLEngine engineCreateSSLEngine(String host,
                                                   int port)

Создаёт SSLEngine с использованием этого контекста.

Приложения, использующие этот метод фабрики, предоставляют подсказки для внутренней стратегии повторного использования сеанса.

Некоторые наборы шифров (например, Kerberos) требуют информацию о удалённом имени хоста, в этом случае peerHost необходимо указать.

Примечание реализации:
Зависит от поставщика, использует ли возвращаемый SSLEngine по умолчанию клиентский или серверный режим для подключения (D)TLS. Реализация JDK SunJSSE provider по умолчанию использует серверный режим. Однако рекомендуется всегда явно задавать нужный режим, вызывая SSLEngine.setUseClientMode() перед вызовом других методов SSLEngine.
Параметры:
host - неофициальное имя хоста
port - неофициальный порт
Возвращает:
объект SSLEngine
Исключения:
IllegalStateException - если SSLContextImpl требует инициализации, а engineInit() не был вызван
Since:
1.5
См. также:
SSLContext.createSSLEngine(String, int)

engineGetServerSessionContext

protected abstract SSLSessionContext engineGetServerSessionContext()

Возвращает объект сервера SSLSessionContext для этого контекста.

Возвращает:
объект SSLSessionContext
См. также:
SSLContext.getServerSessionContext()

engineGetClientSessionContext

protected abstract SSLSessionContext engineGetClientSessionContext()

Возвращает объект клиента SSLSessionContext для этого контекста.

Возвращает:
объект SSLSessionContext
См. также:
SSLContext.getClientSessionContext()

engineGetDefaultSSLParameters

protected SSLParameters engineGetDefaultSSLParameters()

Возвращает копию SSLParameters, указывающую на стандартные настройки для этого контекста SSL.

Параметры всегда будут иметь массивы ciphersuite и protocols, установленные в значения отличные от null.

Реализация по умолчанию получает параметры из SSLSocket, созданного путём вызова метода SocketFactory.createSocket() объекта SocketFactory этого контекста.

Возвращает:
копию объекта SSLParameters со стандартными настройками
Исключения:
UnsupportedOperationException - если стандартные параметры SSL получить не удалось.
Since:
1.6

engineGetSupportedSSLParameters

protected SSLParameters engineGetSupportedSSLParameters()

Возвращает копию SSLParameters, указывающую на максимальные поддерживаемые настройки для этого контекста SSL.

Параметры всегда будут иметь массивы ciphersuite и protocols, установленные в значения отличные от null.

Реализация по умолчанию получает параметры из SSLSocket, созданного путём вызова метода SocketFactory.createSocket() объекта SocketFactory этого контекста.

Возвращает:
копию объекта SSLParameters с максимальными поддерживаемыми настройками
Исключения:
UnsupportedOperationException - если поддерживаемые параметры SSL получить не удалось.
Since:
1.6

© 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/SSLContextSpi.html

Spec-Zone .ru
спецификации, руководства, описания, API