Windows認証でWebサイトを設定するためにIIS 7を使用しています。認証の問題が発生していますが、これはKerberosの問題に関連しているとほぼ確信しており、SPNを誤って設定しています。シナリオ私が使用しているのは以下の通りです。
ドメインコントローラーによって管理される新しいテストドメイン(FQDNを「test.net」と呼びます)を作成しました(このmcを「test-DC」と呼びます)。この新しいドメイン(テスト)の下で、私はIISサーバーをホストしました。これはKerberos委任でWindows認証を使用することを想定しています。私はWindows認証を有効にし、他のサーバーはIISマネージャー。これをIISマシン名は 'test-iis'であり、ActiveDirectoryにはIIS server as'user-iis 'のユーザー名があります。 。IISサーバーのアプリケーションプールは "TEST\user-iis"としてサービスアカウントで実行されています。HTTPサービスタイプのSPNをセットアップしようとしています。
最初の質問:SPNを次のように設定しています
setspn -a http/test-iis.test.net
このSPN設定は正しいですか?
私の2番目の質問はです。ドメインコントローラーでこのSPN値を設定していますDCは、資格情報とすべてを検証するエンティティです。私の考えは正しいですか??
この問題に関するアドバイスは、私や他の人にとって非常に役立ちます。
ありがとう..
[編集]もう1つ、IISサーバーから同じドメイン内の他の2台のマシンにpingを実行できますが、IISサーバーにpingを実行できませんでした他の2台のマシン。なぜそうなのか理解できる人はいますか?
アプリケーションプールをTEST\user-iisとして実行しているため、SPNをthatアカウントに適用する必要があります。ホストの短縮名にも別のSPNを含める必要があることは一般的に認められています。
setspn -a http/test-iis.test.net TEST\user-iis
setspn -a http/test-iis TEST\user-iis
明確にするために、これらのコマンドですべてのsetspnが実行しているのは、そのユーザーアカウントの「servicePrincipalName」属性を変更することです。そのための[プロパティ]ダイアログを開いて[属性]タブに移動すると、servicePrincipalNameまで下にスクロールして開き、行った変更を確認できます。
Pingの問題については、[IIS]ボックスのWindowsファイアウォールを確認してください。ICMPはデフォルトで有効になっていません。
以下に示すように、setspnコマンドを使用するときは、IWAMアカウントを忘れないでください。
setspn -a http/test-iis.test.net Domain_name\IWAM_ACCOUNT
ご了承ください:
IWAM_ACCOUNT
は、使用しているアプリケーションプールの実行に使用されるアカウントです。 (ドメインレベルのアカウントである必要があります)2番目の質問に関しては、Active Directoryで変更が行われるという点で正しいです...しかし、setspn
コマンドはドメイン内の任意のサーバーで実行できます。