2012-04-04 12 views
11

Ho uno script per ottenere e impostare le variabili di ambiente Windows dell'utente su altri computer per un determinato utente. È possibile codificare la password per questo utente in modo da non doverlo digitare ogni volta che eseguo lo script?Hardcode password in powershells "New-PSSession"

Il mio script simile a questa:

$s5 = New-PSSession -computername testauto2, testauto3 -Credential 
Domain\testautouser 

invoke-command -session $s5[0] -scriptblock {[Environment]::GetEnvironmentVariable("TestBrowser", "user")} 
+0

alcuni suggerimenti qui: http://powershell.com/cs/blogs/tobias/archive/2010/10/22/encrypting-passwords.aspx –

risposta

14

Sì - si può assolutamente fare questo finché hai dimestichezza con le implicazioni di sicurezza (un PW in un file da qualche parte) ...

Ecco un esempio:

$pw = convertto-securestring -AsPlainText -Force -String <insert pw here> 
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist "Domain\User",$pw 
$session = new-pssession -computername <computer> -credential $cred 
5

Ho usato questo approccio in situazioni simili. Non è certamente perfetto, ma mi rende molto meno nervoso rispetto a una password in un file. Ho letto e memorizzato la password durante la prima esecuzione, quindi ho letto dal file crittografato DPAPI in seguito. Generalmente eseguo script da una posizione condivisa su una rete interna e memorizzo il file di password crittografato in una cartella privata sul mio computer locale.

$user = "Domain\testautouser" 
$passwdFile = "$env:USERPROFILE\myscript-$user" 
if ((Test-Path $passwdFile) -eq $false) { 
    $cred = new-object system.management.automation.pscredential $user, 
     (read-host -assecurestring -prompt "Enter a password:") 
    $cred.Password | ConvertFrom-SecureString | Set-Content $passwdFile 
} 
else { 
    $cred = new-object system.management.automation.pscredential $user, 
     (Get-Content $passwdFile | ConvertTo-SecureString) 
} 
+0

Penso che questa sia una grande aggiunta per facilitare la sicurezza riguarda un piccolo. –

Problemi correlati