Class ScramClientFunctionalityImpl

    • Constructor Summary

      Constructors 
      Constructor Description
      ScramClientFunctionalityImpl​(java.lang.String digestName, java.lang.String hmacName)
      Create new ScramClientFunctionalityImpl
      ScramClientFunctionalityImpl​(java.lang.String digestName, java.lang.String hmacName, java.lang.String clientNonce)
      Create new ScramClientFunctionalityImpl
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void checkServerFinalMessage​(java.lang.String serverFinalMessage)
      Checks if the server's final message is valid
      ScramClientFunctionality.State getState()
      Gets the state of the authentication procedure
      boolean isEnded()
      Checks if authentication is completed, either successfully or not.
      boolean isSuccessful()
      Checks if authentication is successful.
      java.lang.String prepareFinalMessage​(java.lang.String password, java.lang.String serverFirstMessage)
      Prepares client's final message
      java.lang.String prepareFirstMessage​(java.lang.String username)
      Prepares first client message You may want to use StringPrep.isContainingProhibitedCharacters(String) in order to check if the username contains only valid characters
      • Methods inherited from class java.lang.Object

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

      • ScramClientFunctionalityImpl

        public ScramClientFunctionalityImpl​(java.lang.String digestName,
                                            java.lang.String hmacName)
        Create new ScramClientFunctionalityImpl
        Parameters:
        digestName - Digest to be used
        hmacName - HMAC to be used
      • ScramClientFunctionalityImpl

        public ScramClientFunctionalityImpl​(java.lang.String digestName,
                                            java.lang.String hmacName,
                                            java.lang.String clientNonce)
        Create new ScramClientFunctionalityImpl
        Parameters:
        digestName - Digest to be used
        hmacName - HMAC to be used
        clientNonce - Client nonce to be used
    • Method Detail

      • prepareFirstMessage

        public java.lang.String prepareFirstMessage​(java.lang.String username)
                                             throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Prepares first client message You may want to use StringPrep.isContainingProhibitedCharacters(String) in order to check if the username contains only valid characters
        Specified by:
        prepareFirstMessage in interface ScramClientFunctionality
        Parameters:
        username - Username
        Returns:
        prepared first message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException - if username contains prohibited characters
      • prepareFinalMessage

        public java.lang.String prepareFinalMessage​(java.lang.String password,
                                                    java.lang.String serverFirstMessage)
                                             throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Description copied from interface: ScramClientFunctionality
        Prepares client's final message
        Specified by:
        prepareFinalMessage in interface ScramClientFunctionality
        Parameters:
        password - User password
        serverFirstMessage - Server's first message
        Returns:
        Client's final message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException - if there is an error processing server's message, i.e. it violates the protocol
      • checkServerFinalMessage

        public void checkServerFinalMessage​(java.lang.String serverFinalMessage)
                                     throws org.apache.activemq.artemis.spi.core.security.scram.ScramException
        Description copied from interface: ScramClientFunctionality
        Checks if the server's final message is valid
        Specified by:
        checkServerFinalMessage in interface ScramClientFunctionality
        Parameters:
        serverFinalMessage - Server's final message
        Throws:
        org.apache.activemq.artemis.spi.core.security.scram.ScramException - if there is an error processing server's message, i.e. it violates the protocol