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-384
en 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-384
of 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 -csplist
uit 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> -key
uit 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"