public class Sha256PasswordPlugin extends java.lang.Object implements AuthenticationPlugin<NativePacketPayload>
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
password |
static java.lang.String |
PLUGIN_NAME |
protected Protocol<NativePacketPayload> |
protocol |
protected boolean |
publicKeyRequested |
protected java.lang.String |
publicKeyString |
protected java.lang.String |
seed |
protected RuntimeProperty<java.lang.String> |
serverRSAPublicKeyFile |
| Constructor and Description |
|---|
Sha256PasswordPlugin() |
| Modifier and Type | Method and Description |
|---|---|
void |
destroy()
Called by the driver when this extension should release any resources
it is holding and cleanup internally before the connection is
closed.
|
protected byte[] |
encryptPassword() |
protected byte[] |
encryptPassword(java.lang.String transformation) |
java.lang.String |
getProtocolPluginName()
Returns the name that the MySQL server uses on
the wire for this plugin
|
void |
init(Protocol<NativePacketPayload> prot)
We need direct Protocol reference because it isn't available from Connection before authentication complete.
|
boolean |
isReusable() |
boolean |
nextAuthenticationStep(NativePacketPayload fromServer,
java.util.List<NativePacketPayload> toServer)
Process authentication handshake data from server and optionally produce data to be sent back to the server.
|
protected static java.lang.String |
readRSAKey(java.lang.String pkPath,
PropertySet propertySet,
ExceptionInterceptor exceptionInterceptor) |
boolean |
requiresConfidentiality()
Does this plugin require the connection itself to be confidential
(i.e.
|
void |
setAuthenticationParameters(java.lang.String user,
java.lang.String password)
This method called from cJ before first nextAuthenticationStep
call.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitresetpublic static java.lang.String PLUGIN_NAME
protected Protocol<NativePacketPayload> protocol
protected java.lang.String password
protected java.lang.String seed
protected boolean publicKeyRequested
protected java.lang.String publicKeyString
protected RuntimeProperty<java.lang.String> serverRSAPublicKeyFile
public void init(Protocol<NativePacketPayload> prot)
AuthenticationPlugininit in interface AuthenticationPlugin<NativePacketPayload>prot - protocol instancepublic void destroy()
AuthenticationPlugindestroy in interface AuthenticationPlugin<NativePacketPayload>public java.lang.String getProtocolPluginName()
AuthenticationPlugingetProtocolPluginName in interface AuthenticationPlugin<NativePacketPayload>public boolean requiresConfidentiality()
AuthenticationPluginrequiresConfidentiality in interface AuthenticationPlugin<NativePacketPayload>public boolean isReusable()
isReusable in interface AuthenticationPlugin<NativePacketPayload>public void setAuthenticationParameters(java.lang.String user,
java.lang.String password)
AuthenticationPluginsetAuthenticationParameters in interface AuthenticationPlugin<NativePacketPayload>user - user namepassword - user passwordpublic boolean nextAuthenticationStep(NativePacketPayload fromServer, java.util.List<NativePacketPayload> toServer)
AuthenticationPluginnextAuthenticationStep in interface AuthenticationPlugin<NativePacketPayload>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).protected byte[] encryptPassword()
protected byte[] encryptPassword(java.lang.String transformation)
protected static java.lang.String readRSAKey(java.lang.String pkPath,
PropertySet propertySet,
ExceptionInterceptor exceptionInterceptor)