IPWorks Auth 2020 Python Edition

Questions / Feedback?

on_ssh_keyboard_interactive Event

Fired when the class receives a request for user input from the server.

Syntax

class SSHAuthSSHKeyboardInteractiveEventParams(object):
  @property
  def name() -> str: ...
  @property
  def instructions() -> str: ...
  @property
  def prompt() -> str: ...
  @property
  def response() -> str: ...
  @response.setter
  def response(value) -> None: ...
  @property
  def echo_response() -> bool: ...

# In class SSHAuth:
@property
def on_ssh_keyboard_interactive() -> Callable[[SSHAuthSSHKeyboardInteractiveEventParams], None]: ...
@on_ssh_keyboard_interactive.setter
def on_ssh_keyboard_interactive(event_hook: Callable[[SSHAuthSSHKeyboardInteractiveEventParams], None]) -> None: ...

Remarks

on_ssh_keyboard_interactive is fired during the user authentication stage of the SSH logon process. During authentication, the class will request a list of available authentication methods for the ssh_user. For example, if the ssh_host responds with "keyboard-interactive", the class will fire this event to allow the client application to set the password.

During authentication, the SSH server may respond with a request for the user's authentication information. Name is a server-provided value associated with the authentication method such as "CRYPTOCard Authentication". Instructions will contain specific instructions, also supplied by the server, for how the user should respond.

Along with these values, the server will also send at least one input Prompt to be displayed to and filled out by the user. Response should be set to the user's input, and will be sent back in the user authentication information response. EchoResponse is a server recommendation for whether or not the user's response should be echoed back during input.

Note: the server may send several prompts in a single packet. The class will fire the on_ssh_keyboard_interactive event once for each prompt.

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks Auth 2020 Python Edition - Version 20.0 [Build 8155]