2008-12-05 131 views
9

我在Windows Vista SP1的IIS7中创建了托管的WCF服务。我收到以下错误:WCF中的自签名证书问题 - 必须拥有私钥

证书'CN = SignedByLocalHost'必须具有能够进行密钥交换的私钥。该进程必须具有私钥的访问权限。

它看起来像我需要给主机进程评估过去完成的winhttpcertcfg已被弃用的证书。我发现的文章指出使用证书控制台,但我错过了一些注意事项,因为我没有看到任何编辑我的证书的功能。

任何帮助将是巨大的!

谢谢

回答

5

您可以使用IIS 7.0/7.5 刚刚开始 - >运行 - > INETMGR 选择服务器 在“安全”面板,进入“服务器证书” 在左窗格中点击 - “创建自签名证书”并完成该过程 该crtfiticate将被安装在LocalMachine StoreLocation在个人店名。 现在在您的WCF服务中使用此证书,您将不会面临此错误

8

想通了。

假设您在c:\ OutCert上有一个自签名证书,以下命令将起作用。我已经离开了-sky交流。

makecert -sk SignedByCA -IV C:\ -N OutCert.pvk “CN = MyLocalHost” -ic C:\ OutCert.cer - SR LOCALMACHINE -ss我-sky交换PE

现在你可以进入MMC工具并管理私钥并授予对密钥的IIS访问权限。要管理私钥,请右键单击证书并选择All Tasks/Manage Private Keys

+0

嗯我不能标记自己的答案的答案? – JoshBerke 2008-12-05 17:49:47

+0

请解释一下 - 详细介绍如何使用MMC工具和管理私钥? – 2009-11-16 15:55:38