Я развертываю подписанное приложение ClickOnce в сети нашей компании.Приложение представляет собой настольное приложение, созданное сервером сборки и развернутое на общем диске.Он подписан сертификатом подписи Symantec Code, который мы купили для нашей организации.Каждый разработчик установил сертификат в своем личном хранилище, и то же самое относится и к серверу сборки.Личное хранилище - это единственное место, которое можно использовать для подписи в VS.
Когда я пытаюсь установить приложение на компьютер, не предназначенный для разработки, я получаю предупреждение «Издатель не может быть проверен».Это происходит, даже если корневой сертификат присутствует в хранилище сертификатов CA на машине, а сертификат для подписи кода присутствует в хранилище доверенных издателей.Оба сертификата отображаются как «ОК» с отслеживаемым путем на компьютере.
Но если я установлю сертификат подписи кода в Личное хранилище (так же, как на устройствах разработчика), предупреждение исчезнет.Вместо этого я получаю более дружелюбное диалоговое окно с вопросом, должно ли приложение быть установлено.
Сертификат отображается в личной папке вместе с «Symantec Enterprise Mobile CA для Microsoft» и «Symantec Enterprise Mobile Root для Microsoft».
Приложение построено на основе .NET 4.71 и Visual Studio 2017, а целевой компьютер работает под управлением Windows 10.
Вопросы:
Почему я долженустановить сертификат в Личном магазине на целевых ПК, чтобы предупреждение исчезло?В документах https://msdn.microsoft.com/en-us/library/ms996418.aspx говорится, что достаточно иметь корневой сертификат в «Доверенных корневых центрах сертификации»
Почему я не могу выполнить автоматическую установку, установивсертификат подписи кода в магазине «Доверенные издатели»?При этом снова появляется предупреждение.
Есть ли проблема, если два промежуточных и корневых сертификата также появляются в папке «Личные» и «Доверенные издатели»?Они устанавливаются вместе с сертификатом подписи кода.