MySQL中有三个用户,即根用户、testuser1用户、testuser2用户。我想通过在终端中输入以下命令来加密连接到MySQL数据库的所有三个用户的密码,
它要求输入密码。此时,我如何提供加密密码或使其从任何可能包含密码的文件中读取?
我的项目要求对MySQL用户的所有密码进行加密。(我也问过这个问题,也与MariaDB有关)。
发布于 2015-08-12 05:17:47
您不能在mysql客户端命令行上传递加密密码,并期望mysql“理解”它。充其量,您可以为mysql命令行会话使用加密的SSH会话。
当然,您可以将加密的密码存储在文件或数据库中,然后解密它们以进行连接。
但在某种程度上,密码必须以明文形式传递给mySql。你必须准确地决定:
1)如何登录(从命令提示符)?使用程序或web服务器?
2)在登录之前和登录期间,如何确切地保护存储的密码(包括但不限于加密)。
一些替代办法:
MySql还支持“企业登录”方案。也许其中之一可以为您的问题提供一个解决方案:
最后,如果您使用来自Application的MySQL (例如,WebSphere),那么您可以简单地创建一个DataSource,而不是使用"mysql“命令行客户端手动登录,而是让应用服务器为您保护DB用户名和密码。
https://stackoverflow.com/questions/31956481
复制相似问题