![](/img/trans.png)
[英]Passing variable to several scriptblocks used in remote sessions Powershell
[英]nested scriptblocks in a powershell remote session
我正在嘗試在遠程計算機上運行腳本塊,但是不提示輸入憑據,我想在腳本中傳遞它們。 某些命令可能會執行,但是除非我提供憑據,否則我要運行的命令將被拒絕訪問。
例如,此命令可以工作:
Invoke-Command -Session $session -ErrorAction Stop -ErrorVariable $Error -Scriptblock {ls }
但是,除非傳遞了-credential(在目標上調用Invoke-Command),否則它將無法工作
Invoke-Command -Session $session -ErrorAction Stop -ErrorVariable $Error -Scriptblock {Invoke-Command -computername $Env:COMPUTERNAME -Credential $Cred -ScriptBlock {ls} }
我要實現的相同方式導致訪問被拒絕的問題(啟動進程)
Invoke-Command -Session $session -ErrorAction Stop -ErrorVariable $Error -Scriptblock {[System.Diagnostics.Process]::Start("C:\Myprocess.exe", $localArgs, "UserName", $credential.Password, "MyDomain")}
Invoke-Command -Session $session -ErrorAction Stop -ErrorVariable $setError -Scriptblock {$Domain = "domain";$PassSec = ConvertTo-SecureString $( "password") -AsPlainText -Force ; $Cred = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $($domain + "\" + "userName"),$passSec; Invoke-Command -computername $Env:COMPUTERNAME -Credential $Cred -ScriptBlock {C:\Myprocess.exe } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.