質問: Windows PowerShell でInvoke-Commandコマンドを実行したところ下記のエラーメッセージが出ました。 Invoke-Command -ScriptBlock { &"D:\Program Files\C.exe" 引数・・ } -ComputerName "B" エラーメッセージ Could not connect to ~ database: ユーザー 'NT AUTHORITY\ANONYMOUS LOGON' はログインできませんでした。 実行環境等は、ローカルPCからリモートデスクトップ接続で"A"(Windows Server 2012) に接続し、 "A"サーバーのWindows PowerShellからコマンドを実行。"B"(Windows Server 2012)に存在する"C.exe"を実行すると 更に別のサーバー"D"(Windows Server 2012)のSQL ServerのDBを参照して値を返します。 "D"サーバーのDBを参照しようとして接続できないためエラーメッセージされるようです。 リモート先からさらに別のマシンのDBを参照することが上記のコマンドでは無理なのでしょうか。 解決策がありましたらお願いします。
回答: PowerShell Wikiの「リモートコンピューターでコマンド実行 (Workgroup編) 」とその後の「リモートコンピューターでコマンド実行 (Workgroup + ダブルホップ編)」をお読みになることをお勧めします。 エラーメッセージの内容から見て、ダブルホップ時に匿名ユーザー扱いになってしまう、という問題に関連している可能性が高いのではないでしょうか。