Dela via


Signera CLI-referens för VSIX-paket

sign – Dotnet-verktyg som används för att signera filer och containrar med PFX-, CER- eller P7B-certifikat på disk eller från Windows Certificate Manager (WCM), kryptografiska tjänstprovidrar (CSP) eller Azure Key Vault.

Viktig

Sign CLI stöder endast SHA-256, SHA-384och SHA-512 som giltiga fingeravtrycksalgoritmer. Du kan använda PowerShell för att hämta fingeravtryck med hjälp av: Get-FileHash -Algorithm SHA256 <path to .cer file> | Format-Table -AutoSize

Viktig

Sign CLI stöder endast RSA algoritmer. Därför misslyckas signaturvalidering under installationen med hjälp av ECDSA för att generera ditt fingeravtryck. Detta blockerar inte installationen, men varningar om "Ogiltig signatur" visas under VSIX Installer-fönstret under installationen.

Sammanfattning

sign code certificate-store [<PATH(s)>]
    [-cf|--certificate-file <PATH>]
    [-p|--password <PASSWORD>]
    [-cfp|--certificate-fingerprint <SHA>]
    [-csp|--crypto-service-provider <CSPNAME>]
    [-k|--key-container <HASHALGORITHM>]
    [-km|--use-machine-key-container]
    [-d|--description <DESCRIPTION>]
    [-u|--descriptionUrl <URL>]
    [-fd|--file-digest <DIGEST>]
    [-t|--timestamp-url <URL>]
    [-tr|--timestamp-rfc3161 <URL>]
    [-td|--timestamp-digest <DIGEST>]
    [-o|--output <PATH>]
    [-b|--base-directory <wORKINGDIRECTORY>]
    [-f|--force]
    [-m|--max-concurrency <MAXCONCURRENCY>]
    [-fl|--filelist <FILELISTPATH>]
    [-i]|--interactive

sign code certificate-store -h|--help

Beskrivning

Sign CLI är ett Dotnet-verktyg som rekursivt signerar filer och containrar med ett certifikat och privat. Certifikatet och den privata nyckeln kan hämtas från antingen en fil (PFX, P7B, CER) eller från ett certifikat som är installerat i ett certifikatarkiv genom att tillhandahålla ett SHA-256, SHA-384eller SHA-512 fingeravtryck. USB-nycklar kan nås med hjälp av en kryptografitjänstprovider (CSP) som implementeras av tillverkaren och nås från certifikatarkivet.

Installation

Installera Sign CLI globalt med hjälp av dotnet tool install sign --prerelease --global

Offlineinstallation av sign CLI

För isolerade miljöer kan du ladda ned ett Sign CLI NuGet-paket och installera det med hjälp av:

dotnet tool install --global --add-source <path-to-folder> <tool-name> --version <version>

Argument

  • VSIX-paths(s)

    Anger sökvägarna till VSIX-paketet som ska signeras.

Alternativ

  • -cf|--certificate-file <PATH>

    PFX-, P7B- eller CER-fil som innehåller ett certifikat och potentiellt en privat nyckel.

  • -p|--password <PASSWORD>

    Valfritt lösenord för certifikatfilen.

  • -cfp|--certificate-fingerprint <SHA>

    SHA-256, SHA-384 eller SHA-512 fingeravtryck som används för att identifiera ett certifikat före signering.

  • -csp|--crypto-service-provider <CSP NAME>

    Kryptografisk tjänstprovider som innehåller en privat nyckel.

    Not

    Du kan se alla tillgängliga CSP:er genom att köra certutil -csplist, där äldre CSP:er anger en "providertyp" och CNG-leverantörer vanligtvis har "Nyckellagringsprovider" i sina namn. certutil -csptest "<provider name>" innehåller mer information om specifika leverantörer.

  • -k|--key-container <CONTAINER NAME>]

    Containernamn för privat nyckel.

    Not

    Du hittar alla nycklar som lagras i en CSP genom att köra certutil -csp <Provider Name> -key.

  • -km|--use-machine-key-container]

    Använd en privat nyckelcontainer på datornivå i stället för standardcontainern på användarnivå.

  • -d|--description <DESCRIPTION>

    Beskrivning av signeringscertifikatet.

  • -u|--descriptionUrl <URL>

    Beskrivnings-URL för signeringscertifikatet.

  • -fd | --file-digest <DIGEST>

    Sammanfattad algoritm att hash filen med.

  • -t|--timestamp-url <URL>

    RFC 3161 tidsstämpelserver-URL. [standard: http://timestamp.acs.microsoft.com/]

  • -tr | --timestamp-rfc3161 <URL>

    Anger RFC 3161-tidsstämpelserverns URL.

  • -td|--timestamp-digest <DIGEST>

    Används med -tr växla för att begära en sammandragsalgoritm som används av RFC 3161-tidsstämpelservern.

  • -o|--output <PATH>

    Utdatafilen eller mappen om flera filer har angetts. Om det utelämnas skrivs indata över.

  • -b|--base-directory <PATH>

    Baskatalog för filer som ska åsidosätta arbetskatalogen.

  • --f|--force

    Skriver över en signatur om den finns.

  • -m|--max-concurrency <MAXCONCURRENCY>

    Maximal samtidighet (standard är 4)

  • -fl | --filelist <PATH>

    Sökväg till fil som innehåller sökvägar för filer som ska signeras eller undantas från signering i containern.

  • -?|-h|--help

    Skriver ut en beskrivning av hur du använder kommandot.

  • -i|--interactive

    Fråga efter användarindata, som krävs i vissa scenarier, till exempel när du använder en användarskyddad nyckel, där ett lösenord måste anges av användaren.

Exempel

  • Signera contoso.vsix med ett certifikat som importerats till certifikatarkiv:

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Signera contoso.vsix med certifikatet cert.pfx (inte lösenordsskyddat) med ett SHA-512-fingeravtryck:

    sign code certificate-store contoso.vsix -cfp A87A6F...894559B981 -cfpa sha512 -cf D:\certificates\cert.pfx -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Signera contoso.vsix med certifikatet cert.pfx (lösenordsskyddat):

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -p <password> -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Signera flera VSIX-paket – contoso.vsix och alla .vsix-filer i katalogen som anges med certifikatet cert.pfx (inte lösenordsskyddat):

    sign code certificate-store *.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Signera contoso.vsix med ett certifikat som lagras på en säker USB-enhet.

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -csp "Microsoft Software Key Storage Provider" -k "VsixSigning 0B2D249223B36D00A7DF07FB95E24D58" -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Signera contoso.vsix med ett certifikat som lagras på en säker USB-enhet och som nås från dator certifikatarkiv (-km alternativ).

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -csp "Microsoft Software Key Storage Provider" -k "VsixSigning 0B2D249223B36D00A7DF07FB95E24D58" -km -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    

    Not

    När -k alternativet inte tillhandahålls kontrollerar verktyget alla containrar i den angivna CSP:en efter ett matchande SHA-fingeravtryckscertifikat.

  • Signera contoso.vsix med ett certifikat som lagras på en säker USB-enhet som anger filsammandragsalgoritm (-fd), tidsstämpelserver (-t) och en anpassad utdatasökväg (-o) för det signerade VSIX.

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -csp "Microsoft Software Key Storage Provider" -k "VsixSigning 0B2D249223B36D00A7DF07FB95E24D58" -d "Constoso VSIX Signature" -u "http://www.contoso.com" -t "http://timestamp.acs.microsoft.com/" -fd sha256 -o "ContosoSigned.vsix"