Package org.mariadb.jdbc.plugin
Interface AuthenticationPlugin
-
- All Known Implementing Classes:
CachingSha2PasswordPlugin,ClearPasswordPlugin,Ed25519PasswordPlugin,NativePasswordPlugin,SendGssApiAuthPacket,SendPamAuthPacket
public interface AuthenticationPluginAuthentication plugin descriptor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default byte[]hash(Credential credential)Return Hashvoidinitialize(java.lang.String authenticationData, byte[] seed, Configuration conf, HostAddress hostAddress)Plugin initialization.default booleanisMitMProof()Can plugins is MitM-proof, permitting returning HASHReadableByteBufprocess(Writer encoder, Reader decoder, Context context)Process plugin authentication.default booleanrequireSsl()Authentication plugin required SSL to be usedjava.lang.Stringtype()Authentication plugin type.
-
-
-
Method Detail
-
type
java.lang.String type()
Authentication plugin type.- Returns:
- authentication plugin type. ex: mysql_native_password
-
initialize
void initialize(java.lang.String authenticationData, byte[] seed, Configuration conf, HostAddress hostAddress)Plugin initialization.- Parameters:
authenticationData- authentication data (password/token)seed- server provided seedconf- Connection optionshostAddress- host address
-
process
ReadableByteBuf process(Writer encoder, Reader decoder, Context context) throws java.io.IOException, java.sql.SQLException
Process plugin authentication.- Parameters:
encoder- out streamdecoder- in streamcontext- connection context- Returns:
- response packet
- Throws:
java.io.IOException- if socket errorjava.sql.SQLException- if plugin exception
-
isMitMProof
default boolean isMitMProof()
Can plugins is MitM-proof, permitting returning HASH- Returns:
- true if permitted
-
hash
default byte[] hash(Credential credential)
Return Hash- Parameters:
credential- credential- Returns:
- hash
-
requireSsl
default boolean requireSsl()
Authentication plugin required SSL to be used- Returns:
- true if SSL is required
-
-