いくつかの引数を取って実行する PowerShell スクリプト/関数があります。
Invoke-Expression ".\ScriptFile.ps1 $($Node.Name).xml C:\TempFolder\ $($Node.Name) local"
今、私はそれを別のユーザーとして実行したいと考えています。
Invoke-Expression
credential
これを容易にする固有のパラメーターはありません。一方、別のユーザーとしての実行を容易Invoke-Command
にするCredential
( ) パラメーターがあります。運が悪いのでGet-Credential
交換Invoke-Expression
してみました。Invoke-Command
上記の式を別のユーザーとして実行するためにこれに取り組むにはどうすればよいですか?
スクリプト リソースの構造。
Script Deploy
{
SetScript =
@"
Set-Location D:\Deploy
Invoke-Expression ".\ScriptFile.ps1 $($Node.Name).xml C:\TempFolder\ $($Node.Name) local"
"@
TestScript =
{
return $false
}
GetScript = {
return @{
GetScript = $GetScript
SetScript = $SetScript
TestScript = $TestScript
}
}
DependsOn = "[File]CopyMe"
}
Script
PS: これはすべて、Desired State Configurationの User の SetScript 内で発生します。