Класс AuthProvider
- java.lang.Object
-
- java.util.Dictionary<K,V>
-
- java.util.Hashtable<Object,Object>
-
- java.util.Properties
-
- java.security.Provider
-
- java.security.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) |
Установить |
Методы, объявленные в классе 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