net.schmizz.sshj.userauth
Interface UserAuth

All Known Implementing Classes:
UserAuthImpl

public interface UserAuth

User authentication API. See RFC 4252.


Method Summary
 void authenticate(String username, Service nextService, Iterable<AuthMethod> methods)
          Attempt to authenticate username using each of methods in order.
 String getBanner()
          Returns the authentication banner (if any).
 Deque<UserAuthException> getSavedExceptions()
           
 int getTimeout()
           
 boolean hadPartialSuccess()
           
 void setTimeout(int timeout)
          Set the timeout for any method to successfully authenticate before it is abandoned.
 

Method Detail

authenticate

void authenticate(String username,
                  Service nextService,
                  Iterable<AuthMethod> methods)
                  throws UserAuthException,
                         TransportException
Attempt to authenticate username using each of methods in order. nextService is the Service that will be enabled on successful authentication.

Authentication fails if there are no method available, i.e. if all the method failed or there were method available but could not be attempted because the server did not allow them. In this case, a UserAuthException is thrown with its cause as the last authentication failure. Other UserAuthException's which may have been ignored may be accessed via getSavedExceptions().

Further attempts may also be made by catching UserAuthException and retrying with this method.

Parameters:
username - the user to authenticate
nextService - the service to set on successful authentication
methods - the AuthMethod's to try
Throws:
UserAuthException - in case of authentication failure
TransportException - if there was a transport-layer error

getBanner

String getBanner()
Returns the authentication banner (if any). In some cases this is available even before the first authentication request has been made.

Returns:
the banner, or an empty string if none was received

getSavedExceptions

Deque<UserAuthException> getSavedExceptions()
Returns:
saved exceptions that might have been ignored because there were more authentication method available.

getTimeout

int getTimeout()
Returns:
the timeout for a method to successfully authenticate before it is abandoned.

hadPartialSuccess

boolean hadPartialSuccess()
Returns:
whether authentication was partially successful. Some server's may be configured to require multiple authentications; and this value will be true if at least one of the method supplied succeeded.

setTimeout

void setTimeout(int timeout)
Set the timeout for any method to successfully authenticate before it is abandoned.

Parameters:
timeout - the timeout in seconds


Copyright © 2009-2012. All Rights Reserved.