mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
a05b5dd505
In case the option require_secure_transport is on the user can't establish a secure ssl connection over TCP protocol. Inability to set up a ssl session over TCP was caused by the fact that a type of client's connection was checked before ssl handshake performed (ssl handshake happens at the function acl_authenticate()). At that moment vio type has the value VIO_TYPE_TCPIP for client connection that uses TCP transport. In result, checking for allowable vio type for fails despite the fact that SSL session being established. To fix the issue move checking of vio type for allowable values inside the function parse_client_handshake_packet() right after client's capabilities discovered that SSL is not requested by the client.
9 lines
421 B
Text
9 lines
421 B
Text
connect(localhost,root,,test,MASTER_PORT,MASTER_SOCKET);
|
|
connect without_ssl,localhost,root,,,,,TCP NOSSL;
|
|
ERROR 08004: Connections using insecure transport are prohibited while --require_secure_transport=ON.
|
|
connect with_ssl,localhost,root,,,,,TCP SSL;
|
|
SELECT (VARIABLE_VALUE <> '') AS have_ssl FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME='Ssl_cipher';
|
|
have_ssl
|
|
1
|
|
disconnect with_ssl;
|
|
connection default;
|