Как интегрировать eSigner CKA с инструментами CI/CD для автоматической подписи кода

В двух таблицах ниже показано, как интегрировать eSigner CKA с Инструменты непрерывной интеграции/непрерывной доставки (CI/CD) для автоматическое подписание кода. Руководства для CircleCI, GitHub Actions, Gitlab CI и Travis CI предоставляются на подпись. .NET-файлы. Руководства по Azure Pipeline, GitHub Actions, Gitlab CI и Travis CI предоставляются на подпись. файлы .vsix.

eSigner CKA (адаптер облачного ключа) — это приложение на базе Windows, использующее интерфейс CNG (поставщик ключей KSP), чтобы позволить таким инструментам, как certutil.exe и signtool.exe, использовать eSigner Cloud Signature Consortium (CSC)-совместимый API  для операций подписи корпоративного кода.

Перед выполнением подписи кода на основе eSigner в инструментах CI/CD необходимо выполнить три обязательных условия:

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

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

Примеры рабочих процессов подписи .vsix

Переменные среды
  • USERNAME: имя пользователя учетной записи SSL.com. (Необходимый)
  • PASSWORD: пароль учетной записи SSL.com (обязательно)
  • TOTP_SECRET: Секрет OAuth TOTP. Вы можете получить доступ к подробной информации о Автоматизация подписи кода eSigner EV — SSL.com (обязательно)
  • РЕЖИМ: «песочница» или «продукт» (обязательно)
GitHub интеграциюКонвейер AzureИнтеграция Gitlab с непрерывной инфраструктуройИнтеграция Travis CI

Пример рабочего процесса подписи .vsix

# Имя рабочего процесса.
название: Знак Артефакта

# Запускаем этот рабочий процесс при нажатии
на: нажать

# Создаем переменную среды
среда:
MASTER_KEY: мастер.ключ
SIGNABLE_FILE_PATH: HelloWorld.dll
SIGNABLE_VSIX_FILE_PATH: SSLcom.vsix
INSTALL_DIR: C:\Users\runneradmin\eSignerCKA
MASTER_KEY_FILE: C:\Users\runneradmin\eSignerCKA\master.key

вакансии:
# Определяет задание с именем «sign-file»
файл подписи:
# Запуск задания в Windows Runner
запуски: windows-последняя
# Когда рабочий процесс запускается, это имя регистрируется
имя: Подписать файл DLL с помощью eSignerCKA


действия:
# 1) Проверьте исходный код, чтобы рабочий процесс мог получить к нему доступ.
– имя: Checkout Repository
использует: action/checkout@v3

# 2) Загрузите и разархивируйте установку eSignerCKA.
- название: Скачать и разархивировать программу установки eSignerCKA
запустить: |
Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.6/SSL.COM-eSigner-CKA_1.0.6.zip»
Развернуть-Архивировать-Force eSigner_CKA_Setup.zip
Удаление элемента eSigner_CKA_Setup.zip
Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»

# 3) Установите eSignerCKA
– название: Настройка eSignerCKA в тихом режиме
запустить: |
New-Item -ItemType Directory -Force -Path ${{ env.INSTALL_DIR }}
./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="${{ env.INSTALL_DIR }}" | Out-Null

# 4) Установите информацию об учетной записи SSLcom.
– имя: Информация об учетной записи конфигурации на eSignerCKA
запустить: |
${{ env.INSTALL_DIR }}/eSignerCKATool.exe config -mode «${{ secrets.MODE }}» -пользователь «${{ secrets.USERNAME }}» -pass «${{ secrets.PASSWORD }}» - totp “${{ secrets.TOTP_SECRET }}” -key “${{ env.MASTER_KEY_FILE }}” -r

# 5) Выгрузить и загрузить сертификат в хранилище сертификатов Windows.
- имя: Загрузить сертификат в Магазин Windows
запустить: |
${{ env.INSTALL_DIR }}/eSignerCKATool.exe выгрузить
${{ env.INSTALL_DIR }}/eSignerCKATool.exe загрузить

# 6) Выберите сертификат подписи кода и получите отпечаток для подписи.
- имя: Выберите сертификат из Магазина Windows
запустить: |
$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1
echo "THUMBPRINT=$($CodeSigningCert.Thumbprint)" >> $env:GITHUB_ENV

# 7) Подписать артефакт с помощью Signtool
– имя: Подписать образец файла с помощью SignTool
запустить: |
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.22621.0/x86/signtool.exe' sign /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 ${{ env.THUMBPRINT }} ${{ env.SIGNABLE_FILE_PATH }}

# 8) Загрузите журналы eSignerCKA
– имя: Загрузить журналы eSignerCKA
использует: действия/upload-artifact@v3
если: ${{ всегда() }}
с:
имя: eSignerCKA-Logs-DLL
путь: C:\Users\runneradmin\AppData\Roaming\eSignerCKA\KSP

# Определяет задание с именем «sign-vsix-file»
знак-vsix-файл:
# Запуск задания в Windows Runner
запуски: windows-последняя
# Когда рабочий процесс запускается, это имя регистрируется
имя: Подписать файл VSIX с помощью eSignerCKA.
действия:
# 1) Проверьте исходный код, чтобы рабочий процесс мог получить к нему доступ.
– имя: Checkout Repository
использует: action/checkout@v3

# 2) Настройте среду .NET CLI для использования в рабочем процессе.
— имя: Настройка ядра Dotnet.
запустить: |
шоколадная установка dotnet-runtime -y

# 3) Загрузите и разархивируйте установку eSignerCKA.
- название: Скачать и разархивировать программу установки eSignerCKA
запустить: |
Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.6/SSL.COM-eSigner-CKA_1.0.6.zip»
Развернуть-Архивировать-Force eSigner_CKA_Setup.zip
Удаление элемента eSigner_CKA_Setup.zip
Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»

# 4) Установите eSignerCKA
– название: Настройка eSignerCKA в тихом режиме
запустить: |
New-Item -ItemType Directory -Force -Path ${{ env.INSTALL_DIR }}
./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="${{ env.INSTALL_DIR }}" | Out-Null

# 5) Установите информацию об учетной записи SSLcom.
– имя: Информация об учетной записи конфигурации на eSignerCKA
запустить: |
${{ env.INSTALL_DIR }}/eSignerCKATool.exe config -mode «${{ secrets.MODE }}» -пользователь «${{ secrets.USERNAME }}» -pass «${{ secrets.PASSWORD }}» - totp “${{ secrets.TOTP_SECRET }}” -key “${{ env.MASTER_KEY_FILE }}” -r

# 6) Выгрузить и загрузить сертификат в хранилище сертификатов Windows.
- имя: Загрузить сертификат в Магазин Windows
запустить: |
${{ env.INSTALL_DIR }}/eSignerCKATool.exe выгрузить
${{ env.INSTALL_DIR }}/eSignerCKATool.exe загрузить

# 7) Выберите сертификат подписи кода и получите отпечаток для подписи.
- имя: Выберите сертификат из Магазина Windows
запустить: |
$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1
echo "THUMBPRINT=$($CodeSigningCert.Thumbprint)" >> $env:GITHUB_ENV

# 8) Установите OpenVsixSignTool в произвольное местоположение (https://github.com/vcsjones/OpenOpcSignTool).
– имя: Установить OpenOpcSignTool
запустить: |
New-Item -ItemType Directory -Force -Path C:\Users\runneradmin\Desktop\dotnet-tools
Invoke-WebRequest -OutFile OpenVsixSignTool.zip https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.4/OpenVsixSignTool_1.0.0-x86.zip
Move-Item -Path OpenVsixSignTool.zip -Место назначения C:\Users\runneradmin\Desktop\dotnet-tools\OpenVsixSignTool.zip
Развернуть-Архив -LiteralPath C:\Users\runneradmin\Desktop\dotnet-tools\OpenVsixSignTool.zip -DestinationPath C:\Users\runneradmin\Desktop\dotnet-tools -Force

# 9) Подписать артефакт с помощью OpenOpcSignTool
– имя: Файл образца подписи с помощью OpenVsixSignTool.
запустить: |
C:\Users\runneradmin\Desktop\dotnet-tools\OpenVsixSignTool –прокрутка вперед LatestMajor Sign –sha1 ${{ env.THUMBPRINT }} –метка времени http://ts.ssl.com -ta sha256 -fd sha256 “${ { env.SIGNABLE_VSIX_FILE_PATH }}”

# 10) Загрузите журналы eSignerCKA
– имя: Загрузить журналы eSignerCKA
использует: действия/upload-artifact@v3
если: ${{ всегда() }}
с:
имя: eSignerCKA-Logs-VSIX
путь: C:\Users\runneradmin\AppData\Roaming\eSignerCKA\KSP

 

Пример рабочего процесса подписи .vsix

# Триггеры непрерывной интеграции
курок:
- никто

# Группирует задания по этапам. Все задания на одном этапе должны быть завершены до выполнения следующего этапа.
этапы:
– этап: знак
# Когда рабочий процесс запускается, это имя регистрируется
displayName: Подписать файл
вакансии:
- работа:
бассейн:
# Запуск задания на виртуальных машинах Windows
vmImage: «последняя версия Windows»
действия:
# Загрузите и разархивируйте программу установки eSignerCKA
— powershell: |
Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://www.ssl.com/download/ssl-com-esigner-cka»
Развернуть-Архивировать-Force eSigner_CKA_Setup.zip
Удаление элемента eSigner_CKA_Setup.zip
Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»
displayName: 'Загрузить и распаковать установку eSignerCKA'

# Настройте eSignerCKA в автоматическом режиме и проверьте каталог установки.
— powershell: |
./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="$(Build.BinariesDirectory)\Desktop\eSignerCKA" | Out-Null
каталог $(Build.BinariesDirectory)\Desktop\eSignerCKA
Get-ChildItem -Path $(Build.BinariesDirectory)\Desktop\eSignerCKA
displayName: «Настройка eSignerCKA в бесшумном режиме»

# Настройка информации об учетной записи на eSignerCKA
— powershell: |
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe config -mode $(MODE) -пользователь «$(ИМЯ ПОЛЬЗОВАТЕЛЯ)» -pass «$(ПАРОЛЬ)» -totp «$(TOTP_SECRET)» -ключ «$( Build.BinariesDirectory)\Desktop\eSignerCKA\master.key» -r
displayName: «Настроить информацию об учетной записи на eSignerCKA»

# Выгрузка и загрузка сертификата в Магазин Windows
— powershell: |
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe выгрузить
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe загрузка
displayName: «Выгрузить и загрузить сертификат в Магазин Windows»

# Выберите сертификат из Магазина Windows и подпишите образец файла с помощью SignTool.
— powershell: |
$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint
Set-Variable-Name Thumbprint-Value (Get-Content.Thumbprint); эхо $Thumbprint
& «C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86\signtool.exe» подпишите /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 $Thumbprint HelloWorld.dll
displayName: 'Подписать файл образца с помощью SignTool'

# Сохраните артефакт, чтобы использовать задание подписи
– задача: PublishBuildArtifacts@1
displayName: 'Сохранить как подписанный артефакт для скачивания'
входы:
Путь публикации: HelloWorld.dll
имя_артефакта: HelloWorld.dll

– этап: Sign_vsix
# Когда рабочий процесс запускается, это имя регистрируется
displayName: Подписать VSIX
вакансии:
- работа:
бассейн:
# Запуск задания на виртуальных машинах Windows
vmImage: «последняя версия Windows»
действия:
# Загрузите и разархивируйте программу установки eSignerCKA
— powershell: |
Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://www.ssl.com/download/ssl-com-esigner-cka»
Развернуть-Архивировать-Force eSigner_CKA_Setup.zip
Удаление элемента eSigner_CKA_Setup.zip
Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»
displayName: 'Загрузить и распаковать установку eSignerCKA'

# Настройте eSignerCKA в автоматическом режиме и проверьте каталог установки.
— powershell: |
./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="$(Build.BinariesDirectory)\Desktop\eSignerCKA" | Out-Null
каталог $(Build.BinariesDirectory)\Desktop\eSignerCKA
Get-ChildItem -Path $(Build.BinariesDirectory)\Desktop\eSignerCKA
displayName: «Настройка eSignerCKA в бесшумном режиме»

# Настройка информации об учетной записи на eSignerCKA
— powershell: |
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe config -mode $(MODE) -пользователь «$(ИМЯ ПОЛЬЗОВАТЕЛЯ)» -pass «$(ПАРОЛЬ)» -totp «$(TOTP_SECRET)» -ключ «$( Build.BinariesDirectory)\Desktop\eSignerCKA\master.key» -r
displayName: «Настроить информацию об учетной записи на eSignerCKA»

# Выгрузка и загрузка сертификата в Магазин Windows
— powershell: |
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe выгрузить
$(Build.BinariesDirectory)\Desktop\eSignerCKA\eSignerCKATool.exe загрузка
displayName: «Выгрузить и загрузить сертификат в Магазин Windows»

# Установите OpenVsixSignTool в произвольное местоположение (https://github.com/vcsjones/OpenOpcSignTool)
— powershell: |
New-Item -ItemType Directory -Force -Path $(Build.BinariesDirectory)\Desktop\eSignerCKA\dotnet-tools
Invoke-WebRequest -OutFile OpenVsixSignTool.zip https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.4/OpenVsixSignTool_1.0.0-x86.zip
Move-Item -Path OpenVsixSignTool.zip -Destination $(Build.BinariesDirectory)\Desktop\eSignerCKA\dotnet-tools\OpenVsixSignTool.zip
Развернуть-Архив -LiteralPath $(Build.BinariesDirectory)\Desktop\eSignerCKA\dotnet-tools\OpenVsixSignTool.zip -DestinationPath $(Build.BinariesDirectory)\Desktop\eSignerCKA\dotnet-tools -Force
displayName: 'Установить OpenVsixSignTool в произвольное расположение'

# Выберите сертификат из Магазина Windows и подпишите образец файла с помощью OpenOpcSignTool.
— powershell: |
$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint
Set-Variable-Name Thumbprint-Value (Get-Content.Thumbprint); эхо $Thumbprint
$(Build.BinariesDirectory)\Desktop\eSignerCKA\dotnet-tools\OpenVsixSignTool – накат LatestMajor Sign –sha1 $Thumbprint –timestamp http://ts.ssl.com -ta sha256 -fd sha256 SSLcom.vsix
displayName: 'Подписать файл образца с помощью OpenOpcSignTool'

# Сохраните артефакт, чтобы использовать задание подписи
– задача: PublishBuildArtifacts@1
displayName: 'Сохранить как подписанный артефакт для скачивания'
входы:
Путь публикации: SSLcom.vsix
Имя артефакта: SSLcom.vsix

# Windows Runner
.windows_runners:
# Используется для выбора бегунов из списка доступных бегунов. Для выполнения задания у исполнителя должны быть все теги, перечисленные здесь.
теги:
- общие окна
- окна
- окна-1809

# Группирует задания по этапам. Все задания на одном этапе должны быть завершены до выполнения следующего этапа.
этапы:
- знак

# Ниже приведено определение вашей задачи по подписанию файла.
файл подписи:
# Определите, на каком этапе будет выполняться задание.
этап: знак
# Средство запуска для подписи файла в Windows
расширяет:
– .windows_runners
до_скрипта:
# Создать каталог установки
– New-Item -ItemType Directory -Force -Path C:\Users\gitlab_runner\Desktop\eSignerCKA
сценарий:
# Загрузите и разархивируйте программу установки eSignerCKA
– Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://www.ssl.com/download/ssl-com-esigner-cka»
– Развернуть-Архив-Force eSigner_CKA_Setup.zip
– Удалить элемент eSigner_CKA_Setup.zip
– Переместить элемент – Назначение «eSigner_CKA_Installer.exe» – Путь «eSigner_CKA_*\*.exe»
# Настройте eSignerCKA в тихом режиме
– ./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="C:\Users\gitlab_runner\Desktop\eSignerCKA" | Out-Null
# Проверить каталог установки
– каталог C:\Users\gitlab_runner\Desktop\eSignerCKA
# Проверить каталог установки
– Get-ChildItem -Path C:\Users\gitlab_runner\Desktop\eSignerCKA
# Настройка информации об учетной записи на eSignerCKA
– C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe config -mode ${MODE} -пользователь «${USERNAME}» -pass «${PASSWORD}» -totp «${TOTP_SECRET}» -ключ «C :\Users\gitlab_runner\AppData\Roaming\eSignerCKA\master.key» -r
# Выгрузить сертификат в Магазин Windows
– C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe выгрузить
# Загрузить сертификат в Магазин Windows
– Загрузка C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe
# Проверить каталог данных
– каталог C:\Users\gitlab_runner\AppData\Roaming\eSignerCKA
# Проверить каталог данных конфигурации
– каталог C:\Users\gitlab_runner\AppData\Roaming\eSignerCKA\Config
# Выберите сертификат из магазина Windows
– $CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint
# Отпечаток сертификата отладки
– Set-Variable-Name Thumbprint-Value (Get-Content.Thumbprint); эхо $Thumbprint
# Подписать образец файла с помощью SignTool
– powershell.exe -Обход политики исполнения -Команда «Set-Variable -Name Thumbprint -Value (Get-Content.Thumbprint); 'C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x86\signtool.exe подписывайте /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 $Thumbprint HelloWorld.dll»

# Ниже приведено определение вашей задачи по подписанию файла.
знак-vsix:
# Определите, на каком этапе будет выполняться задание.
этап: знак
# Средство запуска для подписи файла в Windows
расширяет:
– .windows_runners
до_скрипта:
# Создать каталог установки
– New-Item -ItemType Directory -Force -Path C:\Users\gitlab_runner\Desktop\eSignerCKA
сценарий:
# Загрузите и разархивируйте программу установки eSignerCKA
– Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip «https://www.ssl.com/download/ssl-com-esigner-cka»
– Развернуть-Архив-Force eSigner_CKA_Setup.zip
– Удалить элемент eSigner_CKA_Setup.zip
– Переместить элемент – Назначение «eSigner_CKA_Installer.exe» – Путь «eSigner_CKA_*\*.exe»
# Настройте eSignerCKA в тихом режиме
– ./eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="C:\Users\gitlab_runner\Desktop\eSignerCKA" | Out-Null
# Проверить каталог установки
– каталог C:\Users\gitlab_runner\Desktop\eSignerCKA
# Проверить каталог установки
– Get-ChildItem -Path C:\Users\gitlab_runner\Desktop\eSignerCKA
# Настройка информации об учетной записи на eSignerCKA
– C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe config -mode ${MODE} -пользователь «${USERNAME}» -pass «${PASSWORD}» -totp «${TOTP_SECRET}» -ключ «C :\Users\gitlab_runner\AppData\Roaming\eSignerCKA\master.key» -r
# Выгрузить сертификат в Магазин Windows
– C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe выгрузить
# Загрузить сертификат в Магазин Windows
– Загрузка C:\Users\gitlab_runner\Desktop\eSignerCKA\eSignerCKATool.exe
# Проверить каталог данных
– каталог C:\Users\gitlab_runner\AppData\Roaming\eSignerCKA
# Проверить каталог данных конфигурации
– каталог C:\Users\gitlab_runner\AppData\Roaming\eSignerCKA\Config
# Выберите сертификат из магазина Windows
– $CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint
# Отпечаток сертификата отладки
– Set-Variable-Name Thumbprint-Value (Get-Content.Thumbprint); эхо $Thumbprint
# Установите среду выполнения Dotnet 7.0
– choco install dotnet-runtime -y
# Установите OpenVsixSignTool в произвольное местоположение
– New-Item -ItemType Directory -Force -Path C:\Users\gitlab_runner\Desktop\dotnet-tools
– Invoke-WebRequest -OutFile OpenVsixSignTool.zip https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.4/OpenVsixSignTool_1.0.0-x86.zip
– Move-Item – Path OpenVsixSignTool.zip – Назначение C:\Users\gitlab_runner\Desktop\dotnet-tools\OpenVsixSignTool.zip
– Развернуть-Архив -LiteralPath C:\Users\gitlab_runner\Desktop\dotnet-tools\OpenVsixSignTool.zip -DestinationPath C:\Users\gitlab_runner\Desktop\dotnet-tools -Force
# Подписать образец файла с помощью OpenVsixSignTool
– powershell.exe -ExecutionPolicy Bypass -Command 'Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); C:\Users\gitlab_runner\Desktop\dotnet-tools\OpenVsixSignTool –прокрутка вперед LatestMajor Sign –sha1 $Thumbprint –timestamp http://ts.ssl.com -ta sha256 -fd sha256 «SSLcom.vsix»'

Пример рабочего процесса подписи DLL кода .vsix

# Архитектура ЦП, на которой будет выполняться задание
арка: amd64

# Язык по умолчанию для запуска тестов
язык: csharp

# Используемый дистрибутив Ubuntu
расстояние: бионический

# Операционная система для запуска задания
ОС: Windows

# Определяет порядок этапов сборки. Все задания на одном этапе должны быть завершены до выполнения следующего этапа.
этапы:
- знак

вакансии:
следующие:
– этап: знак
# Имя задания
имя: файл подписи
# Операционная система, в которой будет выполняться задание
ОС: Windows
# Использовать общий язык по умолчанию
язык: с
# Перед запуском сценария перед сборкой проекта
до_скрипта:
# Создать каталог установки
– powershell.exe -Обход ExecutionPolicy -Command 'New-Item -ItemType Directory -Force -Path C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom'
# Скрипт для сборки проекта
сценарий:
# Загрузите и разархивируйте программу установки eSignerCKA
- powershell.exe -ExecutionPolicy Bypass -Command 'Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip "https://www.ssl.com/download/ssl-com-esigner-cka"'
– powershell.exe -ExecutionPolicy Bypass -Command 'Expand-Archive -Force eSigner_CKA_Setup.zip'
– powershell.exe -ExecutionPolicy Bypass -Command 'Remove-Item eSigner_CKA_Setup.zip'
– powershell.exe - Обход политики выполнения - Команда «Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»'
# Настройте eSignerCKA в тихом режиме
– powershell.exe -ExecutionPolicy Bypass -Command './eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR=»C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom» | Out-Null'
# Проверить каталог установки
– powershell.exe – Обход ExecutionPolicy – ​​Команда «dir C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom»
# Настройка информации об учетной записи на eSignerCKA
– powershell.exe -ExecutionPolicy Bypass -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe config -mode ${MODE} -user "${USERNAME}" -pass "${ ПАРОЛЬ}» -totp «${TOTP_SECRET}» -key «C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\master.key» -r'
# Выгрузить сертификат в Магазин Windows
– powershell.exe -Обход ExecutionPolicy -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe выгрузить'
# Загрузить сертификат в Магазин Windows
– powershell.exe -Обход ExecutionPolicy -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe load'
# Выберите сертификат из магазина Windows
– powershell.exe -ExecutionPolicy Bypass -Command '$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint'
# Отпечаток сертификата отладки
– powershell.exe -ExecutionPolicy Bypass -Command 'Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); эхо $Thumbprint'
# Подписать образец файла с помощью SignTool
– powershell.exe -ExecutionPolicy Bypass -Command «Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); 'C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe sign /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 $Thumbprint HelloWorld.dll' ”

– этап: знак
# Имя задания
имя: знак-vsix
# Операционная система, в которой будет выполняться задание
ОС: Windows
# Использовать общий язык по умолчанию
язык: с
# Перед запуском сценария перед сборкой проекта
до_скрипта:
# Создать каталог установки
– powershell.exe -Обход ExecutionPolicy -Command 'New-Item -ItemType Directory -Force -Path C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom'
# Скрипт для сборки проекта
сценарий:
# Загрузите и разархивируйте программу установки eSignerCKA
- powershell.exe -ExecutionPolicy Bypass -Command 'Invoke-WebRequest -OutFile eSigner_CKA_Setup.zip "https://www.ssl.com/download/ssl-com-esigner-cka"'
– powershell.exe -ExecutionPolicy Bypass -Command 'Expand-Archive -Force eSigner_CKA_Setup.zip'
– powershell.exe -ExecutionPolicy Bypass -Command 'Remove-Item eSigner_CKA_Setup.zip'
– powershell.exe - Обход политики выполнения - Команда «Переместить элемент - Назначение «eSigner_CKA_Installer.exe» - Путь «eSigner_CKA_*\*.exe»'
# Настройте eSignerCKA в тихом режиме
– powershell.exe -ExecutionPolicy Bypass -Command './eSigner_CKA_Installer.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR=»C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom» | Out-Null'
# Проверить каталог установки
– powershell.exe – Обход ExecutionPolicy – ​​Команда «dir C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom»
# Настройка информации об учетной записи на eSignerCKA
– powershell.exe -ExecutionPolicy Bypass -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe config -mode ${MODE} -user "${USERNAME}" -pass "${ ПАРОЛЬ}» -totp «${TOTP_SECRET}» -key «C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\master.key» -r'
# Выгрузить сертификат в Магазин Windows
– powershell.exe -Обход ExecutionPolicy -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe выгрузить'
# Загрузить сертификат в Магазин Windows
– powershell.exe -Обход ExecutionPolicy -Command 'C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\SSLcom\eSignerCKATool.exe load'
# Выберите сертификат из магазина Windows
– powershell.exe -ExecutionPolicy Bypass -Command '$CodeSigningCert = Get-ChildItem Cert:\CurrentUser\My -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint'
# Отпечаток сертификата отладки
– powershell.exe -ExecutionPolicy Bypass -Command 'Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); эхо $Thumbprint'
# Установите OpenVsixSignTool в произвольное местоположение (https://github.com/vcsjones/OpenOpcSignTool)
– powershell.exe -Обход ExecutionPolicy -Command 'New-Item -ItemType Directory -Force -Path C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\dotnet-tools'
powershell.exe -Обход ExecutionPolicy -Command 'Invoke-WebRequest -OutFile OpenVsixSignTool.zip https://github.com/SSLcom/eSignerCKA/releases/download/v1.0.4/OpenVsixSignTool_1.0.0-x86.zip'
powershell.exe -Обход ExecutionPolicy -Command 'Move-Item -Path OpenVsixSignTool.zip -Destination C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\dotnet-tools\OpenVsixSignTool.zip'
powershell.exe -Обход ExecutionPolicy -Command 'Expand-Archive -LiteralPath C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\dotnet-tools\OpenVsixSignTool.zip -DestinationPath C:\Users\travis\build\mbayrak-sslcom \eSignerCKA\dotnet-tools -Force'
# Подписать образец файла с помощью OpenVsixSignTool
– powershell.exe -ExecutionPolicy Bypass -Command «Set-Variable -Name Thumbprint -Value (Get-Content.Thumbprint); C:\Users\travis\build\mbayrak-sslcom\eSignerCKA\dotnet-tools\OpenVsixSignTool –прокрутка вперед LatestMajor Sign –sha1 $Thumbprint –метка времени http://ts.ssl.com -ta sha256 -fd sha256 SSLcom.vsix »

Примеры кодов см. SSL.com Репозиторий Github по адресу: https://github.com/SSLcom/esigner-sample

.NET-код DLL Примеры рабочих процессов подписания

Интеграция CircleCIИнтеграция действий GitHubИнтеграция Gitlab с непрерывной инфраструктуройИнтеграция Travis CI

Пример рабочего процесса подписи DLL кода .NET

Подготовьте компоненты рабочего процесса

  1. Создайте папку .circleci в вашем редакторе. Включите рабочие процессы в папку и создайте файл yml как config.yml в папке.
  2. Установите версию CircleCI. Поле версии предназначено для выдачи предупреждений об устаревании или критических изменениях.

    версия: 2.1

  3. Сферы — это повторно используемые пакеты конфигурации CircleCI, которые вы можете использовать в разных проектах, что позволяет создавать инкапсулированные параметризованные команды, задания и исполнители, которые можно использовать в нескольких проектах. Чтобы использовать инструмент signtool, это должны быть окна.

    шары:

       победа: кругци/окна@5.0.0

  4. Вызов заданий через рабочие процессы. Рабочие процессы организуют набор выполняемых заданий. 

    рабочие процессы:

       # Имя рабочего процесса.

       файл подписи:

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

             вакансии:

                – файл подписи

  5. Определите задание, которое будет вызываться позже в рабочем процессе.

    вакансии:

       файл подписи:

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

    исполнитель:

       имя: победа/сервер-2019

       размер: средний

       вариант: против 2019

  7. Поместите рабочий каталог для задания 

    рабочий_каталог: /home/circleci/project

  8. Добавление шагов к заданию См.: https://circleci.com/docs/2.0/configuration-reference/#steps  

    действия:

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

    - проверить

  10. Загрузите и разархивируйте программу установки eSignerCKA.

    - бег:

          Название: Скачать и разархивировать программу установки eSignerCKA

          команда: |

             Invoke-WebRequest -OutFile eSigner_CKA_1.0.3.zip «https://www.ssl.com/download/ssl-com-esigner-cka-1-0-3»

             Развернуть-Архивировать-Force eSigner_CKA_1.0.3.zip

             Удаление элемента eSigner_CKA_1.0.3.zip

             Move-Item - Назначение «eSigner_CKA_1.0.3.exe» - Путь «eSigner_CKA_1.0.3SSL.COM eSigner CKA_1.0.3.exe»

  11. Установить eSignerCKA

    - бег:

          Название: Настройка eSignerCKA в автоматическом режиме

          команда: |

                mkdir -p «/home/circleci/project/eSignerCKA»

                ./eSigner_CKA_1.0.3.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="/home/circleci/project/eSignerCKA" | Out-Null

  12. Установите информацию об учетной записи SSLcom на eSignerCKA

    - бег:

          name: Информация об учетной записи Config на eSignerCKA

          команда: |

                /home/circleci/project/eSignerCKA/eSignerCKATool.exe config -mode $env:MODE -user «$env:USERNAME» -pass «$env:PASSWORD» -totp «$env:TOTP_SECRET» -key «/home/circleci /проект/eSignerCKA/master.key» -r

  13. Выгрузить и загрузить сертификат в хранилище сертификатов Windows

    - бег:

          имя: Загрузить сертификат в Магазин Windows

          команда: |

                /home/circleci/project/eSignerCKA/eSignerCKATool.exe выгрузить

                /home/circleci/project/eSignerCKA/eSignerCKATool.exe загрузить

  14. Выберите сертификат подписи кода и получите отпечаток для подписи и подпишите артефакт с помощью инструмента подписи.

    - бег:

          имя: Выберите сертификат из Магазина Windows и подпишите образец файла с помощью SignTool

          команда: |

                $CodeSigningCert = Get-ChildItem Cert:CurrentUserMy -CodeSigningCert | Выбрать-Объект-Первый 1

                & 'C:Program Files (x86)Windows Kits10App Certification Kitsigntool.exe' подпишите /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 «$($CodeSigningCert.Thumbprint)» «HelloWorld. длл»

Пример рабочего процесса подписи DLL кода .NET

Подготовьте компоненты рабочего процесса

  1. Создайте папку .github/workflows в вашем редакторе. Включите рабочие процессы в папку и создайте файл sign.yml в папке.
  2. Назовите свой проект и тип задействованного рабочего процесса. 

    Название: Артефакт знака

  3. Активировать этот рабочий процесс по нажатию 

    на: нажать

  4. Создайте переменную среды

    среда:

     MASTER_KEY: мастер.ключ

     SIGNABLE_FILE_PATH: HelloWorld.dll

     INSTALL_DIR: C:UsersrunneradmineSignerCKA

     MASTER_KEY_FILE: C:UsersrunneradmineSignerCKAmaster.key

  5. Определите задания в вашем редакторе

    вакансии:

     файл подписи:

  6. Запустить задание в Windows Runnerзапуски: windows-последняя

  7. Создайте имя. Когда рабочий процесс запускается, это имя регистрируется.

    имя: Подписать файл DLL с помощью eSignerCKA

Описание шагов для работы с подписью

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

    – имя: Checkout Repository

       использует: action/checkout@v3

  2. Загрузите и разархивируйте программу установки eSignerCKA.

    - название: Скачать и разархивировать программу установки eSignerCKA

      запустить: |

          Invoke-WebRequest -OutFile eSigner_CKA_1.0.3.zip «https://www.ssl.com/download/ssl-com-esigner-cka-1-0-3»

          Развернуть-Архивировать-Force eSigner_CKA_1.0.3.zip

          Удаление элемента eSigner_CKA_1.0.3.zip

          Move-Item - Назначение «eSigner_CKA_1.0.3.exe» - Путь «eSigner_CKA_1.0.3SSL.COM eSigner CKA_1.0.3.exe»
  3. Установить eSignerCKA

    – название: Настройка eSignerCKA в тихом режиме

      запустить: |

          New-Item -ItemType Directory -Force -Path ${{ env.INSTALL_DIR }}

          ./eSigner_CKA_1.0.3.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR="${{ env.INSTALL_DIR }}" | Out-Null

  4. Установите информацию об учетной записи SSL.com на eSignerCKA

    – имя: Информация об учетной записи конфигурации на eSignerCKA

      запустить: |

          ${{ env.INSTALL_DIR }}/eSignerCKATool.exe config -mode «${{ secrets.MODE }}» -user «${{ secrets.USERNAME }}»

         -pass «${{ secrets.PASSWORD }}» -totp «${{ secrets.TOTP_SECRET }}» -key «${{ env.MASTER_KEY_FILE }}» -r

  5. Выгрузить и загрузить сертификат в хранилище сертификатов Windows

    - имя: Загрузить сертификат в Магазин Windows

      запустить: |

          ${{ env.INSTALL_DIR }}/eSignerCKATool.exe выгрузить

          ${{ env.INSTALL_DIR }}/eSignerCKATool.exe загрузить
  6. Выберите сертификат подписи кода и получите отпечаток для подписи

    - имя: Выберите сертификат из Магазина Windows

      запустить: |

          $CodeSigningCert = Get-ChildItem Cert:CurrentUserMy -CodeSigningCert | Выбрать-Объект-Первый 1

          echo "THUMBPRINT=$($CodeSigningCert.Thumbprint)" >> $env:GITHUB_ENV
  7. Артефакт подписи с помощью signtool

    – имя: Подписать образец файла с помощью SignTool

      запустить: |

          & 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 ${{ env.THUMBPRINT }} ${{ env.SIGNABLE_FILE_PATH }}

Пример рабочего процесса подписи DLL кода .NET

Определение компонентов рабочего процесса

  1. Cсоздайте файл yml как .gitlab-ci.yml в папке.
  2. Используется для выбора бегунов из списка доступных бегунов. У исполнителя должны быть все теги, перечисленные здесь, чтобы запустить задание.

    .windows_runners:

          теги:

                - общие окна

                - окна

                - окна-1809

  3. Группирует работы по этапам. Все задания на одном этапе должны быть завершены до выполнения следующего этапа.

    этапы:

          - знак

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

    файл подписи:

         этап: знак

  5. Имя одного или нескольких заданий, от которых следует наследовать конфигурацию.

    расширяет:

         – .windows_runners
  6. Напишите скрипт для подписи файла.

    сценарий:

    # Загрузите и разархивируйте программу установки eSignerCKA

       - powershell.exe -ExecutionPolicy Bypass -Command 'Invoke-WebRequest -OutFile eSigner_CKA_1.0.3.zip "https://www.ssl.com/download/ssl-com-esigner-cka-1-0-3"

       – powershell.exe -ExecutionPolicy Bypass -Command 'Expand-Archive -Force eSigner_CKA_1.0.3.zip'

       – powershell.exe -ExecutionPolicy Bypass -Command 'Remove-Item eSigner_CKA_1.0.3.zip'

       – powershell.exe - Обход политики выполнения - Команда «Переместить элемент - Назначение «eSigner_CKA_1.0.3.exe» - Путь «eSigner_CKA_1.0.3SSL.COM eSigner CKA_1.0.3.exe»'


    # Настройте eSignerCKA в тихом режиме

    – powershell.exe -ExecutionPolicy Bypass -Command './eSigner_CKA_1.0.3.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR=»C:Usersgitlab_runnerDesktopeSignerCKA»'


    # Проверить каталог установки

    – powershell.exe - Обход ExecutionPolicy - Команда «dir C: Usersgitlab_runnerDesktopeSignerCKA»


    # Настройка информации об учетной записи на eSignerCKA

    – powershell.exe -ExecutionPolicy Bypass -Command 'C:Usersgitlab_runnerDesktopeSignerCKAeSignerCKATool.exe config -mode ${MODE}

         -user "${USERNAME}" -pass "${PASSWORD}" -totp "${TOTP_SECRET}" -key "C:Usersgitlab_runnerAppDataRoamingeSignerCKAmaster.key" -r'


    # Выгрузить сертификат в Магазин Windows

    – powershell.exe -Обход ExecutionPolicy -Команда «C: Usersgitlab_runnerDesktopeSignerCKAeSignerCKATool.exe выгрузить»


    # Загрузить сертификат в Магазин Windows

    – powershell.exe -Обход ExecutionPolicy -Команда «C: Usersgitlab_runnerDesktopeSignerCKAeSignerCKATool.exe загрузить»


       # Проверить каталог данных

       – powershell.exe -Обход ExecutionPolicy -Команда «dir C: Usersgitlab_runnerAppDataRoamingeSignerCKA»


       # Проверить каталог данных конфигурации

       – powershell.exe -Обход ExecutionPolicy -Команда «dir C:Usersgitlab_runnerAppDataRoamingeSignerCKAConfig»


    # Выберите сертификат из магазина Windows

    – powershell.exe -ExecutionPolicy Bypass -Command '$CodeSigningCert = Get-ChildItem Cert:CurrentUserMy -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint'

    # Отпечаток сертификата отладки

    – powershell.exe -ExecutionPolicy Bypass -Command 'Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); эхо $Thumbprint'


    # Подписать образец файла с помощью SignTool

    – powershell.exe -ExecutionPolicy Bypass -Command «Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint);

         «C:Program Files (x86)Windows Kits10bin10.0.17763.0x86signtool.exe подписывает /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 $Thumbprint HelloWorld.dll»

Пример рабочего процесса подписи DLL кода .NET

Определение компонентов рабочего процесса

  1. Создайте файл yml как .travis.yml в корневой папке.
  2. Поместите архитектуру ЦП, на которой будет выполняться задание.

    арка: amd64

  3. Язык по умолчанию для запуска заданий в Travis CI

    язык: csharp

  4. Операционная система для запуска задания

    ОС: Windows

  5. Укажите порядок этапов. Все работы на одном этапе должны быть завершены до выполнения следующего этапа.

    этапы:

      - знак

  6. Определить этап сборки

    вакансии:

      следующие:

         – этап: знак

  7. Название работы

    имя: файл подписи
  8. Операционная система, в которой выполняется задание

    ОС: Windows
  9. Текущий язык для запуска заданий в Travis CI

    язык: с
  10. Напишите сценарий «До» для запуска перед сборкой проекта.

    до_скрипта:

        – powershell.exe -Обход ExecutionPolicy -Command 'New-Item -ItemType Directory -Force -Path C:Userstravisbuildesigner-образецeSignerCKASSLcom'

  11. Напишите скрипт для сборки проекта.

    сценарий:

    # Загрузите и разархивируйте программу установки eSignerCKA

    - powershell.exe -ExecutionPolicy Bypass -Command 'Invoke-WebRequest -OutFile eSigner_CKA_1.0.3.zip "https://www.ssl.com/download/ssl-com-esigner-cka-1-0-3"

    – powershell.exe -ExecutionPolicy Bypass -Command 'Expand-Archive -Force eSigner_CKA_1.0.3.zip'

    – powershell.exe -ExecutionPolicy Bypass -Command 'Remove-Item eSigner_CKA_1.0.3.zip'

    – powershell.exe - Обход политики выполнения - Команда «Переместить элемент - Назначение «eSigner_CKA_1.0.3.exe» - Путь «eSigner_CKA_1.0.3SSL.COM eSigner CKA_1.0.3.exe»'


    # Настройте eSignerCKA в тихом режиме

    – powershell.exe -ExecutionPolicy Bypass -Command './eSigner_CKA_1.0.3.exe /CURRENTUSER /VERYSILENT /SUPPRESSMSGBOXES /DIR=”C:Userstravisbuildesigner-образецeSignerCKASSLcom» | Out-Null'


    # Проверить каталог установки

    – powershell.exe -Обход политики выполнения -Command 'dir C:Userstravisbuildesigner-образецeSignerCKASSLcom'


    # Настройка информации об учетной записи на eSignerCKA

    – powershell.exe -Обход политики выполнения -Command 'C:Userstravisbuildesigner-образецКонфигурация eSignerCKASSLcomeSignerCKATool.exe -режим ${MODE} -пользователь «${USERNAME}»

       -pass «${PASSWORD}» -totp «${TOTP_SECRET}» -key «C:Userstravisbuild»esigner-образецeSignerCKASSLcommaster.key» -r'


    # Выгрузить сертификат в Магазин Windows

    – powershell.exe -Обход политики выполнения -Command 'C:Userstravisbuildesigner-образецeSignerCKASSLcomeSignerCKATool.exe выгрузить'


    # Загрузить сертификат в Магазин Windows

    – powershell.exe -Обход политики выполнения -Command 'C:Userstravisbuildesigner-образецeSignerCKASSLcomeSignerCKATool.exe загрузить'


    # Выберите сертификат из магазина Windows

    – powershell.exe -ExecutionPolicy Bypass -Command '$CodeSigningCert = Get-ChildItem Cert:CurrentUserMy -CodeSigningCert | Выбрать-Объект-Первый 1; echo $CodeSigningCert.Thumbprint > .Thumbprint'


    # Отпечаток сертификата отладки

    – powershell.exe -ExecutionPolicy Bypass -Command 'Set-Variable -Name Thumbprint -Value (Get-Content .Thumbprint); эхо $Thumbprint'


    # Подписать образец файла с помощью SignTool

    – powershell.exe -ExecutionPolicy Bypass -Command «Set-Variable -Name Thumbprint -Value (Get-Content.Thumbprint); «C:Program Files (x86)Windows Kits10binx64signtool.exe подписывает /debug /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 $Thumbprint HelloWorld.dll»

Нужны индивидуальные решения? 

Благодаря нашим экспертным знаниям и пятизвездочному персоналу службы поддержки мы готовы работать с вами над индивидуальными решениями или над скидками на подписание крупных объемов на уровне предприятия. Заполните форму ниже, и мы свяжемся с вами.

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

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

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

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

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

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