Используя API BouncyCastle, я создаю сертификаты и добавляю их в хранилище сертификатов, помечая личный ключ как сохраняемый и экспортируемый.
Мой ключ отображается в хранилище personal
на локальной машине и доступен для выбора внутри Диспетчер IIS, однако, когда я нажимаю OK, чтобы связать свой сертификат, я получаю диалоговое окно с сообщением об ошибке: -
A specified logon session does not exist. It may already have been terminated. (Exception from HRESULT: 0x80070520)
В Windows Event Viewer, следующее записано: -
A fatal error occurred when attempting to access the TLS server credential private key. The error code returned from the cryptographic module is 0x8009030D. The internal error state is 10001.
Я подтвердил, что мой закрытый ключ можно экспортировать, перейдя к Action -> All Tasks -> Export...
в сертификате MM C и вижу, что переключатель для экспорта закрытого ключа не выделяется серым цветом.
Подозревая, что это может быть проблема с правами доступа к файлам, я также из MM C перешел на All Tasks -> Manage Private Keys
и попытался установить Full Control + Read
в пуле приложений, который сайт использует в IIS. Та же ошибка, в отчаянии, я даже попытался установить ее на Everyone
, но безуспешно.
Я не уверен, что еще может быть причиной этой проблемы, или какие другие шаги мне следует попробовать.
Вот ссылка на код вставки кода, который я использую для создания сертификата, в случае, если он предоставляет какую-либо полезную информацию.