在WCF中,服务器没有访问客户端的公钥,客户端没有访问服务器的公钥 - 仍然是Web方法操作成功。为什么?

时间:2018-05-07 09:49:41

标签: c# .net wcf authentication x509certificate

我在使用X.509服务器证书(.pfx)保护的开发服务器上有一个WCF服务[不是自签名的,组织提供的]使用邮件安全性。

在我的本地计算机上,客户端应用程序使用消息安全性使用客户端证书(.pfx)[非自签名]文件来使用它。预期的操作(Web服务方法)成功地运行了所需的结果。

客户服务电话:

try
{
     ServiceClient.Service1Client obj = newServiceClient.Service1Client();
     Response.Write(obj.Add(1, 1));
 }
 catch (Exception ex)
 {
     Response.Write(ex.InnerException.Message);
 }

问题:

根据https://blogs.msdn.microsoft.com/bradleycotier/2011/12/14/mutual-authentication-with-a-iis-hosted-wcf-data-service-installed-in-a-workgroup-environment/说:

  

为了使客户端和服务成功使用证书进行通信,WCF客户端应用程序必须能够访问   客户端的私钥和IIS(接收方)必须具有访问权限   客户的公钥。相反,IIS必须能够访问   服务私钥,客户端必须有权访问该服务   公钥。

  1. 没有 通过MMC或在任何一方(客户端或服务器)导入服务器或客户端的任何公共证书.cer文件文件然后如何操作成功?因为它违背了文章中分享的逻辑。

  2. 在多客户端方案中,如果我们打算拥有一个客户端.pfx证书,我们如何将其分发给所有客户端?

  3. 您的建议很有价值,请分享一些。

0 个答案:

没有答案