Класс SSLSocketFactory

public abstract class SSLSocketFactory
extends SocketFactory

SSLSocketFactory создаёт SSLSocket сокет.

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

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

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

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

Методы

Модификатор и типМетодОписание
SocketcreateSocket​(Socket s, InputStream consumed, boolean autoClose)

Создаёт сокет серверного режима Socket поверх существующего подключенного сокета и может читать данные, которые уже были извлечены/удалены из подлежащего Socket потока InputStream.

abstract SocketcreateSocket​(Socket s, String host, int port, boolean autoClose)

Возвращает сокет, наложенный поверх существующего сокета, подключенного к указанному хосту по указанному порту.

static SocketFactorygetDefault()

Возвращает стандартный SSL сокет-фабрику.

abstract String[]getDefaultCipherSuites()

Возвращает список наборов шифрования, которые включены по умолчанию.

abstract String[]getSupportedCipherSuites()

Возвращает имена наборов шифрования, которые могут быть включены для использования в SSL-соединении.

Методы, унаследованные от класса javax.net.SocketFactory

createSocket, createSocket, createSocket, createSocket, createSocket

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

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

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

SSLSocketFactory

public SSLSocketFactory()

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

Методы

getDefault

public static SocketFactory getDefault()

Возвращает стандартный SSL сокет-фабрику.

В первый раз при вызове этого метода, проверяется системная переменная «ssl.SocketFactory.provider». Если она не пуста, загружается и создаётся класс с этим именем. Если это выполняется успешно и объект является экземпляром SSLSocketFactory, он становится стандартной SSL сокет-фабрикой.

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

Возвращает:
стандартный SocketFactory
См. также:
SSLContext.getDefault()

getDefaultCipherSuites

public abstract String[] getDefaultCipherSuites()

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

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

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

getSupportedCipherSuites

public abstract String[] getSupportedCipherSuites()

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

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

Возвращает:
массив имён наборов шифрования
См. также:
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 Extensions (RFC6066)). Данные, которые уже были удалены из подлежащего InputStream, должны быть загружены в поток consumed перед вызовом этого метода, возможно, с помощью ByteArrayInputStream. Когда этот Socket начинает установление соединения, он будет читать все данные в consumed до тех пор, пока не достигнет EOF, после чего все дальнейшие данные будут читаться из подлежащего InputStream как обычно.

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

Параметры:
s - существующий сокет
consumed - потреблённые входные сетевые данные, которые уже были удалены из существующего Socket InputStream. Этот параметр может быть null если данные не удалялись.
autoClose - закрыть подлежащий сокет при закрытии этого сокета.
Возвращает:
сокет, совместимый с опциями сокета, установленными для этого объекта
Исключения:
IOException - если при создании сокета произошла ошибка ввода-вывода
UnsupportedOperationException - если подлежащий поставщик не реализует операцию
NullPointerException - если s null
Since:
1.8

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

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