Отключить подписку VSTO на другую конфигурацию

110
14

У меня есть Excel Addin (VSTO), написанный на С#, с использованием Visual Studio 2017.

Моя организация использует сертификат подписи кода из Symantec, который хранится на USB-накопителе. USB-накопитель подключен к машине сборки, к которой я не могу получить доступ во время разработки. Я настроил свой VSTO для подписания во время сборки в настройках проекта, как показано на рисунке. enter image description here Моя проблема в том, что на машинах разработки у меня нет доступа к сертификату, поэтому сборка не выполняется.

Моим идеальным решением было бы отключить подписание кода в конфигурации DEBUG, но такая вещь могла бы отключить подписание для любой конфигурации. Кто-нибудь испытывал такую проблему?

спросил(а) 2018-10-18T11:14:00+03:00 2 года, 1 месяц назад
1
Решение
58

Создайте самозаверяющий сертификат для использования разработчиком, присвоив ему то же имя, что и производственный сертификат, и даже проверите его в исходном контроле. Измените файл проекта, чтобы иметь настраиваемый шаг сборки только для конфигураций Debug, которые будут подписываться с использованием стандартных методов (не используя инструменты подписи, например, Symantec), но с самозаверяющим сертификатом. Возможно, вы сможете это сделать в пользовательском интерфейсе, иначе измените.csproj напрямую, чтобы включить пользовательский шаг msbuild.

Сервер сборки будет продолжать строить и подписываться с любыми имеющимися у вас средствами, в том числе с сертификатом на USB-накопителе. Это позволит серверу CI строить и подписываться официально, сохраняя секретность сертификата.

ответил(а) 2018-10-18T11:33:00+03:00 2 года, 1 месяц назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема