Class PseudoAuthenticator
java.lang.Object
org.apache.hadoop.security.authentication.client.PseudoAuthenticator
- All Implemented Interfaces:
Authenticator
The
PseudoAuthenticator implementation provides an authentication equivalent to Hadoop's
Simple authentication, it trusts the value of the 'user.name' Java System property.
The 'user.name' value is propagated using an additional query string parameter USER_NAME ('user.name').
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidauthenticate(URL url, AuthenticatedURL.Token token) Performs simple authentication against the specified URL.protected StringReturns the current user name.voidsetConnectionConfigurator(ConnectionConfigurator configurator) Sets aConnectionConfiguratorinstance to use for configuring connections.
-
Field Details
-
USER_NAME
Name of the additional parameter that carries the 'user.name' value.- See Also:
-
-
Constructor Details
-
PseudoAuthenticator
public PseudoAuthenticator()
-
-
Method Details
-
setConnectionConfigurator
Sets aConnectionConfiguratorinstance to use for configuring connections.- Specified by:
setConnectionConfiguratorin interfaceAuthenticator- Parameters:
configurator- theConnectionConfiguratorinstance.
-
authenticate
public void authenticate(URL url, AuthenticatedURL.Token token) throws IOException, AuthenticationException Performs simple authentication against the specified URL.If a token is given it does a NOP and returns the given token.
If no token is given, it will perform an HTTP
OPTIONSrequest injecting an additional parameterUSER_NAMEin the query string with the value returned by thegetUserName()method.If the response is successful it will update the authentication token.
- Specified by:
authenticatein interfaceAuthenticator- Parameters:
url- the URl to authenticate against.token- the authentication token being used for the user.- Throws:
IOException- if an IO error occurred.AuthenticationException- if an authentication error occurred.
-
getUserName
Returns the current user name.This implementation returns the value of the Java system property 'user.name'
- Returns:
- the current user name.
-