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