加密PowerShell密码

ste*_*eve 7 security encryption passwords powershell

我有一个连接到MySQL数据库的powershell脚本 - 当然这个连接需要一个密码,我想以某种方式加密密码,而不是将密码存储为纯文本.

我已经查看了securestring方法,将密码输出到文件,但是我不认为它们会起作用,因为加密的密码只能由原始用户解密,并且脚本将被分发到许多机器上整个网络.

对任何其他方法有用的建议吗?

谢谢

Zed*_*Zed 4

如果脚本将分布到网络上的多台计算机上,那么这些用户将可以访问脚本将使用的每个凭据,并且没有办法绕过它。

如果有任何私有的每用户数据,您可以执行两件事:

  1. 在数据库中为程序的每个用户创建一个新的用户帐户,并具有限制性权限,允许他们只执行您希望他们执行的操作,仅此而已
  2. 有一个代理服务器可以对他们进行身份验证并以他们的名义连接到数据库(这是大多数网站的工作方式)

如果所有数据都是公开且只读的,那么您可以:

  1. 在数据库中创建一个用户帐户以进行只读访问,并在程序的所有分布式副本中使用其凭据
  2. 有一个代理服务器,它不验证用户身份,但连接到数据库而不是将其公开给公众

对于具有 MySQL 安全历史记录的每个数据库,通常建议使用这些选项中的第 2 个选项,但对于 CouchDB 等数据库,建议使用这两个选项中的第 1 个选项。

切勿在您的程序中分发您不希望用户使用的任何凭据。