Spec-Zone.ru › OpenJDK 17

Класс Authenticator

java.lang.Object
java.net.Authenticator
public abstract class Authenticator extends Object
Класс Authenticator представляет объект, знающий, как получить аутентификацию для сетевого соединения. Обычно он делает это, запрашивая информацию у пользователя.

Приложения используют этот класс, переопределяя getPasswordAuthentication() в подклассе. Этот метод обычно использует различные методы-аксессоры getXXX() для получения информации о сущности, запрашивающей аутентификацию. Затем он должен получить имя пользователя и пароль, взаимодействуя с пользователем или другим способом, не требующим взаимодействия. Данные проверки подлинности возвращаются в виде значения PasswordAuthentication.

Экземпляр этого конкретного подкласса регистрируется в системе, вызывая setDefault(Authenticator). Когда требуется аутентификация, система вызовет один из методов requestPasswordAuthentication(), которые в свою очередь вызовут метод getPasswordAuthentication() зарегистрированного объекта.

Все методы, запрашивающие аутентификацию, имеют реализацию по умолчанию, которая завершается неудачей.

С тех пор:
1.2
См. также:
  • setDefault(java.net.Authenticator)
  • getPasswordAuthentication()

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static enum  Authenticator.RequestorType
Тип сущности, запрашивающей аутентификацию.

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

Конструктор Описание
Authenticator()
Конструктор для вызова подклассами.

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

Модификатор и тип Метод Описание
static Authenticator getDefault()
Получает по умолчанию объект аутентификации.
protected PasswordAuthentication getPasswordAuthentication()
Вызывается при необходимости авторизации паролем.
protected final String getRequestingHost()
Получает hostname сайта или прокси, запрашивающего аутентификацию, или null, если она недоступна.
protected final int getRequestingPort()
Получает номер порта для запрошенного соединения.
protected final String getRequestingPrompt()
Получает строку запроса, предоставленную запрашивающим лицом.
protected final String getRequestingProtocol()
Указывает протокол, запрашивающий подключение.
protected final String getRequestingScheme()
Получает схему запрашивающего (например, схему HTTP для брандмауэра HTTP).
protected final InetAddress getRequestingSite()
Получает InetAddress сайта, запрашивающего авторизацию, или null, если она недоступна.
protected URL getRequestingURL()
Возвращает URL, приведший к этому запросу на аутентификацию.
protected Authenticator.RequestorType getRequestorType()
Возвращает, является ли запрашивающий лицом прокси-сервером или сервером.
static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
Запрашивает у зарегистрированного в системе объекта аутентификации пароль.
static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает у зарегистрированного в системе объекта аутентификации пароль.
static PasswordAuthentication requestPasswordAuthentication(Authenticator authenticator, String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает пароль у указанного authenticator.
static PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
Запрашивает у зарегистрированного в системе объекта аутентификации пароль.
PasswordAuthentication requestPasswordAuthenticationInstance(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает пароль у этого объекта аутентификации.
static void setDefault(Authenticator a)
Устанавливает объект аутентификации, который будет использоваться сетевым кодом, когда прокси-сервер или HTTP-сервер запрашивают аутентификацию.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

Authenticator

public Authenticator()
Конструктор для вызова подклассами.

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

setDefault

public static void setDefault(Authenticator a)
Устанавливает идентификатор, который будет использоваться кодом сети при запросе аутентификации прокси-сервером или HTTP-сервером.

Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("setDefaultAuthenticator"). Это может привести к исключению java.lang.SecurityException.

Параметры:
a - Идентификатор для установки. Если значение равно null, любой ранее установленный идентификатор удаляется.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает установку стандартного идентификатора.
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

getDefault

public static Authenticator getDefault()
Возвращает стандартный идентификатор. Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("requestPasswordAuthentication"). Это может привести к исключению java.lang.SecurityException. Затем возвращается стандартный идентификатор, если он установлен. В противном случае возвращается null.
Возвращает:
Стандартный идентификатор, если он установлен, null иначе.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает запрос аутентификации пароля.
С:
9
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
Запрашивает у зарегистрированного идентификатора пароль.

Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("requestPasswordAuthentication"). Это может привести к исключению java.lang.SecurityException.

Параметры:
addr - InetAddress сайта, запрашивающего авторизацию, или null, если неизвестен.
port - порт для запрошенного соединения
protocol - Протокол, запрашивающий соединение (getRequestingProtocol())
prompt - Строка запроса для пользователя
scheme - Схема аутентификации
Возвращает:
Имя пользователя/пароль или null, если их невозможно получить.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает запрос аутентификации пароля.
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
Запрашивает у зарегистрированного идентификатора пароль. Это предпочтительный метод для запроса пароля, поскольку имя хоста может быть предоставлено в случаях, когда InetAddress недоступен.

Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("requestPasswordAuthentication"). Это может привести к исключению java.lang.SecurityException.

Параметры:
host - Имя хоста сайта, запрашивающего аутентификацию.
addr - InetAddress сайта, запрашивающего аутентификацию, или null, если неизвестен.
port - порт для запрошенного соединения.
protocol - Протокол, запрашивающий соединение (getRequestingProtocol())
prompt - Строка запроса для пользователя, которая идентифицирует домен аутентификации.
scheme - Схема аутентификации
Возвращает:
Имя пользователя/пароль или null, если их невозможно получить.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает запрос аутентификации пароля.
С:
1.4
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает у зарегистрированного идентификатора пароль.

Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("requestPasswordAuthentication"). Это может привести к исключению java.lang.SecurityException.

Параметры:
host - Имя хоста сайта, запрашивающего аутентификацию.
addr - InetAddress сайта, запрашивающего авторизацию, или null, если неизвестен.
port - порт для запрошенного соединения
protocol - Протокол, запрашивающий соединение (getRequestingProtocol())
prompt - Строка запроса для пользователя
scheme - Схема аутентификации
url - Запрашиваемый URL, вызвавший аутентификацию
reqType - Тип сущности (сервер или прокси), запрашивающей аутентификацию.
Возвращает:
Имя пользователя/пароль или null, если их невозможно получить.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает запрос аутентификации пароля.
С:
1.5
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(Authenticator authenticator, String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает у заданного authenticator пароль. Если заданный authenticator равен null, используется идентификатор, если он зарегистрирован в системе с помощью setDefault.

Сначала, если существует диспетчер безопасности, вызывается его метод checkPermission с разрешением NetPermission("requestPasswordAuthentication"). Это может привести к исключению java.lang.SecurityException.

Параметры:
authenticator - идентификатор или null.
host - Имя хоста сайта, запрашивающего аутентификацию.
addr - InetAddress сайта, запрашивающего авторизацию, или null, если неизвестен.
port - порт для запрошенного соединения
protocol - Протокол, запрашивающий соединение (getRequestingProtocol())
prompt - Строка запроса для пользователя
scheme - Схема аутентификации
url - Запрашиваемый URL, вызвавший аутентификацию
reqType - Тип сущности (сервер или прокси), запрашивающей аутентификацию.
Возвращает:
Имя пользователя/пароль или null если их невозможно получить.
Исключение:
SecurityException - если диспетчер безопасности существует, и его метод checkPermission не разрешает запрос аутентификации пароля.
С:
9
См. также:
  • SecurityManager.checkPermission(java.security.Permission)
  • NetPermission

requestPasswordAuthenticationInstance

public PasswordAuthentication requestPasswordAuthenticationInstance(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Запрашивает пароль у этого идентификатора.
Параметры:
host - Имя хоста сайта, запрашивающего аутентификацию.
addr - InetAddress сайта, запрашивающего авторизацию, или null, если неизвестен.
port - порт для запрошенного соединения
protocol - Протокол, запрашивающий соединение (getRequestingProtocol())
prompt - Строка запроса для пользователя
scheme - Схема аутентификации
url - Запрашиваемый URL, вызвавший аутентификацию
reqType - Тип сущности (сервер или прокси), запрашивающей аутентификацию.
Возвращает:
Имя пользователя/пароль или null, если их невозможно получить
С:
9

getRequestingHost

protected final String getRequestingHost()
Возвращает имя hostname сайта или прокси, запрашивающего аутентификацию, или null если недоступно.
Возвращает:
Имя хоста соединения, требующего аутентификации, или null, если оно недоступно.
С:
1.4

getRequestingSite

protected final InetAddress getRequestingSite()
Получает InetAddress сайта, запрашивающего авторизацию, или null если он недоступен.
Возвращает:
адрес сайта, запрашивающего авторизацию, или null, если он недоступен.

getRequestingPort

protected final int getRequestingPort()
Получает номер порта для запрошенного подключения.
Возвращает:
значение, указывающее порт для запрошенного подключения.

getRequestingProtocol

protected final String getRequestingProtocol()
Возвращает протокол, запрашивающий подключение. Часто он определяется URL, но в будущих JDK он может быть, например, "SOCKS" для защищенного паролем брандмауэра SOCKS5.
Возвращает:
протокол, необязательно с добавлением "/version", где version — номер версии.
См. также:
  • URL.getProtocol()

getRequestingPrompt

protected final String getRequestingPrompt()
Получает строку запроса, заданную запрашивающей стороной.
Возвращает:
строку запроса, заданную запрашивающей стороной (realm для HTTP-запросов)

getRequestingScheme

protected final String getRequestingScheme()
Получает схему запрашивающей стороны (например, схему HTTP для HTTP-брандмауэра).
Возвращает:
схему запрашивающей стороны

getPasswordAuthentication

protected PasswordAuthentication getPasswordAuthentication()
Вызывается, когда необходима авторизация по паролю. Подклассы должны переопределять стандартную реализацию, которая возвращает null.
Возвращает:
Объект PasswordAuthentication, полученный от пользователя, или null, если он не предоставлен.

getRequestingURL

protected URL getRequestingURL()
Возвращает URL, который привел к этому запросу на авторизацию.
Возвращает:
URL запроса
С:
1.5

getRequestorType

protected Authenticator.RequestorType getRequestorType()
Возвращает, является ли запрашивающая сторона прокси или сервером.
Возвращает:
тип авторизации запрашивающей стороны
С:
1.5

© 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.base/java/net/Authenticator.html

Spec-Zone.ru

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