2014-01-21 35 views
1

使用附帶的JDK 7的keytool,我創建包括與SAN擴展的證書密鑰庫。如果解碼證書,我會看到SAN擴展。如果我使用keytool導出CSR,則CSR中缺少SAN信息。Java keytool的剝離了SAN上的CSR生成

什麼給?

更新: 我知道,如果我想包括在CSR一個SAN我需要明確地說明SAN中的命令在謊言:

keytool -certreq -alias mycertificate -keystore mekeystore.jks -ext san=dns:mydomain.com

這麼說,我由於我的OpenSSL CA無法複雜地使用SAN來簽署CSR,

+0

你能提供的命令列表中鍵入?這可能包括在企業社會責任(例如包含SAN擴展的extensionRequest屬性)的extensionRequest屬性,但我不知道密鑰工具支持此功能。 – Jcs

回答

3

這是正常的出口CSR時SAN不包括在內。 在生成CSR時,您只需提供一個通用名稱或域名。

參考此鏈接:在從證書頒發機構的證書的訂購過程中被添加 https://support.globalsign.com/customer/portal/articles/1229769-certificate-signing-request-csr---overview

SAN或主題備用名稱。 SAN正被添加到證書中,而不是在CSR上。

+1

證書上的SAN正像單個域名證書一樣安裝。只要SAN包含在證書中,它就會在服務器上得到保護。 –

+0

你能解釋一下爲什麼這是'正常'嗎?如果我沒有FQDN並且沒有指定CN,但只有帶有SAN的IP,這應該包含在CSR中。 –