2012-10-04 32 views
0

我有一個應用程序使用帶有消息憑證類型證書的WCF SOAP服務。我使用makecert生成了開發/測試期間生成的開發級證書,現在我準備將代碼推廣到下一個環境。爲此,我希望獲得生產級證書。如何爲WCF應用程序生成CSR?

與我們的系統代表之一參加工作後,我能夠獲得客戶端證書PFX文件。這是生成的證書OpenSSL的配置:

[req] # openssl req params 
prompt = no 
distinguished_name = MyName.Client 

[MyName.Client] 
C = US 
ST = New York 
O = MyCompany 
OU = MyUnit 
CN = MyName 
subjectKeyIdentifier = hash 
authorityKeyIdentifier = keyid:always 
basicConstraints = critical,CA:FALSE 

我們使用Microsoft證書服務在我們的服務器之一(我不是太熟悉了吧)生成MyName.Client.cer和MyName.Client。密鑰文件。我們有一個根證書頒發機構,名稱爲MyCA.cer。然後,我們使用OpenSSL從MyName.key,MyName.Client.cer和MyCA.cer生成MyName.pfx。我安裝MyName.Client.pfx,MyCA.cer和MyCA.crl,並從服務跟蹤文件中的以下異常:

The X.509 certificate CN=MyName.Client, OU=MyUnit, O=MyCompany, S=New York, C=US chain building failed. The certificate that was used has a trust chain that cannot be verified. Replace the certificate or change the certificateValidationMode. The revocation function was unable to check revocation because the revocation server was offline. 

所以我卡住了。我是一個擁有證書的新手,並且認爲這將是直接的。我們打算在我們的最終環境中使用GeoTrust證書。我們爲他們做了很多生意。我試圖弄清楚告訴我們的系統人員應該如何從GeoTrust獲取證書。在我看來,由於我的應用程序與開發證書合作,我應該能夠安裝它們,那麼只需更改我的配置以查找新的證書。我錯了嗎?

在此先感謝您的幫助。

回答

0

所以我找到了問題和解決方法(現在)。據錯誤,撤銷列表是無法訪問的,所以我說這個服務器的web.config:

<authentication revocationMode="NoCheck"> 

似乎做的伎倆!