Подписание кода с помощью Azure DevOps

В этом руководстве представлены общие сведения о подписывании кода с помощью Azure DevOps с использованием сертификата, хранящегося в Azure Key Vault. Для выполнения этих инструкций вам потребуется:

Облачная служба подписи кода eSigner от SSL.com теперь обеспечивает простую интеграцию с популярными инструментами CI/CD, включая Azure DevOps, для автоматической подписи кода. eSigner позволяет удобно добавлять цифровые подписи и метки времени, которым доверяют во всем мире, в ваш код из любого места без необходимости в USB-токенах, HSM или другом специальном оборудовании.

Перейдите к этой статье, чтобы узнать, как интегрировать eSigner с Azure DevOps: Руководство по интеграции подписи в облаке Azure DevOps.

Зарегистрируйте приложение Azure

Во-первых, вам необходимо зарегистрировать новое приложение Azure, чтобы вы могли подключиться к Key Vault для подписи.

  1. Войдите в Лазурный портал.
    Войдите в Azure
  2. Перейдите в Azure Active Directory, (Нажмите Дополнительные услуги если значок Azure Active Directory не отображается.)
    Azure Active Directory
  3. Нажмите Регистрация приложений, в левом столбце.
    Регистрация приложений
  4. Нажмите Новая регистрация.
    Новая регистрация
  5. Дайте вашему заявлению Фамилия И нажмите Зарегистрируйтесь кнопка. Оставьте остальные настройки по умолчанию.
    Зарегистрируйте приложение
  6. Ваше новое приложение зарегистрировано. Скопируйте и сохраните показанное значение для ID приложения (клиента), потому что он вам понадобится позже.
    ID приложения (клиента)

Создать секрет клиента

Затем сгенерируйте секрет клиента, который будет использоваться в качестве учетных данных при подписании.

  1. Нажмите Сертификаты и секреты в левом меню.
    Сертификаты и секреты
  2. Нажмите Секрет нового клиента.
    Секрет нового клиента
  3. Дайте секрету вашего клиента Описание, установите срок действия по желанию и щелкните Добавить .
    Добавить секрет клиента
  4. Скопируйте Значение секрета вашего нового клиента немедленно и сохраните его в надежном месте. В следующий раз, когда страница будет обновлена, это значение будет замаскировано и безвозвратно.
    копировать секретное значение

Включить доступ в Key Vault

Теперь вам нужно включить доступ для вашего приложения в Azure Key Vault.

  1. Перейдите к Key Vault, содержащему сертификат, который вы хотите использовать для подписи, и щелкните значок Политики доступа ссылку.
    Политики доступа
  2. Нажмите Добавить политику доступа.
    Политики доступа
  3. Под Ключевые разрешения, включить VerifySign, Getкачества List.
    Ключевые разрешения
  4. Под Секретные разрешения, включить Get и List.
    Секретные разрешения
  5. Под Разрешения сертификата, включить Get и List.
    Разрешения сертификата
  6. Нажмите Не выбрано, ничего не выбрано ссылка, под Выбрать принципала, затем с помощью поля поиска найдите и выберите приложение, созданное в предыдущем разделе.
    Выбрать принципала
  7. Нажмите Выберите .
    Кнопка выбора
  8. Нажмите Добавить .
    Добавить кнопку
  9. Нажмите Сохранить.
    Сохранить
  10. Ваша политика доступа настроена.
    Политика доступа

Настроить DevOps Build

Теперь вы можете настроить свою сборку. Откройте свой проект в Azure DevOps.

Проект Azure DevOps

Хранить учетные данные приложения в виде переменных

Вы можете включить свой идентификатор приложения и секрет клиента непосредственно в файл конвейера YAML, но это будет более безопасно, если вы сохраните их как переменные в DevOps.

  1. Нажмите Трубопроводы.
    Трубопроводы
  2. Нажмите Библиотека.
    Библиотека
  3. Нажмите + Группа переменных.
    Добавить группу переменных
  4. Дайте вашей группе переменных имя.
    добавить имя
  5. Нажмите Добавить.
    Добавить
  6. Введите имя переменной для идентификатора вашего приложения, затем вставьте значение. Нажмите на замок, чтобы зашифровать переменную, когда закончите.
    Переменная идентификатора приложения
  7. Повторите процесс, чтобы добавить переменную для секрета вашего клиента.
    Переменная секрета клиента
  8. Нажмите Сохранить.
    Сохранить
  9. Свяжите группу переменных в своем конвейере. (замените VARIABLE-GROUP именем вашей фактической группы переменных.)
    переменные: - group: 'VARIABLE-GROUP'

Добавление шага конвейера для установки средства подписи Azure

Инструмент подписи Azure это утилита с открытым исходным кодом, которая предлагает ЗнакИнструмент функциональность сертификатов и ключей, хранящихся в Azure Key Vault. Добавьте в конвейер следующий шаг для установки Azure Sign Tool:

- задача: DotNetCoreCLI @ 2 входа: команда: 'custom' custom: 'tool' arguments: 'install --global azuresigntool' displayName: Install AzureSignTool

Добавление команды средства подписи Azure в конвейер

  1. Теперь вы можете добавить задачу для подписи кода в конвейер. Вам понадобится следующая информация:
    • ВАШЕ URI хранилища ключей (доступно на портале Azure):
      URI хранилища ключей
    • Понятное имя вашего сертификата в Key Vault:
      Название сертификата
    • ВАШЕ ID приложения и Секрет клиента имена переменных:
      имена переменных
  2. Добавьте вызов Azure Sign Tool в свой конвейер. Замените значения, указанные заглавными буквами, вашими фактическими значениями:
    - задача: CmdLine @ 2 входа: скрипт: AzureSignTool sign -kvu "KEY-VAULT-URI" -kvi "$ (APPLICATION-ID-VAR)" -kvs "$ (CLIENT-SECRET-VAR)" -kvc CERTIFICATE-NAME -tr "http://ts.ssl.com" -td sha256 "FILE-TO-SIGN" displayName: Sign Code
  3. Если подписание прошло успешно, вы должны увидеть такой вывод:
    информация: AzureSignTool.Program [0] => Файл: D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe Файл подписи D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe Информация: AzureSignTool. Программа [0] => Файл: D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe Подпись для файла D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe успешно завершена.

SSL.com's EV Подписание кода сертификаты помогают защитить ваш код от несанкционированного вмешательства и компрометации благодаря высочайшему уровню проверки и доступны всего за $ 249 в год. Вы также можете используйте свой сертификат подписи кода EV в масштабе в облаке с помощью eSigner. Благодаря автоматизированному варианту eSigner подходит для подписи корпоративного кода.

ЗАКАЗАТЬ СЕЙЧАС

Подпишитесь на рассылку новостей SSL.com

Не пропустите новые статьи и обновления с SSL.com

Будьте в курсе и будьте в безопасности

SSL.com является мировым лидером в области кибербезопасности, PKI и цифровые сертификаты. Подпишитесь, чтобы получать последние новости отрасли, советы и анонсы продуктов от SSL.com.

Мы будем рады вашим отзывам

Пройдите наш опрос и поделитесь с нами своими мыслями о своей недавней покупке.