public interface AuthenticationPlugin extends Extension
MysqlIO instance if it's reusable (see isReusable()) or a new instance
in each MysqlIO.proceedHandshakeWithPluggableAuthentication(String, String, String, Buffer) call.| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
getProtocolPluginName()
Returns the name that the MySQL server uses on
the wire for this plugin
|
boolean |
isReusable() |
boolean |
nextAuthenticationStep(Buffer fromServer,
java.util.List<Buffer> toServer)
Process authentication handshake data from server and optionally
produce data to be sent back to the server.
|
boolean |
requiresConfidentiality()
Does this plugin require the connection itself to be confidential
(i.e. tls/ssl)...Highly recommended to return "true" for plugins
that return the credentials in the clear.
|
void |
setAuthenticationParameters(java.lang.String user,
java.lang.String password)
This method called from cJ before first nextAuthenticationStep
call.
|
java.lang.String getProtocolPluginName()
boolean requiresConfidentiality()
boolean isReusable()
void setAuthenticationParameters(java.lang.String user,
java.lang.String password)
user - password - boolean nextAuthenticationStep(Buffer fromServer, java.util.List<Buffer> toServer) throws java.sql.SQLException
fromServer - a buffer containing handshake data payload from
server (can be empty).toServer - list of buffers with data to be sent to the server
(the list can be empty, but buffers in the list
should contain data).java.sql.SQLException