Webアプリケーション内からWebサービスを呼び出すのに問題があり、ここの誰かが助けてくれることを望んでいました。私の知る限り、これはKerberosダブルホップの問題と関係があるようです。しかし、そうだとすれば、実際に問題を解決するために何をすべきかわかりません。さらに難しいことに、Active Directoryアカウントに変更を加えるための適切なアクセス許可がないため、変更を要求するときに何を要求するかを知る必要があります。私の状況では、Webサービスが適切なユーザーコンテキストで実行されるように、WebアプリケーションからバックエンドWebサービスに資格情報(統合Windows認証)を渡す必要があります。
これが私の正確な問題です:
これは動作します
これは機能しません
動作シナリオと非動作シナリオの唯一の違いは、動作シナリオがローカルホスト(開発者のPCまたは問題のサーバー)でアプリケーションを実行しており、非動作例が別のマシンで実行されていることです。両方のシナリオ間のコードはまったく同じです。
私が試したこと
- 各サーバーのアプリプールを実行するドメインアカウントにSPNを追加する
setspn -a http/server1 DOMAIN\account
- なりすましのさまざまな方法
- 偽装コード
using(...)
を削除し、アプリプールアカウントとしてWebサービス呼び出しを実行します。これは期待どおりに機能します。
この問題を解決するために私が何ができるかについて誰かが何か考えを持っていますか?