Java Keytool премахва SAN при генериране на CSR

Използвайки keytool, включен в JDK 7, създавам хранилище за ключове, включително сертификат със SAN разширение. Ако декодирам сертификата, виждам SAN разширението. Ако след това използвам keytool за експортиране на CSR, SAN информацията липсва в CSR.

Какво дава?

Актуализация: Научих, че ако искам да включа SAN в CSR, трябва изрично да посоча SAN в командата lie, така че:

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

Въпреки това, настоях да използвам SAN, тъй като подписването на CSR с моя OpenSSL CA е ненужно сложно.


person HolySamosa    schedule 21.01.2014    source източник
comment
Можете ли да предоставите списъка с команди, които сте въвели? Възможно е да включите атрибут extensionRequest в CSR (например атрибут extensionRequest, съдържащ SAN разширението), но не съм сигурен, че keytool поддържа тази функция.   -  person Jcs    schedule 22.01.2014


Отговори (1)


Нормално е SAN да не е включен при експортиране на CSR. При генерирането на CSR трябва да предоставите само едно общо име или име на домейн.

Вижте тази връзка: https://support.globalsign.com/customer/portal/articles/1229769-certificate-signing-request-csr---overview

SAN или алтернативно име на субект се добавят по време на процеса на поръчване на сертификат от сертифициращ орган. SAN се добавят към сертификата, а не към CSR.

person John Eli    schedule 21.01.2014
comment
SAN на сертификата се инсталира като един сертификат за име на домейн. Докато SAN е включен в сертификата, той ще бъде защитен на сървъра. - person John Eli; 22.01.2014
comment
Можете ли да обясните повече защо това е „нормално“? Ако нямам FQDN и не посоча CN, а само IP със SAN, това трябва да бъде включено в CSR. - person Matt Hughes; 09.07.2014