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 の記事を読み、すべてを試しても同じ結果が得られたような気がします。