防止重复WCF客户端上使用的x509证书?

时间:2010-08-05 02:44:09

标签: wcf x509certificate

我有一个WPF和WCF应用程序需要在客户端安装证书(.pfx)以启用WPF调用WCF服务。

现在我如何阻止客户端从证书存储区导出证书(这样他就无法获取.pfx文件并将其安装在另一台客户端计算机上)?

1 个答案:

答案 0 :(得分:1)

为WCF生成Certs

  1. 生成证书颁发机构证书
  2. makecert -r -pe -n“CN = MyCA”-ss my -sr localMachine MyRootPublicCert.cer

    -r创建自签名 -pe Mark生成私钥作为可导出 -ss使用存储输出证书的证书存储名称 -sr主题证书存储位置

    该文件会弹出您生成证书的机器的个人证书存储区。

    这是您需要作为受信任的根权限导入服务器/客户端的文件(rt单击您创建的.cer文件并安装证书,将其放入受信任的根证书颁发机构)

    1. 生成服务器证书
    2. 您需要使用私钥导出cert以便在服务器上使用它,因此从您在open mmc上创建CA证书的计算机,证书加载项,个人,单击证书,>&gt ; rt点击>>所有任务>> export>>选择是,导出私钥>>选择.PFX>>选择密码>>将此文件命名为NamePrivateKeyCert.pfx

      将此证书安装到服务器计算机的个人存储中,并使用它来托管服务。

      1. 创建客户端证书
      2. 从CA计算机创建服务器证书。这将生成一个嵌入了私钥的证书文件:

        makecert -a sha1 -n“CN = ClientCert”-sky exchange -pe -ss My -sr LocalMachine -in“TestCA”-is my -ir localMachine TestPublicCert.cer

        获取此cer文件并将其安装在“受信任的人”商店

        中的客户端计算机上
        1. 小结

          创建CA证书(或者如果您购买了证书,则使用您已拥有的证书) 从CA导出受密码保护的.pfx文件(私有证书) 从CA证书(公共证书)

          创建公共证书

          然后

          将CA CA .cer安装到客户端和服务器上的“受信任的根证书颁发机构”存储中 将专用 .pfx文件安装到服务器的个人存储中 将 Public .cer安装到客户端的受信任人员存储区

          准备好了。