Package twisted :: Package conch :: Package ssh :: Module userauth :: Class SSHUserAuthClient
[show private | hide private]
[frames | no frames]

Class SSHUserAuthClient

Logger --+    
         |    
SSHService --+
             |
            SSHUserAuthClient

Known Subclasses:
SshUserAuth

Method Summary
  __init__(self, user, instance)
  askForAuth(self, kind, extraData)
  auth_keyboard_interactive(self)
  auth_password(self)
  auth_publickey(self)
  getGenericAnswers(self, name, instruction, prompts)
Returns a Deferred with the responses to the promopts.
Deferred getPassword(self, prompt)
Return a Deferred that will be called back with a password.
Deferred getPrivateKey(self)
Return a Deferred that will be called back with the private key corresponding to the last public key from getPublicKey().
str/None getPublicKey(self)
Return a public key for the user.
  serviceStarted(self)
called when the service is active on the transport.
  signData(self, publicKey, signData)
Sign the given data with the given public key blob.
  ssh_USERAUTH_FAILURE(self, packet)
  ssh_USERAUTH_PK_OK(self, packet)
  ssh_USERAUTH_SUCCESS(self, packet)
  tryAuth(self, kind)
  _cbGenericAnswers(self, responses)
  _cbPassword(self, password)
  _cbSignData(self, privateKey, signData)
  _cbSignedData(self, signedData)
  _ebAuth(self, ignored, *args)
  _setNewPass(self, np)
  _setOldPass(self, op)
Inherited from SSHService: logPrefix, packetReceived, serviceStopped

Class Variable Summary
str name = 'ssh-userauth'
list preferredOrder = ['publickey', 'password', 'keyboard-int...
dict protocolMessages = {50: 'MSG_USERAUTH_REQUEST', 51: 'MSG...
Inherited from SSHService: transport
Inherited from Logger: __implemented__, __providedBy__, __provides__

Method Details

getGenericAnswers(self, name, instruction, prompts)

Returns a Deferred with the responses to the promopts.
Parameters:
name - The name of the authentication currently in progress.
instruction - Describes what the authentication wants.
prompts - A list of (prompt, echo) pairs, where prompt is a string to display and echo is a boolean indicating whether the user's response should be echoed as they type it.

getPassword(self, prompt=None)

Return a Deferred that will be called back with a password. prompt is a string to display for the password, or None for a generic 'user@hostname's password: '.
Parameters:
prompt
           (type=str/None)
Returns:
Deferred

getPrivateKey(self)

Return a Deferred that will be called back with the private key corresponding to the last public key from getPublicKey(). If the private key is not available, errback on the Deferred.
Returns:
Deferred

getPublicKey(self)

Return a public key for the user. If no more public keys are available, return None.
Returns:
str/None

serviceStarted(self)

called when the service is active on the transport.
Overrides:
twisted.conch.ssh.service.SSHService.serviceStarted (inherited documentation)

signData(self, publicKey, signData)

Sign the given data with the given public key blob. By default, this will call getPrivateKey to get the private key, the sign the data using keys.signData. However, this is factored out so that it can use alternate methods, such as a key agent.

Class Variable Details

name

Type:
str
Value:
'ssh-userauth'                                                         

preferredOrder

Type:
list
Value:
['publickey', 'password', 'keyboard-interactive']                      

protocolMessages

Type:
dict
Value:
{50: 'MSG_USERAUTH_REQUEST',
 51: 'MSG_USERAUTH_FAILURE',
 52: 'MSG_USERAUTH_SUCCESS',
 53: 'MSG_USERAUTH_BANNER',
 60: 'MSG_USERAUTH_PK_OK',
 61: 'MSG_USERAUTH_INFO_RESPONSE'}                                     

Generated by Epydoc 2.1 on Thu Aug 16 09:55:10 2007 http://epydoc.sf.net