web-dev-qa-db-ja.com

Kerberos認証用にSPNを設定する際に支援が必要

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台のマシン。なぜそうなのか理解できる人はいますか?

2
Manish Shukla

アプリケーションプールを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はデフォルトで有効になっていません。

1
Ryan Bolger

以下に示すように、setspnコマンドを使用するときは、IWAMアカウントを忘れないでください。

setspn -a http/test-iis.test.net Domain_name\IWAM_ACCOUNT

ご了承ください:

  • IWAM_ACCOUNTは、使用しているアプリケーションプールの実行に使用されるアカウントです。 (ドメインレベルのアカウントである必要があります)
  • また、同じコマンドを再度実行する必要がありますが、「test-iis.test.net」を「test-iis」に置き換えてください。

2番目の質問に関しては、Active Directoryで変更が行われるという点で正しいです...しかし、setspnコマンドはドメイン内の任意のサーバーで実行できます。

0
user82016