Powershellクレデンシャルの作成に問題があります。ファイルから暗号化された文字列を読み取り、その文字列をセキュア文字列に変換し、それを使用してクレデンシャルを作成しています。私が得るエラーは次のとおりです。
New-Object:引数 "1"を変換できません。値: "System.Security.SecureString"、>"PSCredential"のタイプ"System.Security.SecureString":"変換できません>"System.Security.SecureString"値タイプ「System.RuntimeType」から>タイプ「System.Security.SecureString」へ。
これが私が使用しているコードです:
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "athenpoly", $(Read-EncString F:\Scripting\1-Dev\RSA\p_ftp_dellpoly.rsa)
Function Read-EncString {
param ([String]$InputFile)
$encrypted = Import-Clixml $InputFile
$key = (3,42,5,77,67,12,76,9,8,9,4,5,6,55,32,81,23,12,3,55,2,9,6,1,5,32,4,55,6,8,56,12)
$csp = New-Object System.Security.Cryptography.CspParameters
$csp.KeyContainerName = "SuperSecretKeyContainer"
$csp.Flags = $csp.Flags -bor [System.Security.Cryptography.CspProviderFlags]::UseMachineKeyStore
$rsa = New-Object System.Security.Cryptography.RSACryptoServiceProvider -ArgumentList 5120,$csp
$rsa.PersistKeyInCsp = $true
$password = [char[]]$rsa.Decrypt($encrypted, $true) -join "" | ConvertTo-SecureString -Key $key
}
私が間違っていることについて何か考えはありますか?