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