WCF Web サービスと通信する WPF アプリがあります。
私の顧客の 1 人が問題を抱えています。エンドポイント アドレスを IP アドレスに設定するとすべて正常に動作しますが、完全修飾ドメイン名 (FQDN) を使用するとセキュリティ例外がスローされます。
クライアントが Web プロキシとチェックポイント ファイアウォールを介して Web サーバーに 3G 経由で通信する非常に複雑なネットワークがあります。
彼らは、LDAP クエリがポート 389 で行われていることを発見したコンサルタントを採用しました。このポートは閉じられていますが、IP 経由のリクエストは失敗を無視し、ドメイン名によるリクエストが例外をスローする間、続行します。
IPによるリクエストとドメイン名によるリクエストの違いは何ですか? 一方が機能し、もう一方が失敗するのはなぜですか?
スローされるセキュリティ例外は次のとおりです。
HTTP 要求は、クライアント認証方式 'Negotiate' では許可されていません。サーバーから受信した認証ヘッダーは「Negotiate,NTLM」でした。
これが私のクライアント構成設定です:
<binding
name="Windows_Binding"
closeTimeout="00:01:00"
openTimeout="00:01:00"
receiveTimeout="00:10:00"
sendTimeout="00:10:00"
allowCookies="false"
bypassProxyOnLocal="false"
hostNameComparisonMode="StrongWildcard"
maxBufferSize="2147483647"
maxBufferPoolSize="2147483647"
maxReceivedMessageSize="2147483647"
messageEncoding="Text"
textEncoding="utf-8"
transferMode="Buffered"
useDefaultWebProxy="true">
<readerQuotas
maxDepth="2147483647"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647"/>
<security
mode="Transport">
<transport
clientCredentialType="Windows"
proxyCredentialType="None"
realm=""/>
<message
clientCredentialType="UserName"
algorithmSuite="Default"/>
</security>
</binding>