Spec-Zone.ru › OpenJDK 25

Интерфейс SaslClientFactory

public interface SaslClientFactory
Интерфейс для создания экземпляров SaslClient. Класс, реализующий этот интерфейс, должен быть потокобезопасным и обрабатывать несколько одновременных запросов. У него также должен быть открытый конструктор без аргументов.

Обычно клиент не обращается к этому интерфейсу напрямую, а использует вместо него статические методы Sasl. Однако в определённой среде может быть предоставлена и установлена новая или отличающаяся реализация SaslClientFactory.

С версии:
1.5
См. также:
  • SaslClient
  • Sasl

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

Модификатор и тип Метод Описание
SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh)
Создаёт SaslClient с использованием переданных параметров.
String[] getMechanismNames(Map<String,?> props)
Возвращает массив имён механизмов, соответствующих указанным политикам выбора механизмов.

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

createSaslClient

SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh) throws SaslException
Создаёт SaslClient с использованием переданных параметров.
Параметры:
mechanisms — Список имён механизмов, который может быть пустым, но не может быть null. Каждое имя зарегистрировано в IANA как имя механизма SASL (например, "GSSAPI", "CRAM-MD5").
authorizationId — Идентификатор, зависящий от протокола и используемый для авторизации; может быть null. Если он равен null или пуст, сервер формирует идентификатор авторизации на основе учётных данных аутентификации клиента. После успешного завершения аутентификации SASL указанной сущности предоставляется доступ.
protocol — Имя протокола, для которого выполняется аутентификация; не может быть null (например, "ldap").
serverName — Полное доменное имя сервера, на котором выполняется аутентификация; не может быть null.
props — Набор свойств, используемых для выбора механизма SASL и настройки обмена данными для аутентификации выбранного механизма; может быть null. Список стандартных свойств приведён в классе Sasl. Также могут быть указаны другие свойства, возможно специфичные для механизма. Свойства, не относящиеся к выбранному механизму, игнорируются, включая записи карты с ключами, не являющимися строками.
cbh — Обработчик обратных вызовов, который механизмы SASL могут использовать для получения от приложения или библиотеки дополнительных сведений, необходимых для завершения аутентификации; может быть null. Например, механизму SASL могут понадобиться идентификатор аутентификации, пароль и область от вызывающего кода. Идентификатор аутентификации запрашивается с помощью NameCallback. Пароль запрашивается с помощью PasswordCallback. Область запрашивается с помощью RealmChoiceCallback, если предоставлен список вариантов для выбора, и с помощью RealmCallback, если область нужно ввести.
Возвращает:
Возможно, null; SaslClient, созданный с использованием переданных параметров. Если возвращено значение null, эта фабрика не может создать SaslClient с использованием переданных параметров.
Выбрасывает:
SaslException — Если не удаётся создать SaslClient из-за ошибки.

getMechanismNames

String[] getMechanismNames(Map<String,?> props)
Возвращает массив имён механизмов, соответствующих указанным политикам выбора механизмов.
Параметры:
props — Набор свойств, задающих политику безопасности механизмов SASL; может быть null. Например, если props содержит свойство Sasl.POLICY_NOPLAINTEXT со значением "true", фабрика не должна возвращать механизмы SASL, уязвимые для простых пассивных атак. Полный список свойств политики приведён в классе Sasl. Свойства, не связанные с политикой, если они присутствуют в props, игнорируются, включая записи карты с ключами, не являющимися строками.
Возвращает:
Не равный null массив имён механизмов SASL, зарегистрированных в IANA.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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.security.sasl/javax/security/sasl/SaslClientFactory.html

Spec-Zone.ru

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