Interface ScramServerFunctionality

  • All Known Implementing Classes:
    ScramServerFunctionalityImpl

    public interface ScramServerFunctionality
    Provides building blocks for creating SCRAM authentication server
    • Method Detail

      • handleClientFirstMessage

        java.lang.String handleClientFirstMessage​(java.lang.String message)
                                           throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Handles client's first message
        Parameters:
        message - Client's first message
        Returns:
        username extracted from the client message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException
      • prepareFirstMessage

        java.lang.String prepareFirstMessage​(org.apache.activemq.artemis.spi.core.security.scram.UserData userData)
        Prepares server's first message
        Parameters:
        userData - user data needed to prepare the message
        Returns:
        Server's first message
      • prepareFinalMessage

        java.lang.String prepareFinalMessage​(java.lang.String clientFinalMessage)
                                      throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Prepares server's final message
        Parameters:
        clientFinalMessage - Client's final message
        Returns:
        Server's final message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException
      • isSuccessful

        boolean isSuccessful()
        Checks if authentication is completed, either successfully or not. Authentication is completed if getState() returns ENDED.
        Returns:
        true if authentication has ended
      • isEnded

        boolean isEnded()
        Checks if authentication is completed, either successfully or not. Authentication is completed if getState() returns ENDED.
        Returns:
        true if authentication has ended
      • getDigest

        java.security.MessageDigest getDigest()
      • getHmac

        javax.crypto.Mac getHmac()