0

.NET フレームワークがドメイン証明書を検証する方法について、説明または (できれば) 参照を教えてください。

証明書トランスポート セキュリティを使用して BasicHttpBinding で構成された WCF サービスに接続しようとしています。サービスはマシン 1 にあり、クライアントはマシン 2 にあります。両方のマシンがドメインに参加しています。サービス証明書は、ドメインの証明機関によって発行されます。ただし、クライアント (私の場合は Visual Studio のサービス参照の追加ウィザード) がサービスとネゴシエートしているときに、証明書が信頼されていないという 3 つの考えられる理由を示す警告メッセージが表示されます。

  1. 企業が発行したセキュリティ証明書が untrust リストにありません。信頼できるかも。
  2. セキュリティ証明書の日付は有効です。
  3. ホスト 'Administrator' のセキュリティ証明書が、表示しようとしているページの名前と一致しません。(警告!!)

しかし、私は理由1について尋ねています、なぜですか?

一方、WcfTestClient を使用すると、次のエラーが表示されます。

URI: https://ip:port/svc   
     Metadata contains a reference that cannot be resolved: 'https://ip:port/svc'.   
     Could not establish trust relationship for the SSL/TLS secure channel with authority 'ip:port'.   
     The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.   
     The remote certificate is invalid according to the validation procedure.HTTP GET Error.

URI: https://ip:port/svc   
    There was an error downloading 'https://ip:port/svc'.   
    The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.   
    The remote certificate is invalid according to the validation procedure.

誰かここで何が起きているか教えてくれませんか?サービス証明書はどのように検証されますか? そして、デフォルトの手順をオーバーライドするために PermissivePolicy を書くように言わないでください。

4

1 に答える 1