Delen via


CLI-naslaginformatie ondertekenen voor VSIX-pakketten

sign - Dotnet-hulpprogramma dat wordt gebruikt voor het ondertekenen van bestanden en containers met PFX-, CER- of P7B-certificaten op schijf of van Windows Certificate Manager (WCM), Cryptografische serviceproviders (CSP) of Azure Key Vault.

Belangrijk

Sign CLI ondersteunt alleen SHA-256, SHA-384en SHA-512 als geldige vingerafdrukalgoritmen. U kunt PowerShell gebruiken om vingerafdrukken op te halen met behulp van: Get-FileHash -Algorithm SHA256 <path to .cer file> | Format-Table -AutoSize

Belangrijk

Sign CLI ondersteunt alleen RSA algoritmen, waardoor het gebruik van ECDSA om uw vingerafdruk te genereren tijdens de installatie mislukt de handtekeningvalidatie. Hierdoor wordt de installatie niet geblokkeerd, maar er worden tijdens de installatie waarschuwingen 'Ongeldige handtekening' weergegeven onder het VSIX Installer-venster.

Samenvatting

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

Beschrijving

Sign CLI is een Dotnet-hulpprogramma dat recursief bestanden en containers ondertekent met een certificaat en privé. Het certificaat en de persoonlijke sleutel kunnen worden verkregen uit een bestand (PFX, P7B, CER) of uit een certificaat dat is geïnstalleerd in een certificaatarchief door een SHA-256, SHA-384of SHA-512 vingerafdruk op te geven. USB-sleutels kunnen worden geopend met behulp van een Cryptographic Service Provider (CSP) die door de fabrikant is geïmplementeerd en toegankelijk is vanuit het certificaatarchief.

Installatie

Cli wereldwijd ondertekenen installeren met behulp van dotnet tool install sign --prerelease --global

Offline-installatie van sign CLI

Voor geïsoleerde omgevingen kunt u een NuGet-ondertekenen CLI-pakket downloaden en installeren met behulp van:

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

Argumenten

  • VSIX-paths(s)

    Hiermee geeft u de pad(en) naar het VSIX-pakket dat moet worden ondertekend.

Opties

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

    PFX-, P7B- of CER-bestand met een certificaat en mogelijk een persoonlijke sleutel.

  • -p|--password <PASSWORD>

    Optioneel wachtwoord voor certificaatbestand.

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

    SHA-256-, SHA-384- of SHA-512-vingerafdruk die wordt gebruikt om een certificaat te identificeren voordat u zich ondertekent.

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

    Cryptografische serviceprovider met een persoonlijke sleutel.

    Notitie

    U kunt alle beschikbare CSP's zien door certutil -csplistuit te voeren, waarbij verouderde CSP's een providertype opgeven en CNG-providers meestal 'Sleutelopslagprovider' in hun naam hebben. certutil -csptest "<provider name>" biedt meer informatie over specifieke providers.

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

    Naam van de persoonlijke sleutelcontainer.

    Notitie

    U vindt alle sleutels die zijn opgeslagen in een CSP door certutil -csp <Provider Name> -keyuit te voeren.

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

    Gebruik een persoonlijke sleutelcontainer op computerniveau in plaats van de standaardcontainer op gebruikersniveau.

  • -d|--description <DESCRIPTION>

    Beschrijving van het handtekeningcertificaat.

  • -u|--descriptionUrl <URL>

    Beschrijvings-URL van het handtekeningcertificaat.

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

    Samenvattingsalgoritmen waarmee het bestand wordt gehasht.

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

    RFC 3161 tijdstempelserver-URL. [standaard: http://timestamp.acs.microsoft.com/]

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

    Hiermee geeft u de URL van de RFC 3161-tijdstempelserver op.

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

    Wordt gebruikt met -tr switch om een digest-algoritme aan te vragen dat wordt gebruikt door de RFC 3161-tijdstempelserver.

  • -o|--output <PATH>

    Het uitvoerbestand of de uitvoermap als er meerdere bestanden zijn opgegeven. Als u dit weglaat, wordt invoer overschreven.

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

    Basismap voor bestanden om de werkmap te overschrijven.

  • --f|--force

    Overschrijft een handtekening als deze bestaat.

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

    Maximale gelijktijdigheid (standaard is 4)

  • -fl | --filelist <PATH>

    Pad naar bestand met paden van bestanden die moeten worden ondertekend of om uit te sluiten van ondertekening binnen de container.

  • -?|-h|--help

    Hiermee wordt een beschrijving afgedrukt van het gebruik van de opdracht.

  • -i|--interactive

    Vragen om gebruikersinvoer, die vereist is in sommige scenario's, zoals bij het gebruik van een door de gebruiker beveiligde sleutel, waarbij een wachtwoord moet worden ingevoerd door de gebruiker.

Voorbeelden

  • Meld contoso.vsix- aan met een certificaat dat is geïmporteerd in het gebruiker certificaatarchief:

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Onderteken contoso.vsix met certificaat cert.pfx- (niet met een wachtwoord beveiligd) met behulp van een SHA-512-vingerafdruk:

    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"
    
  • Meld contoso.vsix met certificaat cert.pfx- (met een wachtwoord beveiligd):

    sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -p <password> -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Sign multiple VSIX packages - contoso.vsix and all .vsix files in the directory specified with certificate cert.pfx (not password protected):

    sign code certificate-store *.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -d "Constoso VSIX Signature" -u "http://www.contoso.com"
    
  • Meld contoso.vsix aan met een certificaat dat is opgeslagen in een beveiligd USB-station.

    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"
    
  • Onderteken contoso.vsix met een certificaat dat is opgeslagen in een beveiligd USB-station en toegankelijk is vanaf het computer certificaatarchief (-km optie).

    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"
    

    Notitie

    Wanneer -k optie niet is opgegeven, controleert het hulpprogramma alle containers in de opgegeven CSP op een overeenkomend SHA-vingerafdrukcertificaat.

  • Onderteken contoso.vsix- met een certificaat dat is opgeslagen in een beveiligd USB-station dat bestandsamenvattingsalgoritmen (-fd), tijdstempelserver (-t) en een aangepast uitvoerpad (-o) opgeeft voor de ondertekende 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"