Импортируйте сертификат в хранилище ключей для Wildfly 9.2 (хранилище ошибок не содержит ключей)

У меня есть сертификат p7b, и я импортирую в IIS и экспортирую в файл 3.cer, как показано ниже.

  1. root.cer
  2. intermediate.cer
  3. servercertificate.cer

затем я использую следующие команды, чтобы успешно вставить все 3 сертификата в хранилище ключей.

keytool -import -alias root -keystore test.keystore -trustcacert -file root.cer

затем я запускаю свою wildfly, и появляется сообщение об ошибке "хранилище ключей не содержит ключа", но когда я перечисляю хранилище ключей, в нем находятся все 3 ключа. Я не уверен, почему это не работает, и надеюсь, что кто-то может просветить меня об этом.

1 ответ

Хранилище ключей Java может содержать (как минимум) два вида записей:

  • запись доверенного типа, содержащая сертификат

  • 'privateKeyEntry', который содержит цепочку сертификатов privatekey AND

Вы создали первый вид, импортировав отдельные сертификаты; посмотрите на дисплей от keytool -list и эти записи будут помечены trustedCertEntry, Серверу SSL/TLS требуется цепочка сертификатов privatekey AND, в privateKeyEntry ,

Я не знаю ISS, но если вы имеете в виду, что вы сгенерировали ключ и CSR в IIS, IIS обычно использует хранилище ключей Windows для некоторой системной учетной записи; Я не помню, какой, но это должно быть очевидно в конфиге где-то. Вам необходимо запустить MMC+CertMgr для этой учетной записи, найти правильную запись (с желтой клавишей с левой стороны от значка сертификата) и экспортировать ее с "Да экспортировать закрытый ключ" в формате "PKCS#12 (PFX").) '' включить... путь 'к файлу. Во многих случаях Java/JCE может использовать файл PKCS12 непосредственно в качестве хранилища ключей (вместо JKS), но если вам нужно или предпочитаете конвертировать в JKS, используйте keytool -importkeystore (не -importcert).

Смотрите также сбой конфигурации JBoss Https с сертификатом CER/P7b.

Другие вопросы по тегам