同じサーバー(IIS 7.5)でホストされている2つの異なるサイトで同じコードベースを使用しています。AuthenticationType Negotiate vs NTLM
何らかの理由で、httpハンドラの背後にあるコードのIdentity.AuthenticationTypeプロパティをチェックすると、NTLMが1つのサイトを参照し、もう一方がネゴシエートしています。これはいくつかの問題を引き起こしており、NTLMを使用するには両方とも必要です。
なぜこの違いがわかりますか?これまでのところ、両方のIISサイトが同じ方法で設定されていることがわかりましたが、もちろん検出できなかった違いが少なくとも1つあります。 ありがとう!
EDIT
私はIISからプロバイダを「交渉」を除去するための手順を提供しthisリンクを使用しました。それは私のために働かなかった。私は実行しました
appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/windowsAuthentication /-"providers.[value='Negotiate']" /commit:apphost
多分私は何か間違っていましたが、それは役に立たなかったでしょう。私はまだ "Negotiate"認証タイプとして表示されます
私が持っている問題は、私がweb.config偽装資格情報で設定しているが、それらを使用していないということです。私は提供する資格情報を使用する代わりに、匿名ユーザーを使用します。
そして何か変わったことはwindowsAuthenticationが無効になっていることです。私は "Negotiate"はwindowsAuthenticationによってのみ使用されていると思った。
両方のasp.net設定ファイルが偽装を指定していますか?両方が同じセキュリティゾーンにありますか? – sisve
@サイモン:両方のファイルが偽装を指定します。セキュリティゾーンの確認方法が不明です。 –
セキュリティゾーンはIE(インターネット、イントラネット、信頼済み、信頼できない)です。他のブラウザでは実際には適用されません。 – sisve