EJBCA отказывается генерировать сертификаты с ошибкой: запрещено использовать тот же ключ

Мы использовали статическое значение 'usernameTest' в качестве имени пользователя, чтобы запросить EJBCA для генерации сертификатов X.509; после генерации сертификатов с использованием этого сатирического имени пользователя мы изменили его на уникальное значение, уникально идентифицирующее каждый сертификат (поскольку использование статического имени пользователя считается обновлением, поскольку имя пользователя одинаково для всех сертификатов (*)), но теперь EJBCA отказывается генерировать сертификаты и все еще ссылается на старое статическое имя пользователя 'usernameTest'; мы получаем эту ошибку:

Пользователь '250320092916' не может использовать тот же ключ, что и пользователь (-и) usernameTest, который использует / использует.

Мы отозвали все сертификаты, ранее сгенерированные для usernameTest, но мы все еще получаем это сообщение об ошибке от EJBCA. Есть ли способ, которым мы можем удалить имя пользователя 'usernameTest'?

Каждый сертификат имеет уникальный SubjectDN и имя пользователя.

Версия EJBCA - ejbca-6.2.0.

(*): Все сгенерированные сертификаты в графическом интерфейсе администрирования EJBCA связаны с одним и тем же именем пользователя.

Заранее спасибо.

4 ответа

Решение

Проблема решена; проблема не в том, что ссылка на usernameTest все еще в EJBCA, а в том, что тот же ключ (открытый ключ RSA) используется для запроса другого пользователя ('250320092916').

Похоже, что это известное ограничение при использовании симулятора HSM PTK-C из серии Safenet ProtectServer; симулятор перезапускает генератор случайных чисел, когда мы повторно инициализируем его (я подозреваю, что он неправильно), что означает, что он всегда будет генерировать одни и те же ключи в одном и том же порядке (что приводит к таким ошибкам).

Но также ошибка сообщения не ясна; если говорить о "ключе" без указания, это приводит к путанице с subjectDN или другими атрибутами, передаваемыми в EJBCA, в качестве сообщения об ошибке это может быть "открытый ключ" или "ключ RSA", ... вместо ключа;)

Томас прав. Перейдите в "Центры сертификации" в разделе "Функции CA". Отредактируйте свой CA и найдите параметр "Принудительно использовать уникальные открытые ключи" в разделе "Директивы".

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

Вы можете настроить симулятор PTK-C так, чтобы он не использовал случайное начальное число (да, это очень раздражает). Для ejbca мы задокументировали это здесь. Вы должны установить переменную среды ET_PTKC_SW_AUTOSEEDRNG=true. С этой настройкой симулятор будет генерировать реальные ключи, каждый раз новые.

Это не имеет ничего общего с HSM. Параметр политики по умолчанию для ЦС запрещает пользователям совместно использовать один и тот же открытый ключ конечного пользователя. Т.е. не выдавать сертификат с одинаковым открытым ключом разным пользователям. Это флажок в настройках CA.

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