Spec-Zone.ru › OpenJDK 25

Класс SSLSocketFactory

java.lang.Object
javax.net.SocketFactory
javax.net.ssl.SSLSocketFactory
public abstract class SSLSocketFactory extends SocketFactory
SSLSocketFactory создают SSLSocket.
Начиная с:
1.4
См. также:
  • SSLSocket

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

Конструктор Описание
SSLSocketFactory()
Конструктор используется только подклассами.

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

Модификатор и тип Метод Описание
Socket createSocket(Socket s, InputStream consumed, boolean autoClose)
Создает сокет Socket в режиме сервера поверх уже подключенного сокета и может считывать данные, которые уже были использованы или удалены из базового Socket InputStream.
abstract Socket createSocket(Socket s, String host, int port, boolean autoClose)
Возвращает сокет, созданный поверх существующего сокета, подключенного к указанному узлу на заданном порту.
static SocketFactory getDefault()
Возвращает фабрику SSL-сокетов по умолчанию.
abstract String[] getDefaultCipherSuites()
Возвращает список наборов шифров, включенных по умолчанию.
abstract String[] getSupportedCipherSuites()
Возвращает названия наборов шифров, которые можно включить для использования в SSL-соединении.

Методы, объявленные в классе SocketFactory

createSocket, createSocket, createSocket, createSocket, createSocket

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

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

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

SSLSocketFactory

public SSLSocketFactory()
Конструктор используется только подклассами.

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

getDefault

public static SocketFactory getDefault()
Возвращает фабрику SSL-сокетов по умолчанию.

При первом вызове этого метода проверяется свойство безопасности "ssl.SocketFactory.provider". Если оно не равно null, загружается и создается экземпляр класса с указанным именем. Если операция завершается успешно и объект является экземпляром SSLSocketFactory, он назначается фабрикой SSL-сокетов по умолчанию.

В противном случае этот метод возвращает SSLContext.getDefault().getSocketFactory(). Если этот вызов завершается неудачно, возвращается неработающая фабрика.

Возвращает:
фабрику SocketFactory
См. также:
  • SSLContext.getDefault()

getDefaultCipherSuites

public abstract String[] getDefaultCipherSuites()
Возвращает список наборов шифров, включенных по умолчанию. Если не включен другой список, при установлении SSL-соединения будет использоваться один из этих наборов шифров. Минимальный уровень качества обслуживания для этих значений по умолчанию требует обеспечения конфиденциальности и аутентификации сервера (то есть исключает анонимные наборы шифров).

Возвращаемый массив включает наборы шифров из списка стандартных названий наборов шифров в разделе Названия наборов шифров JSSE спецификации «Стандартные названия алгоритмов безопасности Java», а также может включать другие наборы шифров, поддерживаемые поставщиком.

Возвращает:
массив наборов шифров, включенных по умолчанию
Внешние спецификации
  • Стандартные названия алгоритмов безопасности Java
См. также:
  • getSupportedCipherSuites()

getSupportedCipherSuites

public abstract String[] getSupportedCipherSuites()
Возвращает названия наборов шифров, которые можно включить для использования в SSL-соединении. Обычно по умолчанию включается только часть этих наборов, поскольку этот список может содержать наборы шифров, не соответствующие требованиям к качеству обслуживания для значений по умолчанию. Такие наборы шифров полезны в специализированных приложениях.

Возвращаемый массив включает наборы шифров из списка стандартных названий наборов шифров в разделе Названия наборов шифров JSSE спецификации «Стандартные названия алгоритмов безопасности Java», а также может включать другие наборы шифров, поддерживаемые поставщиком.

Возвращает:
массив названий наборов шифров
Внешние спецификации
  • Стандартные названия алгоритмов безопасности Java
См. также:
  • getDefaultCipherSuites()

createSocket

public abstract Socket createSocket(Socket s, String host, int port, boolean autoClose) throws IOException
Возвращает сокет, созданный поверх существующего сокета, подключенного к указанному узлу на заданном порту. Этот конструктор можно использовать при туннелировании SSL через прокси-сервер или при согласовании использования SSL поверх существующего сокета. Узел и порт указывают логический адрес назначения узла-партнера. Для этого сокета используются параметры, заданные для данной фабрики.
Параметры:
s — существующий сокет
host — узел сервера
port — порт сервера
autoClose — закрывать ли базовый сокет при закрытии этого сокета
Возвращает:
сокет, подключенный к указанному узлу и порту
Исключения:
IOException — если при создании сокета возникает ошибка ввода-вывода
NullPointerException — если параметр s равен null

createSocket

public Socket createSocket(Socket s, InputStream consumed, boolean autoClose) throws IOException
Создает сокет Socket в режиме сервера поверх уже подключенного сокета и может считывать данные, которые уже были использованы или удалены из базового Socket InputStream.

Этот метод может использовать серверное приложение, которому необходимо анализировать входящие данные и при этом создавать корректные SSL/TLS-соединения: например, для проверки расширений Server Name Indication (SNI) (см. раздел 3 документа Расширения TLS (RFC6066)). Данные, уже удаленные из базового InputStream, следует загрузить в поток consumed до вызова этого метода, например, с помощью ByteArrayInputStream. Когда этот Socket начнет рукопожатие, он прочитает все данные из consumed, пока не достигнет EOF, после чего все дальнейшие данные будут считываться из базового InputStream обычным образом.

Возвращаемый сокет настраивается с использованием параметров, заданных для данной фабрики, и при установлении рукопожатия работает в режиме сервера (см. SSLSocket.setUseClientMode(boolean)).

Параметры:
s — существующий сокет
consumed — полученные входящие сетевые данные, уже удаленные из существующего Socket InputStream. Этот параметр может быть null, если данные не удалялись.
autoClose — закрывать ли базовый сокет при закрытии этого сокета.
Возвращает:
Socket, соответствующий параметрам сокета, заданным для данной фабрики
Исключения:
IOException — если при создании сокета возникает ошибка ввода-вывода
UnsupportedOperationException — если базовый поставщик не реализует эту операцию
NullPointerException — если s равно null
Начиная с:
1.8
Внешние спецификации
  • RFC 6066: расширения Transport Layer Security (TLS): определения расширений

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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/25/docs/api/java.base/javax/net/ssl/SSLSocketFactory.html

Spec-Zone.ru

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