我正在Windows Vista SP1上创建一个在IIS7中托管的WCF服务.我收到以下错误:
证书'CN = SignedByLocalHost'必须具有能够进行密钥交换的私钥.该进程必须具有私钥的访问权限.
看起来我需要让主机进程评估过去使用winhttpcertcfg完成的证书,该版本已被Vista弃用.我找到的文章表明使用证书控制台,但我遗漏了一些东西,因为我没有看到任何编辑我的证书的能力.
任何帮助都会很棒!
谢谢
弄清楚了.
假设您在c:\ OutCert上有自签名证书,则以下命令将起作用.我离开了-sky交易所.
makecert -sk SignedByCA -iv c:\ OutCert.pvk -n"CN = MyLocalHost"-ic c:\ OutCert.cer -sr LocalMachine -ss My -sky exchange pe
现在,您可以进入MMC工具并管理私钥并授予对密钥的IIS访问权限.要管理私钥,请右键单击证书并选择All Tasks / Manage Private Keys
.
您可以使用IIS 7.0/7.5 Just Start-> Run - > inetmgr选择服务器在"Security"面板下,转到"Server Certificates"在左侧窗格中单击 - "Create self Signed Certificate"并完成该过程crtfiticate将获得安装在LOCALMACHINE StoreLocation下个人 STORENAME.现在在WCF服务中使用此证书,您将不会遇到此错误