Interface PublicKeyAuthenticationReporter


  • public interface PublicKeyAuthenticationReporter
    Provides report about the client side public key authentication progress
    See Also:
    RFC-4252 section 7
    • Method Detail

      • signalAuthenticationAttempt

        default void signalAuthenticationAttempt​(ClientSession session,
                                                 java.lang.String service,
                                                 java.security.KeyPair identity,
                                                 java.lang.String signature)
                                          throws java.lang.Exception
        Sending the initial request to use public key authentication
        Parameters:
        session - The ClientSession
        service - The requesting service name
        identity - The KeyPair identity being attempted - Note: for agent based authentications the private key may be null
        signature - The type of signature that is being used
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close
      • signalAuthenticationExhausted

        default void signalAuthenticationExhausted​(ClientSession session,
                                                   java.lang.String service)
                                            throws java.lang.Exception
        Signals end of public key attempts and optionally switching to other authentication methods. Note: neither signalAuthenticationSuccess nor signalAuthenticationFailure are invoked.
        Parameters:
        session - The ClientSession
        service - The requesting service name
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close
      • signalIdentitySkipped

        default void signalIdentitySkipped​(ClientSession session,
                                           java.lang.String service,
                                           java.security.KeyPair identity)
                                    throws java.lang.Exception
        A KeyPair is is present, but is not attempted because no signature factory for it could be found.
        Parameters:
        session - The ClientSession
        service - The requesting service name
        identity - The KeyPair identity being skipped - Note: for agent based authentications the private key may be null
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close
      • signalSignatureAttempt

        default void signalSignatureAttempt​(ClientSession session,
                                            java.lang.String service,
                                            java.security.KeyPair identity,
                                            java.lang.String signature,
                                            byte[] signed)
                                     throws java.lang.Exception
        Sending the signed response to the server's challenge
        Parameters:
        session - The ClientSession
        service - The requesting service name
        identity - The KeyPair identity being attempted - Note: for agent based authentications the private key may be null
        signature - The type of signature that is being used
        signed - The generated signature data
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close
      • signalAuthenticationSuccess

        default void signalAuthenticationSuccess​(ClientSession session,
                                                 java.lang.String service,
                                                 java.security.KeyPair identity)
                                          throws java.lang.Exception
        Parameters:
        session - The ClientSession
        service - The requesting service name
        identity - The KeyPair identity being attempted - Note: for agent based authentications the private key may be null
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close
      • signalAuthenticationFailure

        default void signalAuthenticationFailure​(ClientSession session,
                                                 java.lang.String service,
                                                 java.security.KeyPair identity,
                                                 boolean partial,
                                                 java.util.List<java.lang.String> serverMethods)
                                          throws java.lang.Exception
        Parameters:
        session - The ClientSession
        service - The requesting service name
        identity - The KeyPair identity being attempted - Note: for agent based authentications the private key may be null
        partial - true if some partial authentication success so far
        serverMethods - The List of authentication methods that can continue
        Throws:
        java.lang.Exception - If failed to handle the callback - Note: may cause session close