我有一个连接到mysql数据库的powershell函数。在此函数中有一个连接字符串,如下所示:
$ConnStr = "Server=server;Uid=user;Pwd=password;Database=DB";
现在最安全地保存这些信息的方法是什么,而不仅仅是在脚本中以纯文本形式显示字符串?
答案 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
它并不完美。有权访问计算机的任何人都可以通过一些技术诀窍获得密码,但这比以纯文本格式存储密码要好。