Bagikan melalui


Menyiapkan integrasi pendaftaran untuk menggunakan Penandatanganan Tepercaya

Penandatanganan Tepercaya saat ini mendukung integrasi penandatanganan berikut:

  • SignTool
  • GitHub Actions
  • Tugas Azure DevOps
  • PowerShell untuk Authenticode
  • Azure PowerShell (Kebijakan App Control for Business CI)
  • SDK Penandatanganan Tepercaya

Kami terus bekerja untuk mendukung lebih banyak integrasi penandatanganan. Kami memperbarui daftar integrasi yang didukung saat lebih banyak integrasi tersedia.

Artikel ini menjelaskan cara menyiapkan setiap integrasi penandatanganan Penandatanganan Tepercaya yang didukung.

Menyiapkan SignTool untuk menggunakan Penandatanganan Tepercaya

Bagian ini menjelaskan cara menyiapkan SignTool untuk digunakan dengan Penandatanganan Tepercaya.

Prasyarat

Untuk menyelesaikan langkah-langkah dalam artikel ini, Anda perlu:

  • Akun Penandatanganan Tepercaya, validasi identitas, dan profil sertifikat.
  • Penetapan individu atau grup dari peran Penanda tanganan Sertifikat Tepercaya.

Ringkasan langkah-langkah

  1. Unduh dan instal SignTool.
  2. Unduh dan instal .NET 8 Runtime.
  3. Unduh dan instal paket dlib Penandatanganan Tepercaya.
  4. Buat file JSON untuk menyediakan akun Penandatanganan Tepercaya dan profil sertifikat Anda.
  5. Panggil SignTool untuk menandatangani file.

Mengunduh dan menginstal SignTool

Penandatanganan Tepercaya memerlukan penggunaan SignTool untuk menandatangani file di Windows, khususnya versi SignTool.exe yang ada di Windows 10 SDK 10.0.2261.755 atau yang lebih baru. Anda dapat menginstal SDK Windows 10 lengkap melalui Alat Penginstal Visual Studio atau mengunduh dan menginstalnya secara terpisah.

Untuk mengunduh dan menginstal SignTool:

  1. Unduh Versi terbaru SignTool dan Windows Build Tools NuGet di Microsoft.Windows.SDK.BuildTools.

  2. Instal SignTool dari Windows SDK (versi minimum: 10.0.2261.755, versi Windows SDK 20348 tidak didukung dengan dlib kami).

Opsi lain adalah menggunakan file nuget.exe terbaru untuk mengunduh dan mengekstrak paket NuGet Windows SDK Build Tools terbaru dengan menggunakan PowerShell:

  1. Unduh nuget.exe dengan menjalankan perintah unduhan berikut:

    Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile .\nuget.exe  
    
  2. Unduh dan ekstrak paket NuGet Alat Build Windows SDK dengan menjalankan perintah penginstalan berikut:

    .\nuget.exe install Microsoft.Windows.SDK.BuildTools -Version 10.0.22621.3233 -x
    

Mengunduh dan menginstal Runtime .NET 8.0

Komponen yang digunakan SignTool untuk berinteraksi dengan Penandatanganan Tepercaya memerlukan penginstalan Runtime .NET 8.0 Anda hanya memerlukan Inti .NET 8.0 Runtime. Pastikan Anda menginstal runtime platform yang benar tergantung pada versi SignTool yang ingin Anda jalankan. Atau, Anda cukup menginstal keduanya

Contohnya:

Mengunduh dan menginstal paket dlib Penandatanganan Tepercaya

Untuk mengunduh dan menginstal paket dlib Penandatanganan Tepercaya (file .zip):

  1. Unduh paket dlib Penandatanganan Tepercaya.

  2. Ekstrak konten zip dlib Penandatanganan Tepercaya dan instal pada simpul penandatanganan Anda di direktori pilihan Anda. Simpul harus menjadi simpul tempat Anda akan menggunakan SignTool untuk menandatangani file.

Opsi lain adalah mengunduh paket dlib Penandatanganan Tepercaya melalui NuGet yang mirip seperti paket NuGet Windows SDK Build Tools:

.\nuget.exe install Microsoft.Trusted.Signing.Client -Version 1.0.53 -x

Membuat file JSON

Untuk menandatangani dengan menggunakan Penandatanganan Tepercaya, Anda perlu memberikan detail akun Penandatanganan Tepercaya dan profil sertifikat yang dibuat sebagai bagian dari prasyarat. Anda memberikan informasi ini pada file JSON dengan menyelesaikan langkah-langkah berikut:

  1. Buat file JSON baru (misalnya, metadata.json).

  2. Tambahkan nilai tertentu untuk akun Penandatanganan Tepercaya dan profil sertifikat Anda ke file JSON. Untuk informasi selengkapnya, lihat file metadata.sample.json yang disertakan dalam paket dlib Penandatanganan Tepercaya atau gunakan contoh berikut:

    {
      "Endpoint": "<Trusted Signing account endpoint>",
      "CodeSigningAccountName": "<Trusted Signing account name>",
      "CertificateProfileName": "<Certificate profile name>",
      "CorrelationId": "<Optional CorrelationId value>"
    }
    

    Nilai "Endpoint" URI harus URI yang selaras dengan wilayah tempat Anda membuat akun Penandatanganan Tepercaya dan profil sertifikat saat Anda menyiapkan sumber daya ini. Tabel memperlihatkan wilayah dan URI yang sesuai.

    Wilayah Bidang kelas wilayah Nilai URI titik akhir
    AS Timur USTimur https://eus.codesigning.azure.net
    US3 Barat [1] WestUS3 https://wus3.codesigning.azure.net
    AS Tengah Bagian Barat WestCentralUS https://wcus.codesigning.azure.net
    US Barat 2 WestUS2 https://wus2.codesigning.azure.net
    Eropa Utara NorthEurope https://neu.codesigning.azure.net
    Eropa Barat WestEurope https://weu.codesigning.azure.net

    1 Bidang opsional "CorrelationId" adalah nilai string buram yang dapat Anda berikan untuk menghubungkan permintaan tanda dengan alur kerja Anda sendiri, seperti pengidentifikasi build atau nama komputer.

Menggunakan SignTool untuk menandatangani file

Untuk memanggil SignTool untuk menandatangani file:

  1. Catat tempat SDK Build Tools Anda, Azure.CodeSigning.Dlib yang diekstrak, dan file metadata.json Anda berada (dari bagian sebelumnya).

  2. Ganti tempat penampung di jalur berikut dengan nilai tertentu yang Anda catat di langkah 1:

    & "<Path to SDK bin folder>\x64\signtool.exe" sign /v /debug /fd SHA256 /tr "http://timestamp.acs.microsoft.com" /td SHA256 /dlib "<Path to Trusted Signing dlib bin folder>\x64\Azure.CodeSigning.Dlib.dll" /dmdf "<Path to metadata file>\metadata.json" <File to sign> 
    
  • SignTool versi x86 dan x64 disertakan dalam Windows SDK. Pastikan untuk mereferensikan versi Azure.CodeSigning.Dlib.dll yang sesuai. Contoh sebelumnya adalah untuk SignTool versi x64.
  • Pastikan Anda menggunakan versi Windows SDK yang direkomendasikan dalam dependensi yang tercantum di awal artikel ini atau file dlib tidak akan berfungsi.

Sertifikat Penandatanganan Tepercaya memiliki validitas tiga hari, sehingga stempel waktu sangat penting untuk validasi tanda tangan yang berhasil dilanjutkan di luar periode validitas tiga hari tersebut. Penandatanganan Tepercaya merekomendasikan penggunaan Otoritas Stempel Waktu Microsoft Public RSA Penandatanganan Tepercaya: http://timestamp.acs.microsoft.com/.

Menggunakan integrasi penandatanganan lainnya dengan Penandatanganan Tepercaya

Anda juga dapat menggunakan alat atau platform berikut untuk menyiapkan integrasi pendaftaran dengan Penandatanganan Tepercaya.

  • GitHub Actions: Untuk mempelajari cara menggunakan tindakan GitHub untuk Penandatanganan Tepercaya, lihat Penandatanganan Tepercaya - Tindakan di GitHub Marketplace. Selesaikan instruksi untuk menyiapkan dan menggunakan tindakan GitHub.

  • Tugas Azure DevOps: Untuk menggunakan tugas Azure DevOps Penandatanganan Tepercaya, lihat Masuk Tepercaya di Visual Studio Marketplace. Selesaikan instruksi untuk penyiapan.

  • PowerShell untuk Authenticode: Untuk menggunakan PowerShell untuk Penandatanganan Tepercaya, lihat Penandatanganan Tepercaya 0.3.8 di Galeri PowerShell untuk menginstal modul PowerShell.

  • Azure PowerShell - Kebijakan App Control for Business CI: Untuk menggunakan Penandatanganan Tepercaya untuk penandatanganan kebijakan integritas kode (CI), ikuti instruksi di Menandatangani kebijakan CI baru dan lihat Modul PowerShell Az.CodeSigning.

  • SDK Penandatanganan Tepercaya: Untuk membuat integrasi penandatanganan Anda sendiri, Anda dapat menggunakan SDK Penandatanganan Tepercaya sumber terbuka kami. Perhatikan bahwa versi SDK ini memang muncul sebagai tidak tercantum. Ini masih didukung dan akan didukung ketika SDK yang lebih baru akan dirilis.