Класс AuthProvider

Все реализуемые интерфейсы:
Serializable, Cloneable, Map<Object,​Object>
public abstract class AuthProvider
extends Provider

Этот класс определяет методы входа и выхода для провайдера.

Хотя вызывающие стороны могут вызывать login напрямую, провайдер также может вызывать login от имени вызывающих сторон, если он определит, что вход должен быть выполнен перед определенными операциями.

С тех пор:
1.5
См. также:
Сериализованная форма

Вложенные классы

Вложенные классы/интерфейсы, объявленные в классе java.security.Provider

Provider.Service

Поля

Поля, объявленные в классе java.util.Properties

defaults

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

Модификатор Конструктор Описание
protected AuthProvider​(String name, double version, String info)

Устарело.

Используйте AuthProvider(String, String, String) вместо этого.

protected AuthProvider​(String name, String versionStr, String info)

Создаёт провайдер с указанным именем, строкой версии и информацией.

Методы

Модификатор и тип Метод Описание
abstract void login​(Subject subject, CallbackHandler handler)

Вход в этот провайдер.

abstract void logout()

Выход из этого провайдера.

abstract void setCallbackHandler​(CallbackHandler handler)

Установить CallbackHandler.

Методы, объявленные в классе java.security.Provider

clear, compute, computeIfAbsent, computeIfPresent, configure, entrySet, forEach, getInfo, getName, getOrDefault, getService, getServices, getVersion, getVersionStr, isConfigured, keySet, load, merge, put, putAll, putIfAbsent, putService, remove, remove, removeService, replace, replace, replaceAll, toString, values

Методы, объявленные в классе java.util.Properties

getProperty, getProperty, list, list, load, loadFromXML, propertyNames, save, setProperty, store, store, storeToXML, storeToXML, storeToXML, stringPropertyNames

Методы, объявленные в классе java.util.Hashtable

clone, contains, containsKey, containsValue, elements, equals, get, hashCode, isEmpty, keys, rehash, size

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

finalize, getClass, notify, notifyAll, wait, wait, wait

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

AuthProvider

@Deprecated(since="9")
protected AuthProvider(String name,
                       double version,
                       String info)
Устарело.
Используйте AuthProvider(String, String, String) вместо этого.

Создаёт провайдер с указанным именем, номером версии и информацией.

Параметры:
name - имя провайдера.
version - номер версии провайдера.
info - описание провайдера и его услуг.

AuthProvider

protected AuthProvider(String name,
                       String versionStr,
                       String info)

Создаёт провайдер с указанным именем, строкой версии и информацией.

Параметры:
name - имя провайдера.
versionStr - строка версии провайдера.
info - описание провайдера и его услуг.
С тех пор:
9

Методы

login

public abstract void login(Subject subject,
                           CallbackHandler handler)
                    throws LoginException

Вход в этот провайдер.

Провайдер полагается на CallbackHandler для получения информации об аутентификации от вызывающей стороны (например, PIN). Если вызывающая сторона передает null обработчик в этот метод, провайдер использует обработчик, установленный в методе setCallbackHandler. Если обработчик не был установлен в этом методе, провайдер запрашивает свойство безопасности auth.login.defaultCallbackHandler для получения полного имени класса реализации обработчика по умолчанию. Если свойство безопасности не установлено, провайдер предполагает, что имеет альтернативные способы получения информации об аутентификации.

Параметры:
subject - Subject, который может содержать принципы/креденциалы, используемые для аутентификации, или может быть заполнен дополнительными принципами/креденциалами после успешного завершения аутентификации. Этот параметр может быть null.
handler - CallbackHandler используемый этим провайдером для получения информации об аутентификации от вызывающей стороны, который может быть null
Исключения:
IllegalStateException - если провайдеру требуется конфигурация и Provider.configure(java.lang.String) не был вызван
LoginException - если операция входа не удалась
SecurityException - если вызывающая сторона не проходит проверку безопасности для SecurityPermission("authProvider.name"), где name является значением, возвращаемым методом getName этого провайдера

logout

public abstract void logout()
                     throws LoginException

Выход из этого провайдера.

Исключения:
IllegalStateException - если провайдеру требуется конфигурация и Provider.configure(java.lang.String) не был вызван
LoginException - если операция выхода не удалась
SecurityException - если вызывающая сторона не проходит проверку безопасности для SecurityPermission("authProvider.name"), где name является значением, возвращаемым методом getName этого провайдера

setCallbackHandler

public abstract void setCallbackHandler(CallbackHandler handler)

Установить CallbackHandler.

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

Параметры:
handler - CallbackHandler для получения информации об аутентификации, который может быть null
Исключения:
IllegalStateException - если провайдеру требуется конфигурация и Provider.configure(java.lang.String) не был вызван
SecurityException - если вызывающая сторона не проходит проверку безопасности для SecurityPermission("authProvider.name"), где name является значением, возвращаемым методом getName этого провайдера

© 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/java/security/AuthProvider.html

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