私は次の構成を持っています:
- セルフホステッド ASP.NET Web API
- ASP.NET MVC 3 Web アプリケーション
Web アプリ [2] は、HTTPS 経由で Web API [1] と通信します。どちらも (今のところ) 同じマシン上に存在します。
Web API [1] の Http バインディングは次のように構成されます。
httpBinding.Security.Mode = HttpBindingSecurityMode.Transport;
httpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Ntlm;
httpBinding.TransferMode = TransferMode.Streamed
https AND ntlm 認証を使用して機能させることはできません。
- 通常の http 経由で通信すると動作し、適切に認証されます
- https 経由で通信すると、[Authorize] タグを持つすべてのコントローラー アクションで「401 Unauthorized」エラーが発生します (ただし、承認を必要としないアクションでは機能します)。
トランスポート プロトコルのみを (http から https に) 変更すると、NTLM 認証が機能しなくなるのはなぜですか?
助けてくれてありがとう!