我使用此配置创建一个带有身份验证方法的简单wcf项目,如您所见:
<serviceCertificate findValue="STSTestCert"
storeLocation="LocalMachine"
x509FindType="FindBySubjectName"
storeName="My"/>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpsBinding" scheme="https"/>
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
但是当我运行该项目时,我收到此错误:
使用以下搜索条件找不到X.509证书:StoreName'My',StoreLocation'LocalMachine',FindType'FindBySubjectName',FindValue'STSTestCert'。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪,以获取有关错误及其在代码中的起源位置的更多信息。
异常详细信息:System.InvalidOperationException:使用以下搜索条件找不到X.509证书:StoreName'My',StoreLocation'LocalMachine',FindType'FindBySubjectName',FindValue'STSTestCert'。
答案 0 :(得分:1)
您确定已安装证书吗?例如,如果您尝试使用PowerShell dir cert:\LocalMachine\My
,您是否在那里找到证书STSTestCert
?如果没有,那么你可能在其他地方安装它。也许当你安装它时,你没有明确指定Personal
文件夹(因为这是My
在这里的含义)