Class UserAuthPassword
- java.lang.Object
-
- org.apache.sshd.common.util.logging.AbstractLoggingBean
-
- org.apache.sshd.client.auth.AbstractUserAuth
-
- org.apache.sshd.client.auth.password.UserAuthPassword
-
- All Implemented Interfaces:
UserAuth
,ClientSessionHolder
,UserAuthInstance<ClientSession>
,NamedResource
public class UserAuthPassword extends AbstractUserAuth
Implements the client-side "password" authentication mechanism
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
current
static java.lang.String
NAME
private java.util.Iterator<java.lang.String>
passwords
-
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
-
Fields inherited from interface org.apache.sshd.common.NamedResource
BY_NAME_COMPARATOR, NAME_EXTRACTOR
-
-
Constructor Summary
Constructors Constructor Description UserAuthPassword()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
init(ClientSession session, java.lang.String service)
protected boolean
processAuthDataRequest(ClientSession session, java.lang.String service, Buffer buffer)
protected boolean
sendAuthDataRequest(ClientSession session, java.lang.String service)
protected IoWriteFuture
sendPassword(Buffer buffer, ClientSession session, java.lang.String oldPassword, java.lang.String newPassword)
Sends the password via aSSH_MSG_USERAUTH_REQUEST
message.-
Methods inherited from class org.apache.sshd.client.auth.AbstractUserAuth
destroy, getClientSession, getName, getService, getSession, process, toString
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
- See Also:
- Constant Field Values
-
passwords
private java.util.Iterator<java.lang.String> passwords
-
current
private java.lang.String current
-
-
Method Detail
-
init
public void init(ClientSession session, java.lang.String service) throws java.lang.Exception
- Specified by:
init
in interfaceUserAuth
- Overrides:
init
in classAbstractUserAuth
- Parameters:
session
- TheClientSession
service
- The requesting service name- Throws:
java.lang.Exception
- If failed to initialize the mechanism
-
sendAuthDataRequest
protected boolean sendAuthDataRequest(ClientSession session, java.lang.String service) throws java.lang.Exception
- Specified by:
sendAuthDataRequest
in classAbstractUserAuth
- Throws:
java.lang.Exception
-
processAuthDataRequest
protected boolean processAuthDataRequest(ClientSession session, java.lang.String service, Buffer buffer) throws java.lang.Exception
- Specified by:
processAuthDataRequest
in classAbstractUserAuth
- Throws:
java.lang.Exception
-
sendPassword
protected IoWriteFuture sendPassword(Buffer buffer, ClientSession session, java.lang.String oldPassword, java.lang.String newPassword) throws java.io.IOException
Sends the password via aSSH_MSG_USERAUTH_REQUEST
message. If old and new password are not the same then it requests a password modification from the server (which may be denied if the server does not support this feature).- Parameters:
buffer
- TheBuffer
to re-use for sending the messagesession
- The targetClientSession
oldPassword
- The previous passwordnewPassword
- The new password- Returns:
- An
IoWriteFuture
that can be used to wait and check on the success/failure of the request packet being sent - Throws:
java.io.IOException
- If failed to send the message.
-
-