2012-04-04 24 views
11

Tôi có một tập lệnh để nhận và đặt biến môi trường Windows của người dùng trên các máy tính khác cho một người dùng cụ thể. Có thể mã cứng mật khẩu cho người dùng này để tôi không phải nhập mật khẩu mỗi khi tôi chạy tập lệnh không?Mật khẩu hardcode vào powershells "New-PSSession"

Kịch bản của tôi trông giống như sau:

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

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

một số gợi ý ở đây: http://powershell.com/cs/blogs/tobias/archive/2010/10/22/encrypting-passwords.aspx –

Trả lời

14

Yep - bạn hoàn toàn có thể làm điều này miễn là bạn cảm thấy thoải mái với những tác động an ninh (một PW trong một tập tin ở đâu đó) ...

Dưới đây là ví dụ:

$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

Tôi đã sử dụng phương pháp này trong các tình huống tương tự. Nó chắc chắn không hoàn hảo, nhưng nó làm cho tôi ít lo lắng hơn so với hardcoding một mật khẩu trong một tập tin. Tôi đọc và lưu trữ mật khẩu trong lần chạy đầu tiên, sau đó đọc từ tệp được mã hóa DPAPI sau đó. Tôi thường chạy tập lệnh từ một vị trí được chia sẻ trên mạng nội bộ và lưu trữ tệp mật khẩu được mã hóa trong một thư mục riêng trên máy cục bộ của tôi.

$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

Tôi nghĩ rằng đây là một bổ sung tuyệt vời để giảm bớt an ninh liên quan đến một ít. –