gpt4 book ai didi

powershell - 保存凭据以供 powershell 重用和错误 ConvertTo-SecureString : Key not valid for use in specified state

转载 作者:行者123 更新时间:2023-12-03 10:11:47 24 4
gpt4 key购买 nike

我正在做类似这篇文章中描述的事情,以将凭据保存在安全文件中,以便我们的自动化过程可以使用它通过 Invoke-command 运行远程 PS 脚本:
http://blogs.technet.com/b/robcost/archive/2008/05/01/powershell-tip-storing-and-using-password-credentials.aspx

当我在我的帐户下运行它时,这非常有用 - 从加密文件中读取密码,传递给 Invoke-command,一切都很好。

今天,当我的脚本准备好进入黄金时段时,我尝试在将由自动化进程使用的 Windows 帐户下运行它,并在我的脚本尝试从文件中读取安全密码时出现以下错误:

ConvertTo-SecureString : Key not valid for use in specified state.
At \\remoted\script.ps1:210 char:87
+ $password = get-content $PathToFolderWithCredentials\pass.txt | convertto-sec
urestring <<<<
+ CategoryInfo : InvalidArgument: (:) [ConvertTo-SecureString], C
ryptographicException
+ FullyQualifiedErrorId : ImportSecureString_InvalidArgument_Cryptographic
Error,Microsoft.PowerShell.Commands.ConvertToSecureStringCommand

让我的同事在他的帐户下运行,他得到了同样的错误。

这是我用来保存凭据的代码:
$PathToFolderWithCredentials = "\\path\removed"

write-host "Enter login as domain\login:"
read-host | out-file $PathToFolderWithCredentials\login.txt

write-host "Enter password:"
read-host -assecurestring | convertfrom-securestring | out-file $PathToFolderWithCredentials\pass.txt

write-host "*** Credentials have been saved to $pathtofolder ***"

这是脚本中的代码,由自动化进程运行以读取它们以在 Invoke-command 中使用:
$login= get-content $PathToFolderWithCredentials\login.txt
$password = get-content $PathToFolderWithCredentials\pass.txt | convertto-securestring
$credentials = new-object -typename System.Management.Automation.PSCredential -argumentlist $login,$password

错误发生在 $password = get-content $PathToFolderWithCredentials\pass.txt |转换为安全字符串

有任何想法吗?

最佳答案

ConvertFrom-SecureString需要 Key ( 和 SecureKey ) 参数。您可以指定 key 来保存加密的标准字符串,然后在 ConvertTo-SecureString 中再次使用该 key 。无论用户帐户如何,都可以取回安全字符串。

http://technet.microsoft.com/en-us/library/dd315356.aspx

在一个项目中,我实现了非对称加密,人们使用公钥加密密码,自动化过程使用私钥解密密码:Handling passwords in production config for automated deployment

关于powershell - 保存凭据以供 powershell 重用和错误 ConvertTo-SecureString : Key not valid for use in specified state,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7109958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com