程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> WCF分布式開發常見錯誤(25)

WCF分布式開發常見錯誤(25)

編輯:關於.NET

WCF分布式開發常見錯誤(25):The certificate 'CN=WCFHTTPS' must have a private key that is capable of key exchange

在准備WCF安全開發實踐編程系列文章的時候,制作證書出現這個問題。

The certificate 'CN=WCFHTTPS' must have a private key that is capable of key exchange. The process must have access rights for the private key.

證書必須有一個可以交換密鑰的私鑰,進程必須有訪問私鑰的權限。

【1】原因分析:

就是證書訪問權限導致的問題,其次就是證書是否有密鑰,因為要使用密鑰 來解密消息。而且這個證書要安裝受信任的機構裡。

證書沒有一個可以交換的私鑰,我們需要重新制作證書。類型是 exchange.

【2】類似問題:

國內外也有很多網友遇到這個問題

有可能有辦這個的參考文章:

http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/8e1c3feb- 56de-4366-8af5-3d526d4f4ce1/

http://social.msdn.microsoft.com/forums/en-US/wcf/thread/ac4a69d1- af3e-495c-8068-cb25ad0bb146/

http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/b1369589- 5207-4438-bcb8-2cade616bc0e

【3】解決辦法:

在Visual Studio 命令行工具裡啟動命令行窗口,輸入以下命令:

1.制作一個證書。制作證書:makecert -sr localmachine -ss My -n CN=MyServerCer -sky exchange -pe -r。http://msdn.microsoft.com/zh- cn/library/aa702761.aspx

exchange 表示密鑰可以導入。

2.導出證書文件,帶密鑰的pfx文件。使用mmc

3.導入證書到信任的人。

4.導入證書到信任的機構,這個證書就被信任了。

這個問題WCF安全開發過程中會遇到,大家多注意。

參考文章:

http://social.microsoft.com/Forums/zh-CN/wcfzhchs/thread/857f4257- 8f43-4c7d-baa6-d2cabba36372

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved