Поделиться через


Практическое руководство. Подписание манифестов приложения и развертывания

Если планируется публиковать приложение с помощью развертывания ClickOnce, то приложение и манифесты развертывания необходимости строгого именования парой открытого и закрытого ключей и подписать с помощью технологии Authenticode.Манифест можно подписать с помощью сертификата из хранилища сертификатов Windows или файла ключа.

Подписывание манифестов ClickOnce является необязательным для приложений на базе EXE-файла.Дополнительные сведения см. в разделе "Создание неподписанных манифестов" данного документа.

Сведения о создании файлов ключей содержатся в разделе Практическое руководство. Создание пары открытого и закрытого ключей.

ПримечаниеПримечание

Visual Studio поддерживает только файлы ключей Personal Information Exchange (PFX) с расширением .pfx.Однако можно выбрать другие типы сертификатов из хранилища сертификатов windows текущего пользователя, нажав кнопку Выбрать из хранилища на странице ПодписываниеКонструктор проектов.Дополнительные сведения см. в разделе Страница "Подписывание" в конструкторе проектов.

Можно подписать манифесты приложения и развертывания с помощью параметров на странице Подписи в Конструкторе проектов.Дополнительные сведения см. в разделе Страница "Подписывание" в конструкторе проектов.

Следующие процедуры применимы только к подписыванию манифестов приложений и развертывания.Сведения о подписывании сборки см. в разделе Практическое руководство. Подписывание сборки (Visual Studio).

Для доступа к странице подписывания

  1. Выбрав в Обозревателе решений узел проекта, в меню Проект щелкните Свойства (или в Обозревателе решений щелкните правой кнопкой мыши узел проекта и выберите команду Свойства).

  2. В Конструкторе проектов перейдите на вкладку Подписи.

Для подписывания манифестов приложений и развертывания с использованием сертификата

  1. На странице Подписи установите флажок Подписать ClickOnce-манифест.

  2. Нажмите кнопку Выбрать из хранилища.

    Диалоговое окно Выберите сертификат, в котором отображается содержимое хранилища сертификатов windows.

    СоветСовет

    Если нажать кнопку Просмотреть свойства сертификата, то диалоговое окно Сведения о сертификате.Это диалоговое окно содержит подробные сведения о сертификате и содержит дополнительные параметры.Можно щелкнуть сертификаты для просмотра дополнительных сведений Справки.

  3. Выберите сертификат, который требуется использовать для подписывания манифеста.

  4. Кроме того, можно указать адрес сервера отметки времени в текстовом поле URL-адрес сервера штампа времени.Это сервер, обеспечивающий указание штампа времени, когда был подписан манифест.

Для подписывания манифестов приложений и развертывания с помощью существующего файла ключа

  1. На странице Подписи установите флажок Подписать ClickOnce-манифест.

  2. Нажмите кнопку Выбрать из файла.

    Появится диалоговое окно Выберите файл.

  3. В диалоговом окне Выберите файл, перейдите к расположению файла ключа (PFX), который требуется использовать, и нажмите Открыть.

    ПримечаниеПримечание

    Можно выбрать только файлы с расширением PFX.Если имеется файл ключа или сертификат в другом формате, сохраните его в хранилище сертификатов Windows и выберите сертификат, как описано в предыдущей процедуре.Назначение выбранного сертификата должно включать подписывание кода.

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

  4. Введите пароль для доступа к файлу ключа и нажмите клавишу Ввод.

Для подписывания манифестов приложений и развертывания с использованием пробного сертификата

  1. На странице Подписи установите флажок Подписать ClickOnce-манифест.

  2. Чтобы создать новый сертификат для тестирования, нажмите кнопку Создать тестовый сертификат.

  3. В диалоговом окне Создание тестового сертификата введите пароль для защиты сетевому протоколу тестов оборудования.

Создание неподписанных манифестов

Подписывание манифестов ClickOnce является необязательным для приложений на базе EXE-файла.Процедура, приведенная ниже, описывает создание неподписанных манифестов ClickOnce-приложений.

Важное примечаниеВажно

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

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

Создание неподписанных манифестов и включение всех файлов в создаваемый хэш

  1. Для создания неподписанных манифестов, которые включают все файлы в хэш, необходимо сначала опубликовать приложение вместе с подписанными манифестами.Следовательно, сначала необходимо подписать манифесты ClickOnce-приложения согласно любой из вышеприведенных процедур и затем опубликовать приложение.

  2. На странице Подписи снимите флажок Подписать манифесты ClickOnce-приложений.

  3. Выполните сброс версии публикации так, чтобы доступной осталась только одна версия приложения.По умолчанию Visual Studio автоматически увеличивает номер редакции версии публикации при каждой публикации приложения.Дополнительные сведения см. в разделе Практическое руководство. Установка версии публикации приложения ClickOnce.

  4. Опубликуйте приложение.

Создание неподписанных манифестов и исключение определенных файлов из создаваемого хэша

  1. На странице Подписи снимите флажок Подписать манифесты ClickOnce-приложений.

  2. Откройте диалоговое окно Файлы приложения и установите для параметра Хэш значение Исключить, чтобы исключить требуемые файлы из создаваемого хэша.

    ПримечаниеПримечание

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

  3. Опубликуйте приложение.

См. также

Задачи

Практическое руководство. Создание пары открытого и закрытого ключей

Ссылки

Страница "Подписывание" в конструкторе проектов

Основные понятия

Сборки со строгими именами

Развертывание и безопасность технологии ClickOnce