Desidero decodificare la password da System.Security.SecureString a una password leggibile.PowerShell - Decode System.Security.SecureString a password leggibile
$password = convertto-securestring "TestPassword" -asplaintext -force
$credentials = New-Object System.Net.NetworkCredential("TestUsername", $password, "TestDomain")
Questa parte di codice funziona correttamente, posso utilizzare l'oggetto $ credentials. Ma più avanti nel mio codice ho bisogno della password in un formato leggibile. Perché un metodo richiede la password in stringa leggibile. Quindi devo decodificare la password.
Come è possibile decodificare la password dall'oggetto $ credentials?
Aggiornamento
Non funziona:
$password = convertto-securestring "TestPassword" -asplaintext -force
$credentials = New-Object System.Net.NetworkCredential("TestUsername", $password, "TestDomain")
$Ptr = [System.Runtime.InteropServices.Marshal]::SecureStringToCoTaskMemUnicode($credentials.password)
$result = [System.Runtime.InteropServices.Marshal]::PtrToStringUni($Ptr)
[System.Runtime.InteropServices.Marshal]::ZeroFreeCoTaskMemUnicode($Ptr)
$result
Una volta ottenuto l'oggetto 'PSCredentials', è sufficiente eseguire: ' '' $ credentials.GetNetworkCredential(). Password''' – CubanX