ダブル ホップ委任: ユーザー IIS APPPOOL の取得中にエラーが発生しました。基になるプロバイダーが Open で失敗しました。ユーザー 'Domain\WebVM$' のログインに失敗しました。
Windows Server 2016 を実行しているマシンとイントラネットで実行しているマシンの両方で、別の SQL Server VM にアクセスするように IIS VM サーバーをセットアップしています。Windows 認証を使用しており、IIS VM サーバー マシンのマシン アカウントを介してユーザーの偽装を試みています。ASP.NET Core を使用して MVC IIS ビットを構築/展開しています。
考えられるすべてを構成し、いくつかの投稿を参照した後、上記の (マシン アカウントのログイン) エラーが発生しました。次の主な項目を構成しました。
- Windows 認証を使用して Web サイトをセットアップし、ASP.NET 偽装を有効にし、他のすべての認証タイプを無効にします。
- Web サイト構成エディターが「system.webServer/security/authentication/windowsAuthentication」を設定: useKernelMode を True
- .NET CLR バージョン "No Managed Code" を実行しているアプリケーション プール
- クラシック マネージド パイプライン モードを使用したアプリケーション プール
- ApplicationPoolIdentity として実行されているアプリケーション プール
- AD の IIS VM マシン アカウントに登録されている確認済みの HOST SPN (setspn -L IISVMServer を使用)
- AD の SQL Server VM マシン アカウントに登録されている確認済みの HOST SPN
- 確認済み ServiceClass/Host:AD の SQL Server VM に登録されたポート
- IIS サーバー コンピューター アカウントの登録済み SPN "すべてのサービスへの委任についてこのコンピューターを信頼する (Kerberos のみ)
- 制約のない委任が機能するようになった後、制約付きの委任にロックダウンする計画
- web.config あり/なしで実行してみました: "system.web identity impersonate="true" /system.web"
以前、この投稿に間接的に関連するASP.NET Core (4.5.2) を使用した Kerberos Double Hop Delegation を投稿しました。
ありがとう、デイブ