2009-07-29 35 views
12

我使用的證書與我的WCF服務使用我的測試證書在開發的Visual Studio生成WCF獲得證書編碼值

<identity> 
    <certificate encodedValue="large string!!!!!!!" /> 
</identity> 

值的Web.config所以有一個編碼值。

現在我正在部署我想獲取由管理服務器的第三方維護的證書的編碼值。

我知道,使用svcutil.exe工具如下將給我這個。

svcutil.exe http://servicename.svc 

我想知道什麼是

  1. 這是推薦的方法
  2. 是否有任何任何方法可以做到這一點,我很想念

編輯:視覺Studio不可用,我無法移動證書,因此它必須是非VS解決方案

回答

0

如果它是由一個第三方,則服務器證書將被加載到Windows證書存儲區,並選定爲服務行爲

在服務行爲,你可以選擇它通過使用端點上的證書的一部分來管理

<behaviors> 
    <serviceBehaviors> 
    <behavior name="MyServiceBehavior"> 
     <serviceCredentials> 
     <serviceCertificate findValue="CN=myhost.mydomain.org" /> 
     </serviceCredentials> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 

該元素用於連接客戶端。只需刷新客戶端解決方案中代理的服務參考,身份元素應使用新證書的公開部分的編碼值版本進行更新。

+0

我應該做說,視覺工作室將不可用。 – AJM 2009-07-29 11:35:19

+0

哦。那麼你可以在VS可用的機器上重新創建代理,然後使用該配置中的條目。還是託管的機器對外界不可視? – blowdart 2009-07-29 12:00:14

20

這可以通過證書(通過IIS或證書管理單元)導出爲.CER文件,而無需用base64形式的私鑰,然後在記事本和複製打開和粘貼到encodedValue這