无法使用以下搜索条件找到 X.509 证书 ----

Ham*_*ami 5 iis wcf iis-7 web-services

在 IIS 7.5 中创建自签名 ssl 之后,我通过 Wcf 创建了自定义身份验证

并在 web.config 中使用以下代码

<serviceCertificate findValue="CN = srv-erp"/>
Run Code Online (Sandbox Code Playgroud)

还有这个

<serviceCertificate findValue="CN = srv-erp"
                                storeLocation="LocalMachine"
                                x509FindType="FindBySubjectName"
                                storeName="My"/>
Run Code Online (Sandbox Code Playgroud)

我也使用了 FindBySerialNumber。

但他们没有工作,我收到这个错误

无法使用以下搜索条件找到 X.509 证书:StoreName 'My'、StoreLocation 'LocalMachine'、FindType 'FindBySubjectDistinguishedName'、FindValue 'CN = srv-erp'。

感谢您的帮助

小智 6

似乎 findValue 属性中的问题尝试将其更改为 serv-erp。使用 x509FindType 时,不需要将属性键放在 findValue 中。

<serviceCertificate findValue="srv-erp"
                            storeLocation="LocalMachine"
                            x509FindType="FindBySubjectName"
                            storeName="My"/>
Run Code Online (Sandbox Code Playgroud)

您也可以尝试通过另一种类型找到您的证书(请参阅 X509FindType 参考)例如,通过指纹

<serviceCertificate storeLocation="LocalMachine" storeName="My" x509FindType="FindByThumbprint" 
                            findValue="b5 ca b7 d0 b8 da fd 20 b7 bb 14 5d 66 2b 53 f3 0c 20 ca f2"/>
Run Code Online (Sandbox Code Playgroud)

最后,确保您的证书存在。在搜索窗口中键入运行并复制并粘贴certmgr.msc。然后在菜单上单击操作 -> 查找证书...