public interface AuthenticationHandler
Since the authentication process can be stateful, an instance of this class can be stateful too.
Do not share a single instance of this interface if you don't explicitly need to do so.
Modifier and Type | Method and Description |
---|---|
String |
auth(String clientInput)
Initially called using an input string in the RFC2554 form: "AUTH
|
Object |
getIdentity()
If the authentication process was successful, this returns the identity
of the user.
|
String auth(String clientInput) throws RejectException
Depending on the authentication mechanism, the handshaking process may require
many request-response passes. This method will return null
only when the authentication process is finished.
AuthenticationHandlers are associated with a single authentication exchange. If the exchange is stopped (ie fails) and is restarted, a new AuthenticationHandler is created. Upon successful authentication, your implementation of this object becomes part of the MessageContext. Your MessageHandler may upcast your AuthenticationHandler to obtain further information, such as identity.
AuthenticationHandlers do not need to handle the "*" cancel response; this is handled by the framework.
clientInput
- The client's input, eg "AUTH PLAIN dGVzdAB0ZXN0ADEyMzQ="null
if the authentication process is finished, otherwise a string to hand back to the client.RejectException
- if authentication fails.Object getIdentity()
Copyright © 2006–2017. All rights reserved.