2011-04-13 28 views
1

下面是我的代碼:如何在PowerShell中運行遠程Windows服務時每次拒絕Windows憑據密碼提示?

$s = Get-WmiObject -computer 10.10.zz.zz Win32_Service -Filter "Name='XXX'" -credential (Get-Credential XXXXXX\fanwx) 
$s.stopservice() 
copy-item D:\.....\aaa.exe -destination \\10.10.zz.zz\c$\vvv\ 
copy-item D:\.....\aaa.pdb -destination \\10.10.zz.zz\c$\vvv\ 

$ s.startservice()

每次執行時,系統會提示輸入遠程服務器的密碼。有沒有辦法讓我只能在PowerShell中輸入一次,或者在憑證管理器中讀取憑證?

謝謝。

回答

4

通過

$cred = Get-Credential "XXXXXX\fanwx" 

剛開始後:

$s = Get-WmiObject -computer 10.10.zz.zz Win32_Service -Filter "Name='XXX'" -credential $cred 

你可以把密碼盤上:

PS > $cred.Password | ConvertFrom-SecureString | Set-Content c:\temp\password.txt 

而且隨着retreive它:

$password = Get-Content c:\temp\password.txt | ConvertTo-SecureString 
$cred = New-Object System.Management.Automation.PsCredential "UserName",$password 
相關問題