WCF---關於無法使用以下搜尋標準找到 X.509 證書的問題
阿新 • • 發佈:2019-01-04
1。先將本機證書匯出。
執行certmgr.msc。
到處一個.cer檔案。
2。匯入到目標機器,重啟IIS(每匯入一次就要重啟一次)
無法使用以下搜尋標準找到 X.509 證書: StoreName“Root”、StoreLocation“CurrentUser”、FindType“FindBySubjectName”、FindValue“MyServer”。
出現這個錯誤!
據說是CurrentUser沒有訪問證書的許可權。咋整啊?
3。網上達人們說,需要本機形式的證書,不是當前使用者的。可是開啟certmgr.msc就是當前使用者的。
需要做如下操作:
1)“執行”裡輸入mmc
2)檔案-〉新增/刪除管理單元
3)找到“證書”,點“新增”,選“計算機賬戶”
4)受信任的根證書頒發機構 下匯入證書。
5)修改WCF的web.config檔案
<serviceCertificate storeLocation="CurrentUser" storeName="Root" x509FindType="FindBySubjectName" findValue="MyServer"/>
改為
<serviceCertificate storeLocation="LocalMachine" storeName="Root" x509FindType="FindBySubjectName"findValue="MyServer"/>
6)重新啟動IIS,看看結果。
可能證書“CN=MyServer”沒有能夠進行金鑰交換的私鑰,或者程序可能沒有訪問私鑰的許可權。有關詳細資訊,請參見內部異常。
暈啊。。。還是不行。。
原來匯出證書有講究,需要匯出金鑰那種方式。也就是匯出.pfx檔案。
匯出pfx檔案。再匯入一次,重啟IIS。
終於看到了久違的畫面!!!