Proxy SQL验证方式

概览

proxy SQL支持不同的验证机制,这取决于客户端到proxy SQL的连接方式以及proxy SQL到后端数据库的连接方式。

前端验证(Clients → ProxySQL)

Method Notes
mysql_native_password 所有版本都支持
mysql_clear_password 所有版本都支持
caching_sha2_password V2.6.0完全支持,从V2.0.2-2.5.X需要明文密码
SPIFFE 基于 X.509 证书的无密码认证
LDAP 基于目录的身份验证

后端验证

(ProxySQL → Databases)

Method Notes
mysql_native_password 所有版本都支持
mysql_clear_password 所有版本都支持
caching_sha2_password 从V2.6.0开始完全支持

特定版本说明

2.0.2:之前不支持caching_sha2_password

2.0.2-2.5.x:前端的caching_sha2_password 需要的是明文密码

2.6.0+:前端和后端都支持caching_sha2_password,并支持了灵活的密码存储选项

配置

设置默认的验证插件

bash 复制代码
-- Set default authentication plugin
SET mysql-default_authentication_plugin='mysql_native_password';
LOAD MYSQL VARIABLES TO RUNTIME;
SAVE MYSQL VARIABLES TO DISK;

users是需要在mysql_users表中进行配置

当前的限制:

密码中以*开始的会导致检测机制失效

当连接握手过程中需要动态切换认证方法时,caching_sha2_password 插件的处理逻辑会变得复杂------因为它依赖缓存的密码哈希,而切换认证方法可能破坏其状态一致性或导致额外的往返通信。

MariaDB 10.10之前版本的客户端使用caching_sha2_password 的时候需要加上--ssl标签

相关推荐
李白客15 小时前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence17 小时前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将20 小时前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6003 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL3 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_6 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库