Class ScramServerFunctionalityImpl

    • Constructor Summary

      Constructors 
      Constructor Description
      ScramServerFunctionalityImpl​(java.lang.String digestName, java.lang.String hmacName)
      Creates new ScramServerFunctionalityImpl
      ScramServerFunctionalityImpl​(java.lang.String digestName, java.lang.String hmacName, java.lang.String serverPartNonce)
      /** Creates new ScramServerFunctionalityImpl
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.security.MessageDigest getDigest()  
      javax.crypto.Mac getHmac()  
      ScramServerFunctionality.State getState()
      Gets the state of the authentication procedure
      java.lang.String handleClientFirstMessage​(java.lang.String message)
      Handles client's first message
      boolean isEnded()
      Checks if authentication is completed, either successfully or not.
      boolean isSuccessful()
      Checks if authentication is completed, either successfully or not.
      java.lang.String prepareFinalMessage​(java.lang.String clientFinalMessage)
      Prepares server's final message
      java.lang.String prepareFinalMessageUnchecked​(java.lang.String clientFinalMessage)  
      java.lang.String prepareFirstMessage​(org.apache.activemq.artemis.spi.core.security.scram.UserData userData)
      Prepares server's first message
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ScramServerFunctionalityImpl

        public ScramServerFunctionalityImpl​(java.lang.String digestName,
                                            java.lang.String hmacName)
                                     throws java.security.NoSuchAlgorithmException
        Creates new ScramServerFunctionalityImpl
        Parameters:
        digestName - Digest to be used
        hmacName - HMAC to be used
        Throws:
        java.security.NoSuchAlgorithmException
      • ScramServerFunctionalityImpl

        public ScramServerFunctionalityImpl​(java.lang.String digestName,
                                            java.lang.String hmacName,
                                            java.lang.String serverPartNonce)
                                     throws java.security.NoSuchAlgorithmException
        /** Creates new ScramServerFunctionalityImpl
        Parameters:
        digestName - Digest to be used
        hmacName - HMAC to be used
        serverPartNonce - Server's part of the nonce
        Throws:
        java.security.NoSuchAlgorithmException
    • Method Detail

      • handleClientFirstMessage

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

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

        public java.lang.String prepareFinalMessage​(java.lang.String clientFinalMessage)
                                             throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Description copied from interface: ScramServerFunctionality
        Prepares server's final message
        Specified by:
        prepareFinalMessage in interface ScramServerFunctionality
        Parameters:
        clientFinalMessage - Client's final message
        Returns:
        Server's final message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException
      • prepareFinalMessageUnchecked

        public java.lang.String prepareFinalMessageUnchecked​(java.lang.String clientFinalMessage)
                                                      throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException