如何使用PowerShell保护mysql连接

时间:2015-12-18 07:41:50

标签: mysql powershell encryption credentials

我有一个连接到mysql数据库的powershell函数。在此函数中有一个连接字符串,如下所示:

$ConnStr = "Server=server;Uid=user;Pwd=password;Database=DB";

现在最安全地保存这些信息的方法是什么,而不仅仅是在脚本中以纯文本形式显示字符串?

1 个答案:

答案 0 :(得分:0)

您可以使用...

创建特定于保存文件的PC的加密密码
$folder = [environment]::getfolderpath("mydocuments")     
$passFile = "$folder\MyPass.txt"
$credential = Get-Credential
$credential.Password | ConvertFrom-SecureString | Set-Content $passFile

然后当您需要检索密码并使用它时。

$passwdfolder = [environment]::getfolderpath("mydocuments")     
$passwdFile = "$passwdfolder\MyPass.txt.txt"
$securePasssword = Get-Content $passwdFile | ConvertTo-SecureString 
$credentials = New-Object System.Net.NetworkCredential($null, $securePasssword,$null)
$MyPass = $credentials.Password

它并不完美。有权访问计算机的任何人都可以通过一些技术诀窍获得密码,但这比以纯文本格式存储密码要好。