Java Keytool избавляется от SAN при генерации CSR

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

Что дает?

Обновление: я узнал, что если я хочу включить SAN в CSR, мне нужно явно указать SAN в команде:

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

Тем не менее, я сделал ставку на использование SAN, поскольку подписание CSR с помощью моего ЦС OpenSSL излишне сложно.


person HolySamosa    schedule 21.01.2014    source источник
comment
Можете ли вы предоставить список команд, которые вы набрали? В CSR можно включить атрибут extensionRequest (например, атрибут 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
Можете ли вы объяснить больше, почему это «нормально»? Если у меня нет полного доменного имени и я не указываю CN, а только IP-адрес с SAN, это должно быть включено в CSR. - person Matt Hughes; 09.07.2014