Spec-Zone.ru › OpenJDK 27

Класс KeyStoreLoginModule

java.lang.Object
com.sun.security.auth.module.KeyStoreLoginModule
Все реализованные интерфейсы:
LoginModule
public class KeyStoreLoginModule extends Object implements LoginModule
Предоставляет модуль входа JAAS, который запрашивает псевдоним хранилища ключей и заполняет субъект принципалом и учетными данными, связанными с этим псевдонимом. Сохраняет X500Principal для различительного имени субъекта первого сертификата в учетных данных псевдонима среди принципалов субъекта, путь сертификатов псевдонима среди общедоступных учетных данных субъекта и X500PrivateCredential, сертификатом которого является первый сертификат в пути сертификатов псевдонима, а закрытым ключом — закрытый ключ псевдонима, среди закрытых учетных данных субъекта.

Распознает следующие параметры в файле конфигурации:

keyStoreURL
URL-адрес, указывающий расположение хранилища ключей. По умолчанию используется URL-адрес файла .keystore в каталоге, указанном системным свойством user.home. Входной поток по этому URL-адресу передается методу KeyStore.load. Можно указать "NONE", если методу KeyStore.load необходимо передать поток null. Например, "NONE" следует указать, если хранилище ключей находится на устройстве с аппаратным токеном.
keyStoreType
Тип хранилища ключей. Если не указан, по умолчанию используется результат вызова KeyStore.getDefaultType(). Если тип — "PKCS11", то keyStoreURL должен иметь значение "NONE", а privateKeyPasswordURL не должен быть указан.
keyStoreProvider
Провайдер хранилища ключей. Если не указан, для поиска провайдера используется стандартный порядок поиска.
keyStoreAlias
Псевдоним в хранилище ключей, под которым выполняется вход. Обязателен, если обработчик обратного вызова не предоставлен. Значение по умолчанию отсутствует.
keyStorePasswordURL
URL-адрес, указывающий расположение пароля хранилища ключей. Обязателен, если обработчик обратного вызова не предоставлен и protected имеет значение false. Значение по умолчанию отсутствует.
privateKeyPasswordURL
URL-адрес, указывающий расположение пароля конкретного закрытого ключа, необходимого для доступа к закрытому ключу этого псевдонима. Если это значение необходимо, но не указано, используется пароль хранилища ключей.
protected
Этому значению следует задать "true", если хранилище ключей имеет отдельный защищенный путь аутентификации (например, специальную PIN-клавиатуру, подключенную к смарт-карте). По умолчанию — "false". Если задано значение "true", параметры keyStorePasswordURL и privateKeyPasswordURL указывать нельзя.
Начиная с версии:
1.4

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

Конструктор Описание
KeyStoreLoginModule()
Создает KeyStoreLoginModule.

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

Модификатор и тип Метод Описание
boolean abort()
Этот метод вызывается, если общая аутентификация LoginContext завершилась неудачей.
boolean commit()
Абстрактный метод для подтверждения процесса аутентификации (этап 2).
void initialize(Subject subject, CallbackHandler callbackHandler, Map<String,?> sharedState, Map<String,?> options)
Инициализирует этот LoginModule.
boolean login()
Аутентифицирует пользователя.
boolean logout()
Выполняет выход пользователя из системы.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому.
protected void finalize()
Устарело, планируется удаление: этот элемент API планируется удалить в будущей версии.
Финализация объявлена устаревшей и планируется к удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

KeyStoreLoginModule

public KeyStoreLoginModule()
Создает KeyStoreLoginModule.

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

initialize

public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String,?> sharedState, Map<String,?> options)
Инициализирует этот LoginModule.
Определено в:
initialize в интерфейсе LoginModule
Параметры:
subject — Subject, подлежащий аутентификации.
callbackHandler — CallbackHandler для взаимодействия с конечным пользователем (например, для запроса имени пользователя и пароля); может быть null.
sharedState — общее состояние LoginModule.
options — параметры, указанные в конфигурации входа Configuration для этого конкретного LoginModule.

login

public boolean login() throws LoginException
Аутентифицирует пользователя.

Получает псевдоним хранилища ключей и соответствующие пароли. Извлекает принципал и учетные данные псевдонима из хранилища ключей.

Определено в:
login в интерфейсе LoginModule
Возвращает:
true во всех случаях (этот LoginModule не следует игнорировать).
Вызывает исключения:
FailedLoginException — если аутентификация завершается неудачей.
LoginException — если аутентификация завершается неудачей

commit

public boolean commit() throws LoginException
Абстрактный метод для подтверждения процесса аутентификации (этап 2).

Этот метод вызывается, если общая аутентификация LoginContext завершилась успешно (успешно завершились соответствующие модули входа REQUIRED, REQUISITE, SUFFICIENT и OPTIONAL).

Если собственная попытка аутентификации этого LoginModule завершилась успешно (что проверяется путем получения закрытого состояния, сохраненного методом login), этот метод добавляет X500Principal для различительного имени субъекта первого сертификата в учетных данных псевдонима среди принципалов субъекта, путь сертификатов псевдонима среди общедоступных учетных данных субъекта и X500PrivateCredential, сертификатом которого является первый сертификат в пути сертификатов псевдонима, а закрытым ключом — закрытый ключ псевдонима, среди закрытых учетных данных субъекта. Если собственная попытка аутентификации этого LoginModule завершилась неудачей, этот метод удаляет все ранее сохраненное состояние.

Определено в:
commit в интерфейсе LoginModule
Возвращает:
true, если собственные попытки входа и подтверждения этого LoginModule завершились успешно, в противном случае — false.
Вызывает исключения:
LoginException — если подтверждение завершается неудачей

abort

public boolean abort() throws LoginException
Этот метод вызывается, если общая аутентификация LoginContext завершилась неудачей (соответствующие модули входа REQUIRED, REQUISITE, SUFFICIENT и OPTIONAL не завершились успешно).

Если собственная попытка аутентификации этого LoginModule завершилась успешно (что проверяется путем получения закрытого состояния, сохраненного методами login и commit), этот метод очищает все ранее сохраненное состояние.

Если провайдер загруженного хранилища ключей является подклассом java.security.AuthProvider, вызывается метод logout этого провайдера.

Определено в:
abort в интерфейсе LoginModule
Возвращает:
false, если собственная попытка входа и/или подтверждения этого LoginModule завершилась неудачей, и true в противном случае.
Вызывает исключения:
LoginException — если прерывание завершается неудачей.

logout

public boolean logout() throws LoginException
Выполняет выход пользователя из системы.

Этот метод удаляет принципалы, общедоступные и закрытые учетные данные, добавленные методом commit.

Если провайдер загруженного хранилища ключей является подклассом java.security.AuthProvider, вызывается метод logout этого провайдера.

Определено в:
logout в интерфейсе LoginModule
Возвращает:
true во всех случаях, поскольку этот LoginModule не следует игнорировать.
Вызывает исключения:
LoginException — если выход из системы завершается неудачей.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, 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.

Spec-Zone.ru

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