Class: HrrRbSsh::Authentication::Method::Password

Inherits:
HrrRbSsh::Authentication::Method show all
Defined in:
lib/hrr_rb_ssh/authentication/method/password.rb,
lib/hrr_rb_ssh/authentication/method/password/context.rb

Defined Under Namespace

Classes: Context

Constant Summary collapse

NAME =
'password'
PREFERENCE =
10

Instance Method Summary collapse

Methods included from SubclassWithPreferenceListable

#[], #inherited, #list_preferred, #list_supported

Constructor Details

#initialize(transport, options) ⇒ Password

Returns a new instance of Password.



13
14
15
16
# File 'lib/hrr_rb_ssh/authentication/method/password.rb', line 13

def initialize transport, options
  @logger = Logger.new(self.class.name)
  @authenticator = options.fetch( 'authentication_password_authenticator', Authenticator.new { false } )
end

Instance Method Details

#authenticate(userauth_request_message) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/hrr_rb_ssh/authentication/method/password.rb', line 18

def authenticate userauth_request_message
  @logger.info { "authenticate" }
  @logger.debug { "userauth request: " + userauth_request_message.inspect }
  username = userauth_request_message[:'user name']
  password = userauth_request_message[:'plaintext password']
  context = Context.new(username, password)
  @authenticator.authenticate context
end