Я пытался добавить новый сертификат в наше хранилище доверенных сертификатов. Но я получил ошибку alias already exists.

Я пока не могу удалить старый сертификат, но мне нужно добавить новый сертификат.

Будет ли иметь значение, если я импортирую обновленный сертификат под другим псевдонимом?

Существующий псевдоним сертификата: *.example.domain.com

Я планирую использовать: *example.domain.com

Вот команда, которую я использую для импорта нового сертификата:

keytool -import -trustcacerts -keystore keystore_trust.jks -storepass passwordhere -noprompt -alias "*.example.domain.com" -file /temp/cert/cert.pem

Я знаю, что команда все еще будет работать, но приведет ли это к какой-либо ошибке, связанной с сертификатом?

0
schroeder 10 Янв 2022 в 15:28

1 ответ

Псевдоним обычно используется для извлечения элемента из хранилища ключей (сертификата, ключа) в приложении. С точки зрения самого хранилища ключей не имеет значения, какой псевдоним присвоен сертификату. Однако это важно для приложения, использующего хранилище ключей. Таким образом, если ваше приложение ожидает, что сертификат и ключ будут доступны с определенным псевдонимом, но вы указали другой псевдоним, то оно либо не сможет получить его, либо получит что-то другое.

См. также Что такое назначение/роль атрибута "псевдоним" в файлах хранилища ключей Java?.

1
Steffen Ullrich 10 Янв 2022 в 14:42
Хотя для TLS (помеченного, но не упомянутого в Q) TrustManager JSSE по умолчанию игнорирует псевдонимы; он использует все записи trustcert (плюс сертификаты EE/leaf в любых записях с закрытым ключом! -- но их, как правило, не должно существовать в чем-то, помеченном как хранилище доверенных сертификатов).
 – 
dave_thompson_085
11 Янв 2022 в 03:13