Class ScramServerFunctionalityImpl
java.lang.Object
org.apache.activemq.artemis.protocol.amqp.sasl.scram.ScramServerFunctionalityImpl
- All Implemented Interfaces:
ScramServerFunctionality
Provides building blocks for creating SCRAM authentication server
-
Nested Class Summary
Nested classes/interfaces inherited from interface ScramServerFunctionality
ScramServerFunctionality.State -
Constructor Summary
ConstructorsConstructorDescriptionScramServerFunctionalityImpl(String digestName, String hmacName) Creates new ScramServerFunctionalityImplScramServerFunctionalityImpl(String digestName, String hmacName, String serverPartNonce) Creates new ScramServerFunctionalityImpl -
Method Summary
Modifier and TypeMethodDescriptiongetHmac()getState()Gets the state of the authentication procedurehandleClientFirstMessage(String message) Handles client's first messagebooleanisEnded()Checks if authentication is completed, either successfully or not.booleanChecks if authentication is completed, either successfully or not.prepareFinalMessage(String clientFinalMessage) Prepares server's final messageprepareFinalMessageUnchecked(String clientFinalMessage) prepareFirstMessage(UserData userData) Prepares server's first message
-
Constructor Details
-
ScramServerFunctionalityImpl
public ScramServerFunctionalityImpl(String digestName, String hmacName) throws NoSuchAlgorithmException Creates new ScramServerFunctionalityImpl- Parameters:
digestName- Digest to be usedhmacName- HMAC to be used- Throws:
NoSuchAlgorithmException
-
ScramServerFunctionalityImpl
public ScramServerFunctionalityImpl(String digestName, String hmacName, String serverPartNonce) throws NoSuchAlgorithmException Creates new ScramServerFunctionalityImpl- Parameters:
digestName- Digest to be usedhmacName- HMAC to be usedserverPartNonce- Server's part of the nonce- Throws:
NoSuchAlgorithmException
-
-
Method Details
-
handleClientFirstMessage
Handles client's first message- Specified by:
handleClientFirstMessagein interfaceScramServerFunctionality- Parameters:
message- Client's first message- Returns:
- username extracted from the client message
- Throws:
ScramException
-
prepareFirstMessage
Description copied from interface:ScramServerFunctionalityPrepares server's first message- Specified by:
prepareFirstMessagein interfaceScramServerFunctionality- Parameters:
userData- user data needed to prepare the message- Returns:
- Server's first message
-
prepareFinalMessage
Description copied from interface:ScramServerFunctionalityPrepares server's final message- Specified by:
prepareFinalMessagein interfaceScramServerFunctionality- Parameters:
clientFinalMessage- Client's final message- Returns:
- Server's final message
- Throws:
ScramException
-
prepareFinalMessageUnchecked
- Throws:
ScramException
-
isSuccessful
public boolean isSuccessful()Description copied from interface:ScramServerFunctionalityChecks if authentication is completed, either successfully or not. Authentication is completed ifScramServerFunctionality.getState()returns ENDED.- Specified by:
isSuccessfulin interfaceScramServerFunctionality- Returns:
- true if authentication has ended
-
isEnded
public boolean isEnded()Description copied from interface:ScramServerFunctionalityChecks if authentication is completed, either successfully or not. Authentication is completed ifScramServerFunctionality.getState()returns ENDED.- Specified by:
isEndedin interfaceScramServerFunctionality- Returns:
- true if authentication has ended
-
getState
Description copied from interface:ScramServerFunctionalityGets the state of the authentication procedure- Specified by:
getStatein interfaceScramServerFunctionality- Returns:
- Current state
-
getDigest
- Specified by:
getDigestin interfaceScramServerFunctionality
-
getHmac
- Specified by:
getHmacin interfaceScramServerFunctionality
-