Повторное подписание манифестов приложения и развертывания
После внесения изменений в свойства развертывания в манифесте приложения для приложений Windows Forms, приложений Windows Presentation Foundation (xbap) или решений Office необходимо повторно подписать манифесты приложения и развертывания с помощью сертификата. Этот процесс позволяет проверить, не установлены ли на компьютер конечного пользователя измененные злоумышленниками файлы.
Другой сценарий, в котором можно повторно подписать манифесты, заключается в том, что клиенты хотят подписать манифесты приложения и развертывания с помощью собственного сертификата.
Повторное подписывание манифестов приложения и развертывания
В этой процедуре предполагается, что вы уже внесли изменения в файл манифеста приложения (.manifest). Дополнительные сведения см. в разделе "Практическое руководство. Изменение свойств развертывания".
Примечание.
В ClickOnce для .NET Core 3.1 и .NET 5 или более поздней версии используйте dotnet-mage.exe вместо Mage.exe. Дополнительные сведения см. в разделе ClickOnce для .NET.
Чтобы повторно подписать манифесты приложения и развертывания с помощью Mage.exe
Откройте окно командной строки Visual Studio.
Измените каталоги в папку, содержащую файлы манифеста, которые требуется подписать.
Введите следующую команду, чтобы подписать файл манифеста приложения. Замените ManifestFileName именем файла манифеста и расширением. Замените сертификат относительным или полным путем файла сертификата и замените пароль паролем для сертификата.
mage -sign ManifestFileName.manifest -CertFile Certificate -Password Password
Например, можно выполнить следующую команду, чтобы подписать манифест приложения для надстройки, приложения Windows Form или приложения браузера Windows Presentation Foundation. Временные сертификаты, созданные Visual Studio, не рекомендуется развертывать в рабочих средах.
mage -sign WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -sign ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -sign WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Введите следующую команду, чтобы обновить и подписать файл манифеста развертывания, заменив имена заполнителей, как на предыдущем шаге.
mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
Например, можно выполнить следующую команду, чтобы обновить и подписать манифест развертывания для надстройки Excel, приложения Windows Forms или приложения браузера Windows Presentation Foundation.
mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
При необходимости скопируйте основной манифест развертывания (publish\<appname.application>) в каталог развертывания версии (publish\Application Files\<appname>_<version>).
Обновление и повторная регистрация манифестов приложения и развертывания
В этой процедуре предполагается, что вы уже внесли изменения в файл манифеста приложения (.manifest), но есть и другие файлы, которые были обновлены. При обновлении файлов хэш, представляющий файл, также должен быть обновлен.
Обновление и повторное подписывание манифестов приложения и развертывания с помощью Mage.exe
Откройте окно командной строки Visual Studio.
Измените каталоги в папку, содержащую файлы манифеста, которые требуется подписать.
Удалите расширение .deploy из файлов в папке выходных данных публикации.
Введите следующую команду, чтобы обновить манифест приложения с новыми хэшами обновленных файлов и подписать файл манифеста приложения. Замените ManifestFileName именем файла манифеста и расширением. Замените сертификат относительным или полным путем файла сертификата и замените пароль паролем для сертификата.
mage -update ManifestFileName.manifest -CertFile Certificate -Password Password
Например, можно выполнить следующую команду, чтобы подписать манифест приложения для надстройки, приложения Windows Form или приложения браузера Windows Presentation Foundation. Временные сертификаты, созданные Visual Studio, не рекомендуется развертывать в рабочих средах.
mage -update WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Введите следующую команду, чтобы обновить и подписать файл манифеста развертывания, заменив имена заполнителей, как на предыдущем шаге.
mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
Например, можно выполнить следующую команду, чтобы обновить и подписать манифест развертывания для надстройки Excel, приложения Windows Forms или приложения браузера Windows Presentation Foundation.
mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
Добавьте расширение ФАЙЛА .deploy обратно в файлы, кроме файлов манифеста приложения и развертывания.
При необходимости скопируйте основной манифест развертывания (publish\<appname.application>) в каталог развертывания версии (publish\Application Files\<appname>_<version>).
Связанный контент
- Защита приложений ClickOnce
- Управление доступом для кода для приложений ClickOnce
- ClickOnce и технология Authenticode
- Общие сведения о развертывании доверенных приложений
- Включение и настройка параметров безопасности ClickOnce
- Настройка зоны безопасности для приложения ClickOnce
- Настройка пользовательских разрешений для приложения ClickOnce
- Отладка приложения ClickOnce с ограниченными разрешениями
- Добавление доверенного издателя на клиентский компьютер для приложений ClickOnce
- Настройка поведения запроса доверия ClickOnce