WCF WebHttpBinding にバインドされたセルフホステッド サービスが 2 つあります。1 つは と に設定されWebHttpSecurityMode.TransportCredentialOnly
ますHttpClientCredentialType.Windows
。もう 1 つは と に設定されNone
ますNone
。
このサービスは、正しいコンテンツ タイプとコンテンツを使用して、Chrome と IE で意図したとおりの認証プロンプト動作を提供しています。localhost およびリモート (ドメインではなく) でテストします。IE では、統合認証のデフォルト設定により、資格情報がすぐに認証済みサービスに送信されます。Chrome では、デフォルト設定で Windows 認証資格情報を求められます。
しかし、Firefox では、そのようなプロンプトは表示されません。それ以外の場合は、Firebug でエラーが発生し401 Unauthorized
、空白のページが表示されます。iOS にも同じ401 Unauthorized
問題があると思いますが、デバッガー コンソールにはエラーは表示されません。空白のページが表示されるだけです。
WCF WebHttpBinding が標準の IIS でホストされている Web サイトとどの程度関連しているかはわかりませんが、IE 以外のブラウザーで統合セキュリティ モードを優先して Windows Auth プロンプトを停止しようとしている他のすべての Google に関するものです。私には逆の問題があります-それは私には現れません。
Firefox と Safari が敏感で、Chrome と IE が敏感ではない Web サービスの応答について微妙な違いはありますか?
この記事の執筆時点では、IE 10 を搭載した Windows 8 と他のブラウザーの最新リリースでテストしています。
ありがとう!
に設定するとHttpClientCredentialType.NTLM
、すべてのブラウザーが機能します。しかし、私が理解しているように、NTLM はより安全な Kerberos ドメイン資格情報を許可しません (利用可能な場合)。安全性の低いオプションを強制したくありません!