Spec-Zone.ru › OpenJDK 27

Class Authenticator

java.lang.Object
java.net.Authenticator
public abstract class Authenticator extends Object
The class Authenticator represents an object that knows how to obtain authentication for a network connection. Usually, it will do this by prompting the user for information.

Applications use this class by overriding getPasswordAuthentication() in a sub-class. This method will typically use the various getXXX() accessor methods to get information about the entity requesting authentication. It must then acquire a username and password either by interacting with the user or through some other non-interactive means. The credentials are then returned as a PasswordAuthentication return value.

An instance of this concrete sub-class is then registered with the system by calling setDefault(Authenticator). When authentication is required, the system will invoke one of the requestPasswordAuthentication() methods which in turn will call the getPasswordAuthentication() method of the registered object.

All methods that request authentication have a default implementation that fails.

Since:
1.2
See Also:
  • setDefault(java.net.Authenticator)
  • getPasswordAuthentication()

Nested Class Summary

Modifier and Type Class Description
static enum  Authenticator.RequestorType
The type of the entity requesting authentication.

Constructor Summary

Constructor Description
Authenticator()
Constructor for subclasses to call.

Method Summary

Modifier and Type Method Description
static Authenticator getDefault()
Gets the default authenticator.
protected PasswordAuthentication getPasswordAuthentication()
Called when password authorization is needed.
protected final String getRequestingHost()
Gets the hostname of the site or proxy requesting authentication, or null if not available.
protected final int getRequestingPort()
Gets the port number for the requested connection.
protected final String getRequestingPrompt()
Gets the prompt string given by the requestor.
protected final String getRequestingProtocol()
Give the protocol that's requesting the connection.
protected final String getRequestingScheme()
Gets the scheme of the requestor (the HTTP scheme for an HTTP firewall, for example).
protected final InetAddress getRequestingSite()
Gets the InetAddress of the site requesting authorization, or null if not available.
protected URL getRequestingURL()
Returns the URL that resulted in this request for authentication.
protected Authenticator.RequestorType getRequestorType()
Returns whether the requestor is a Proxy or a Server.
static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
Ask the authenticator that has been registered with the system for a password.
static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask the authenticator that has been registered with the system for a password.
static PasswordAuthentication requestPasswordAuthentication(Authenticator authenticator, String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask the given authenticator for a password.
static PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
Ask the authenticator that has been registered with the system for a password.
PasswordAuthentication requestPasswordAuthenticationInstance(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask this authenticator for a password.
static void setDefault(Authenticator a)
Sets the authenticator that will be used by the networking code when a proxy or an HTTP server asks for authentication.

Methods declared in class Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and Type Method Description
protected Object clone()
Creates and returns a copy of this object.
boolean equals(Object obj)
Indicates whether some other object is "equal to" this one.
protected void finalize()
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
final Class<?> getClass()
Returns the runtime class of this Object.
int hashCode()
Returns a hash code value for this object.
final void notify()
Wakes up a single thread that is waiting on this object's monitor.
final void notifyAll()
Wakes up all threads that are waiting on this object's monitor.
String toString()
Returns a string representation of the object.
final void wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
final void wait(long timeoutMillis)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
final void wait(long timeoutMillis, int nanos)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

Constructor Details

Authenticator

public Authenticator()
Constructor for subclasses to call.

Method Details

setDefault

public static void setDefault(Authenticator a)
Sets the authenticator that will be used by the networking code when a proxy or an HTTP server asks for authentication.
Parameters:
a - The authenticator to be set. If a is null then any previously set authenticator is removed.

getDefault

public static Authenticator getDefault()
Gets the default authenticator.
Returns:
The default authenticator, if set, null otherwise.
Since:
9

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
Ask the authenticator that has been registered with the system for a password.
Parameters:
addr - The InetAddress of the site requesting authorization, or null if not known.
port - the port for the requested connection
protocol - The protocol that's requesting the connection (getRequestingProtocol())
prompt - A prompt string for the user
scheme - The authentication scheme
Returns:
The username/password, or null if one can't be gotten.

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
Ask the authenticator that has been registered with the system for a password. This is the preferred method for requesting a password because the hostname can be provided in cases where the InetAddress is not available.
Parameters:
host - The hostname of the site requesting authentication.
addr - The InetAddress of the site requesting authentication, or null if not known.
port - the port for the requested connection.
protocol - The protocol that's requesting the connection (getRequestingProtocol())
prompt - A prompt string for the user which identifies the authentication realm.
scheme - The authentication scheme
Returns:
The username/password, or null if one can't be gotten.
Since:
1.4

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask the authenticator that has been registered with the system for a password.
Parameters:
host - The hostname of the site requesting authentication.
addr - The InetAddress of the site requesting authorization, or null if not known.
port - the port for the requested connection
protocol - The protocol that's requesting the connection (getRequestingProtocol())
prompt - A prompt string for the user
scheme - The authentication scheme
url - The requesting URL that caused the authentication
reqType - The type (server or proxy) of the entity requesting authentication.
Returns:
The username/password, or null if one can't be gotten.
Since:
1.5

requestPasswordAuthentication

public static PasswordAuthentication requestPasswordAuthentication(Authenticator authenticator, String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask the given authenticator for a password. If the given authenticator is null, the authenticator, if any, that has been registered with the system using setDefault is used.
Parameters:
authenticator - the authenticator, or null.
host - The hostname of the site requesting authentication.
addr - The InetAddress of the site requesting authorization, or null if not known.
port - the port for the requested connection
protocol - The protocol that's requesting the connection (getRequestingProtocol())
prompt - A prompt string for the user
scheme - The authentication scheme
url - The requesting URL that caused the authentication
reqType - The type (server or proxy) of the entity requesting authentication.
Returns:
The username/password, or null if one can't be gotten.
Since:
9

requestPasswordAuthenticationInstance

public PasswordAuthentication requestPasswordAuthenticationInstance(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
Ask this authenticator for a password.
Parameters:
host - The hostname of the site requesting authentication.
addr - The InetAddress of the site requesting authorization, or null if not known.
port - the port for the requested connection
protocol - The protocol that's requesting the connection (getRequestingProtocol())
prompt - A prompt string for the user
scheme - The authentication scheme
url - The requesting URL that caused the authentication
reqType - The type (server or proxy) of the entity requesting authentication.
Returns:
The username/password, or null if one can't be gotten
Since:
9

getRequestingHost

protected final String getRequestingHost()
Gets the hostname of the site or proxy requesting authentication, or null if not available.
Returns:
the hostname of the connection requiring authentication, or null if it's not available.
Since:
1.4

getRequestingSite

protected final InetAddress getRequestingSite()
Gets the InetAddress of the site requesting authorization, or null if not available.
Returns:
the InetAddress of the site requesting authorization, or null if it's not available.

getRequestingPort

protected final int getRequestingPort()
Gets the port number for the requested connection.
Returns:
an int indicating the port for the requested connection.

getRequestingProtocol

protected final String getRequestingProtocol()
Give the protocol that's requesting the connection. Often this will be based on a URL, but in a future JDK it could be, for example, "SOCKS" for a password-protected SOCKS5 firewall.
Returns:
the protocol, optionally followed by "/version", where version is a version number.
See Also:
  • URL.getProtocol()

getRequestingPrompt

protected final String getRequestingPrompt()
Gets the prompt string given by the requestor.
Returns:
the prompt string given by the requestor (realm for http requests)

getRequestingScheme

protected final String getRequestingScheme()
Gets the scheme of the requestor (the HTTP scheme for an HTTP firewall, for example).
Returns:
the scheme of the requestor

getPasswordAuthentication

protected PasswordAuthentication getPasswordAuthentication()
Called when password authorization is needed. Subclasses should override the default implementation, which returns null.
Returns:
The PasswordAuthentication collected from the user, or null if none is provided.

getRequestingURL

protected URL getRequestingURL()
Returns the URL that resulted in this request for authentication. If the corresponding request does not specify a URL, this method returns null.
Returns:
the requesting URL, or null if not available.
Since:
1.5

getRequestorType

protected Authenticator.RequestorType getRequestorType()
Returns whether the requestor is a Proxy or a Server.
Returns:
the authentication type of the requestor
Since:
1.5

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 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