Подписанное приложение ClickOnce выдает «Издатель не может быть проверен» - PullRequest
0 голосов
/ 11 июня 2018

Я развертываю подписанное приложение ClickOnce в сети нашей компании.Приложение представляет собой настольное приложение, созданное сервером сборки и развернутое на общем диске.Он подписан сертификатом подписи Symantec Code, который мы купили для нашей организации.Каждый разработчик установил сертификат в своем личном хранилище, и то же самое относится и к серверу сборки.Личное хранилище - это единственное место, которое можно использовать для подписи в VS.

Когда я пытаюсь установить приложение на компьютер, не предназначенный для разработки, я получаю предупреждение «Издатель не может быть проверен».Это происходит, даже если корневой сертификат присутствует в хранилище сертификатов CA на машине, а сертификат для подписи кода присутствует в хранилище доверенных издателей.Оба сертификата отображаются как «ОК» с отслеживаемым путем на компьютере.

Но если я установлю сертификат подписи кода в Личное хранилище (так же, как на устройствах разработчика), предупреждение исчезнет.Вместо этого я получаю более дружелюбное диалоговое окно с вопросом, должно ли приложение быть установлено.

Сертификат отображается в личной папке вместе с «Symantec Enterprise Mobile CA для Microsoft» и «Symantec Enterprise Mobile Root для Microsoft».

Приложение построено на основе .NET 4.71 и Visual Studio 2017, а целевой компьютер работает под управлением Windows 10.

Вопросы:

  1. Почему я долженустановить сертификат в Личном магазине на целевых ПК, чтобы предупреждение исчезло?В документах https://msdn.microsoft.com/en-us/library/ms996418.aspx говорится, что достаточно иметь корневой сертификат в «Доверенных корневых центрах сертификации»

  2. Почему я не могу выполнить автоматическую установку, установивсертификат подписи кода в магазине «Доверенные издатели»?При этом снова появляется предупреждение.

  3. Есть ли проблема, если два промежуточных и корневых сертификата также появляются в папке «Личные» и «Доверенные издатели»?Они устанавливаются вместе с сертификатом подписи кода.

Ответы [ 2 ]

0 голосов
/ 20 июля 2018

Я решил эту проблему с помощью этих действий. Я создаю ключевой файл для сертификации. Вы выполните следующие действия.
Перейдите в свойства проекта, после чего откроется указанное выше окно. Затем нажмите на подпись. Затем нажмите на новую.новый вы сможете создать ключевой файл.Как это.

enter image description here

Затем введите желаемое имя файла. Затем введите пароль длиной не менее 6 символов. Затем введите пароль для подтверждения. Затем нажмите ОК.

enter image description here

Здесь должно отображаться имя файла. У меня есть упоминание.enter image description here

Затем нажмите «Выбрать из файла». Должно появиться следующее окно. Затем выберите ключ, созданный файл. После последнего шага создайте решение. После публикации приложения предупреждение будет разрешено.enter image description here

0 голосов
/ 12 июня 2018

URL метки времени не требовался для установки без вывода сообщений.

Решением было установить 3 сертификата (по одному) в правильные папки в хранилище сертификатов на целевом компьютере.Корневой сертификат должен находиться в разделе «Доверенные корневые центры сертификации», а промежуточный сертификат - в «Промежуточных центрах сертификации».

Наконец, сертификат подписи кода должен находиться в разделе «Доверенные издатели».

https://knowledge.digicert.com/solution/SO20770.html

...