Interface ClientAuthenticator

All Superinterfaces:
KeyStorePasswordProvider
All Known Implementing Classes:
DefaultClientAuthenticator, HeadlessClientAuthenticator, PasswordClientAuthenticator

public interface ClientAuthenticator extends KeyStorePasswordProvider
  • Method Details

    • getAuthenticator

      Authenticator getAuthenticator()
      Get a standard Java authenticator for HTTP and other standard network connections
      Returns:
      authenticator object
    • processPasswordCallbacks

      boolean processPasswordCallbacks(String title, String serverType, String serverName, NameCallback nameCb, PasswordCallback passCb, ChoiceCallback choiceCb, AnonymousCallback anonymousCb, String loginError)
      Process Ghidra Server password authentication callbacks.
      Parameters:
      title - password prompt title if GUI is used
      serverType - type of server (label associated with serverName)
      serverName - name of server
      nameCb - provides storage for user login name. A null indicates that the default user name will be used, @see ClientUtil#getUserName()
      passCb - provides storage for user password, @see PasswordCallback#setPassword(char[])
      choiceCb - specifies choice between NT Domain authentication (index=0) and local password file authentication (index=1). Set selected index to specify authenticator to be used,
      anonymousCb - may be used to request anonymous read-only access to the server. A null is specified if anonymous access has not been enabed on the server.
      loginError - previous login error message or null for first attempt
      Returns:
      true if password provided, false if entry cancelled
      See Also:
    • promptForReconnect

      boolean promptForReconnect(Component parent, String message)
      Prompt user for reconnect
      Parameters:
      parent - dialog parent component or null if not applicable
      message -
      Returns:
      return true if reconnect should be attempted
    • getNewPassword

      char[] getNewPassword(Component parent, String serverInfo, String username)
      Get new user password
      Parameters:
      parent - dialog parent component or null if not applicable
      serverInfo - server host info
      username -
      Returns:
      new password or null if password should not be changed, if not null array will be cleared by caller
    • isSSHKeyAvailable

      boolean isSSHKeyAvailable()
      Returns:
      true if SSH private key is available for authentication
    • processSSHSignatureCallbacks

      boolean processSSHSignatureCallbacks(String serverName, NameCallback nameCb, SSHSignatureCallback sshCb)
      Process Ghidra Server SSH authentication callbacks.
      Parameters:
      serverName - name of server
      nameCb - provides storage for user login name. A null indicates that the default user name will be used, @see ClientUtil#getUserName().
      sshCb - provides authentication token to be signed with private key, @see SSHAuthenticationCallback#sign(SSHPrivateKey)
      Returns: