AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.08.2018, 01:53   #1  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от IvanS Посмотреть сообщение
В общем при отправке сообщений падает ошибка в момент дешифровки пароля smtp: Ошибка в методе Global::editEncryptedField на строке
X++:
return appl.DecryptForPurpose(_common.(_fieldId), common.encryptionPurpose(_fieldId));
Из подробностей только
Microsoft.Dynamics.Ax.Xpp.Security.EncryptionException: Encryption error occured.

Есть у кого идеи как отправлять сообщения?
Не уверен, что дело в этом, но у меня был похожий случай во время установки D365O on-premises Суть была в том, что надо было сгенерить сертификат для Data Encryption непременно с использованием Microsoft Enhanced RSA and AES Cryptographic Provider - прям жирным шрифтом выделено в инструкции. Я сдуру решил генерить сертификат через местный CA, а не самоподписанный, говорю ему - сделай такой-то, он мне - пожалуйста! Я посмотрел, пощупал, понюхал - вроде то, что надо, разлил везде эти сертификаты, начал ставить... А через какое-то время на установке, кажется, Management Reporter полезла ошибка, связанная с криптографией, вот прям такая же информативная:
Код:
Microsoft.Dynamics.Ax.Xpp.Security.EncryptionException: Encryption error occured.
Не буду рассказывать, как я 3 дня с ней бодался, но в итоге выяснилось, что за кулисами вылезала ошибка
Код:
System.Security.Cryptography.CryptographicException: Invalid provider type specified
Это было уже намного лучше - оказалось, что местный CA молча сгенерил мне сертификат не для Microsoft Enhanced RSA and AES Cryptographic Provider, как я просил, а для Microsoft RSA SChannel Cryptographic Provider, потому что другие провайдеры, видите ли, были на нем не включены. В коде же вспомогательной сборки (Microsoft.Dynamics.AX.Framework.EncryptionEngine.dll) явным образом используется RSACryptoServiceProvider, который, собака, поддерживает только то, что сгенерил Microsoft Enhanced RSA and AES Cryptographic Provider. Внимание, вопрос, а как он это узнает по сертификату? Оказалось, что в свойствах закрытого ключа под особым микроскопом можно разглядеть такое:
Код:
[Private Key]
  Provider Name: Microsoft RSA SChannel Cryptographic Provider
  Provider type: 12
А у правильного сертификата для шифрования данных должно быть вот так:
Код:
[Private Key]
  Provider Name: Microsoft Enhanced RSA and AES Cryptographic Provider
  Provider type: 24
При этом кроме циферок 12/24 сертификаты могут больше ничем не отличаться - у обоих будет, скажем, использоваться SHA256 и RSA 2048. В общем, проверьте, той ли системы у вас сертификат для шифрования данных.
За это сообщение автора поблагодарили: sukhanchik (6), IvanS (1), vmoskalenko (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
d365technext: Email In CC and BCC D365FO Blog bot DAX Blogs 0 13.08.2018 18:12
D365FO - Как включить шрифты штрих-кода автоматически на рабочих станциях пользователей? MarinaAX DAX: Администрирование 0 27.02.2018 22:13
stoneridgesoftware: Email Alerts on Power BI Dashboards with Microsoft Flow – Better Together Blog bot DAX Blogs 0 19.01.2017 20:11
emeadaxsupport: Sending email notifications for Retail orders [AX 2012 R2 and R3] Blog bot DAX Blogs 0 17.03.2015 00:11
Axapta 3, отправка файлов по eMail (КАК ИСПРАВИТЬ) raz DAX: Программирование 1 01.10.2003 15:07

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:51.