我有一个WPF和WCF应用程序需要在客户端安装证书(.pfx)以启用WPF调用WCF服务。
现在我如何阻止客户端从证书存储区导出证书(这样他就无法获取.pfx文件并将其安装在另一台客户端计算机上)?
答案 0 :(得分:1)
为WCF生成Certs
makecert -r -pe -n“CN = MyCA”-ss my -sr localMachine MyRootPublicCert.cer
-r创建自签名 -pe Mark生成私钥作为可导出 -ss使用存储输出证书的证书存储名称 -sr主题证书存储位置
该文件会弹出您生成证书的机器的个人证书存储区。
这是您需要作为受信任的根权限导入服务器/客户端的文件(rt单击您创建的.cer文件并安装证书,将其放入受信任的根证书颁发机构)
您需要使用私钥导出cert以便在服务器上使用它,因此从您在open mmc上创建CA证书的计算机,证书加载项,个人,单击证书,>&gt ; rt点击>>所有任务>> export>>选择是,导出私钥>>选择.PFX>>选择密码>>将此文件命名为NamePrivateKeyCert.pfx
将此证书安装到服务器计算机的个人存储中,并使用它来托管服务。
从CA计算机创建服务器证书。这将生成一个嵌入了私钥的证书文件:
makecert -a sha1 -n“CN = ClientCert”-sky exchange -pe -ss My -sr LocalMachine -in“TestCA”-is my -ir localMachine TestPublicCert.cer
获取此cer文件并将其安装在“受信任的人”商店
中的客户端计算机上小结
创建CA证书(或者如果您购买了证书,则使用您已拥有的证书) 从CA导出受密码保护的.pfx文件(私有证书) 从CA证书(公共证书)
创建公共证书然后
将CA CA .cer安装到客户端和服务器上的“受信任的根证书颁发机构”存储中 将专用 .pfx文件安装到服务器的个人存储中 将 Public .cer安装到客户端的受信任人员存储区
准备好了。