0

SSRS Web サービスを参照するイントラネット サイトで、古典的なダブル ホップの問題が発生しています。トポロジは次のとおりです。

クライアント -> Web サーバー -> SQL サーバー (DB および SSRS)

これが私がこれまでに行ったことです:

  • HTTP/Web サーバー用に作成された SPN - NetBios および FQDN (AppPool のドメイン ユーザー)
  • HTTP/sqlserver の SPN (SQL および SSRS を実行しているドメイン ユーザー)
  • MSSQLSvc/sqlserver の SPN (SSRS を実行しているドメイン ユーザー)
  • Web サーバーとアプリ プールの ID は、AD での委任を許可されています
  • クライアント アカウントの委任が許可されている
  • Web サーバーの Web アプリは、クライアント ユーザーになりすまして SSRS Web サービスを呼び出し、DefaultNetworkCredentials を渡し、ImpersonationLevel を Delegation に設定しています。

SSRS サービスで 401 を受け取ります。個人の資格情報を明示的に渡すと、すべてが機能するため、問題はクライアントの資格情報の委任だけにあると確信しています。

これに関する 20 の記事を読み、すべてを試しても同じ結果が得られたような気がします。

4

1 に答える 1

1

私は最終的にそれを修正しました。唯一の Windows 認証プロバイダーを Negotiate:Kerberos に設定していましたが、カーネル モードのチェックを外す前にそれを行った場合、IIS マネージャーは無効であるため、プロバイダーから Negotiate:Kerberos を削除してしまいます。そのため、プロバイダーがなく、中間の Web サイトで 401 が保証されていました。

Kerberos を強制すると、委任が機能し始め、SSRS Web サービスも機能しました。

于 2013-09-18T13:47:58.760 に答える