Skip to content

Support enableCleartextPlugin for MySQL connections - #1554

Open
theshreydhiman wants to merge 1 commit into
dbgate:masterfrom
theshreydhiman:fix/mysql-cleartext-plugin
Open

Support enableCleartextPlugin for MySQL connections#1554
theshreydhiman wants to merge 1 commit into
dbgate:masterfrom
theshreydhiman:fix/mysql-cleartext-plugin

Conversation

@theshreydhiman

Copy link
Copy Markdown

mysql2 3.22.0 disabled the mysql_clear_password auth plugin by default. That breaks two paths that both rely on it: PAM/LDAP-backed MySQL auth, and DBGate's own AWS IAM auth, which passes the IAM token as a cleartext password over a connection that already requires SSL.

Add a per-connection 'enableCleartextPlugin' toggle, thread it through to the mysql2 connection options, expose it as an
ENABLE_CLEARTEXT_PLUGIN_ env var alongside the other per-connection settings, and turn it on automatically when authType is awsIam so existing IAM-auth connections keep working without the user having to discover and flip a new setting.

Fixes #1544

mysql2 3.22.0 disabled the mysql_clear_password auth plugin by
default. That breaks two paths that both rely on it: PAM/LDAP-backed
MySQL auth, and DBGate's own AWS IAM auth, which passes the IAM token
as a cleartext password over a connection that already requires SSL.

Add a per-connection 'enableCleartextPlugin' toggle, thread it through
to the mysql2 connection options, expose it as an
ENABLE_CLEARTEXT_PLUGIN_<id> env var alongside the other per-connection
settings, and turn it on automatically when authType is awsIam so
existing IAM-auth connections keep working without the user having to
discover and flip a new setting.

Fixes dbgate#1544
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BUG: MySQL cleartext auth (RDS IAM / PAM / LDAP) broken by mysql2 >= 3.22.0 — no way to set enableCleartextPlugin

1 participant