Интерфейс SaslClientFactory
public interface SaslClientFactory
Интерфейс для создания экземпляров
SaslClient. Класс, реализующий этот интерфейс, должен быть потокобезопасным и обрабатывать несколько одновременных запросов. Он также должен иметь публичный конструктор без аргументов. К этому интерфейсу клиент обычно не обращается напрямую, вместо этого он использует статические методы Sasl. Однако определенная среда может предоставить и установить новый или другой SaslClientFactory.
- Since:
- 1.5
- See Also:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
SaslClient |
createSaslClient |
Создаёт SaslClient, используя предоставленные параметры. |
String[] |
getMechanismNames |
Возвращает массив имён механизмов, соответствующих указанным политикам выбора механизмов. |
Подробное описание методов
createSaslClient
SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh) throws SaslException
Создаёт SaslClient, используя предоставленные параметры.
- Parameters:
-
mechanisms- Непустой список имён механизмов для проверки. Каждый из них — зарегистрированное IANA имя SASL механизма (например, "GSSAPI", "CRAM-MD5"). -
authorizationId- Возможно null протокольно-зависимое идентификационное имя для авторизации. Если null или пустое, сервер определяет идентификатор авторизации по аутентификационным данным клиента. После успешной аутентификации по SASL указанному субъекту предоставляется доступ. -
protocol- Непустая строка имени протокола, для которого выполняется аутентификация (например, "ldap"). -
serverName- Непустое полное имя хоста сервера, к которому выполняется аутентификация. -
props- Возможно null набор свойств, используемых для выбора SASL механизма и настройки обмена данными аутентификации выбранного механизма. См. классSaslдля списка стандартных свойств. Можно включать другие, возможно механизм-специфические, свойства. Свойства, не относящиеся к выбранному механизму, игнорируются, включая любые элементы отображения с ключами, отличными от String. -
cbh- Возможно null обработчик обращений, используемый SASL механизмами для получения дополнительной информации от приложения/библиотеки для завершения аутентификации. Например, SASL механизм может потребовать идентификатор, пароль и область аутентификации от вызывающего объекта. Идентификатор аутентификации запрашивается с помощьюNameCallback. Пароль запрашивается с помощьюPasswordCallback. Область запрашивается с помощьюRealmChoiceCallbackесли есть список областей для выбора, и с помощьюRealmCallbackесли область должна быть введена. - Returns:
- Возможный
SaslClient, созданный с использованием предоставленных параметров. Если null, эта фабрика не может создатьSaslClientс использованием предоставленных параметров. - Throws:
-
SaslException- Если не удаётся создатьSaslClientиз-за ошибки.
getMechanismNames
String[] getMechanismNames(Map<String,?> props)
Возвращает массив имён механизмов, соответствующих указанным политикам выбора механизмов.
- Parameters:
-
props- Возможно null набор свойств, используемых для указания политики безопасности SASL механизмов. Например, еслиpropsсодержит свойствоSasl.POLICY_NOPLAINTEXTсо значением"true", то фабрика не должна возвращать какие-либо SASL механизмы, уязвимые для простых пассивных атак. См. классSaslдля полного списка свойств политики. Свойства, не относящиеся к политике, если присутствуют вprops, игнорируются, включая любые элементы отображения с ключами, отличными от String. - Returns:
- Непустой массив, содержащий зарегистрированные IANA имена SASL механизмов.
© 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.security.sasl/javax/security/sasl/SaslClientFactory.html