java.lang.Object
jakarta.mail.Authenticator
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 creating a subclass, and registering an instance of that subclass with the session when it is created. When authentication is required, the system will invoke a method on the subclass (like getPasswordAuthentication). The subclass's method can query about the authentication being requested with a number of inherited methods (getRequestingXXX()), and form an appropriate message for the user.
All methods that request authentication have a default implementation that fails.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
private String
private String
private InetAddress
private String
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final String
protected PasswordAuthentication
Called when password authentication is needed.protected final int
protected final String
protected final String
Give the protocol that's requesting the connection.protected final InetAddress
(package private) final PasswordAuthentication
requestPasswordAuthentication
(InetAddress addr, int port, String protocol, String prompt, String defaultUserName) Ask the authenticator for a password.
-
Field Details
-
requestingSite
-
requestingPort
private int requestingPort -
requestingProtocol
-
requestingPrompt
-
requestingUserName
-
-
Constructor Details
-
Authenticator
public Authenticator()Creates a defaultAuthenticator
. There are no abstract methods, but to be useful the user must subclass.- See Also:
-
-
Method Details
-
requestPasswordAuthentication
final PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String defaultUserName) Ask the authenticator for a password.- Parameters:
addr
- The InetAddress of the site requesting authorization, or null if not known.port
- the port for the requested connectionprotocol
- The protocol that's requesting the connection (@see java.net.Authenticator.getProtocol())prompt
- A prompt string for the user- Returns:
- The username/password, or null if one can't be gotten.
-
getRequestingSite
- Returns:
- the InetAddress of the site requesting authorization, or null if it's not available.
-
getRequestingPort
protected final int getRequestingPort()- Returns:
- the port for the requested connection
-
getRequestingProtocol
Give the protocol that's requesting the connection. Often this will be based on a URLName.- Returns:
- the protcol
- See Also:
-
getRequestingPrompt
- Returns:
- the prompt string given by the requestor
-
getDefaultUserName
- Returns:
- the default user name given by the requestor
-
getPasswordAuthentication
Called when password authentication is needed. Subclasses should override the default implementation, which returns null.Note that if this method uses a dialog to prompt the user for this information, the dialog needs to block until the user supplies the information. This method can not simply return after showing the dialog.
- Returns:
- The PasswordAuthentication collected from the user, or null if none is provided.
-