特定のユーザーのみがアクセス権を持つデータベースへの書き込みを含むスクリプトを実行しているため、企業ネットワーク上で別のユーザーとしてスクリプトを実行しています(これらのユーザー資格情報を渡しています)。Powershell:同じウィンドウで別のユーザーとしてスクリプトを実行できませんか?
-NoNewWindow
や-WindowStyle Hidden
などの試行錯誤にもかかわらず、常に新しいウィンドウでポップアップするようです。これは、PowerShellビルドステップを使用してJenkins Builderからスクリプトを起動すると、Jenkinsは2番目のウィンドウが気に入らず、メインウィンドウにすべて必要と思われるためです。
(私は詳細の一部を切り取って)私たちは、Start-Process
を使用していて、スクリプトの呼び出しは次のようになります。
Start-Process -NoNewWindow powershell.exe -Credential $credential -ArgumentList “Start-Process powershell.exe 'path\script.ps1 -param1 xxx -param2 yyy' -Verb runAs”
任意のアイデアを、これは実際にポップアップウィンドウなしで実行するために取得する方法のよう? ありがとう!これらの
にトリックを行う必要がありますか?あなたの '-ArgumentList'で' Start-Process powershell.exe'がなぜもう一度ですか?最初の 'powershell.exe'プロセスでスクリプトを起動するべきではありませんか? –
実際にビルド設定でスクリプトを直接実行することはできますが、必要な資格情報を渡すためには、Start-Processのパラメータです...私は引数にstartプロセスが必要な理由は分かりません。それなしでは全く動かないようだ。私はちょうどインターンで、昨日マネージャーと一緒に仕事をしています。それは彼が思いついたものです。彼は同様のコマンドを使用しましたが、ここではうまくいかないようです。 –
はあなたのためのオプションではないinvoke-commandです: 'Invoke-Command -FilePath -Credential' – Kiran