Отключить защиту закрытого ключа

При использовании самозаверяющего сертификата для подписи исходящих сообщений AS2 с BizTalk, я получаю ошибку

Кодировщику MIME не удалось подписать сообщение, поскольку в сертификате включена защита закрытого ключа..."

с предложением

отключите защиту закрытого ключа, чтобы BizTalk мог использовать сертификат для подписи.

Как отключить защиту закрытого ключа?

Использование Windows Server 2012 R2 и BizTalk Server 2016.

Самозаверяющий сертификат, созданный с помощью Powershell New-SelfSignedCertificate.

2 ответа

У меня просто была такая же проблема, и ни одно из предложенных решений (загрузка профиля пользователя, не выбор сильной защиты закрытого ключа при импорте) не сработало. Я наконец решил ее, когда наткнулся на эту старую ссылку: http://www.semaphoremd.com/2014/05/23/cryptographic-provider-for-digital-certificate-used-by-as2-in-biztalk. В основном проблема заключается в том, что Biztalk 2016 по-прежнему опирается на древний.NET 3.5, в котором отсутствует поддержка KSP. Проверьте сертификат:

certutil -p <password> cert.pfx

Если это говорит Provider = Microsoft Software Key Storage Provider тогда Biztalk потерпит неудачу и пожалуется на защиту закрытого ключа. Исправьте это с помощью openssl:

openssl pkcs12 -in my-original-cert.pfx -out temp.pem
openssl pkcs12 -export -in temp.pem -out my-fixed-cert.pfx

Импортировать my-fixed-cert.pfx в хранилище личных сертификатов (и, если он самозаверяющий, также импортировать как ключ CA). Обновите Biztalk, чтобы использовать обновленный сертификат, и, надеюсь, проблема должна быть решена.

РЕДАКТИРОВАТЬ:

Если вы начинаете с нуля, укажите старого провайдера:

New-SelfSignedCertificate -Provider "Microsoft Strong Cryptographic Provider" ...

При импорте закрытого ключа вам необходимо снять этот флажок:

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