0

作成したスクリプトに奇妙な問題があります。

いくつかの異なるリモートホストでさまざまなアクションを実行します。コマンドラインから直接呼び出すと、完全に機能します。ただし、スクリプトが別のスクリプトから呼び出されると('&'または'。'演算子を使用)、一部のリモートマシンでは失敗します。

一部のリモートホストは、実行しているマシンと同じドメインに参加しており、これらのホストは失敗します。一部のリモートホストはドメインにリンクされていないマシンであり、クレデンシャルが明示的に提供されます。その場合、リモートホストは、直接呼び出されてもスクリプトから呼び出されても機能します。

エラーは次のとおりです。

Kerberos認証の使用中に、次のエラーが発生しました。現在、ログオン要求を処理するために使用できるログオンサーバーがありません。

スクリプトを直接呼び出すことと、別のスクリプトから呼び出すことの違いは何ですか?そして、どうすれば問題を回避できますか?

4

1 に答える 1

0

それは私のせいだったようです。

$credentials という変数を使用して、明示的な資格情報を Invoke-Command 呼び出しに提供していたことがわかりました。また、明示的な資格情報が必要ない場合は、null のままにしていました。

残念ながら、呼び出し元のスクリプトは $credentials という変数を作成して、実行していたことの一部を実行していました。呼び出されたスクリプトは親スコープから値を継承していましたが、新しい資格情報はドメイン マシンに対してすべて間違っていたため、ログイン失敗していました。

私の側の悪いPowerShellハッキング、あなたの助けに感謝します!

于 2011-10-19T11:04:42.910 に答える