Referenční informace k rozhraní příkazového řádku pro balíčky VSIX
sign
– Nástroj Dotnet používaný k podepisování souborů a kontejnerů pomocí certifikátů PFX, CER nebo P7B na disku nebo z Windows Certificate Manageru (WCM), poskytovatele kryptografických služeb (CSP) nebo azure Key Vault.
Důležité
Sign CLI only supports SHA-256
, SHA-384
and SHA-512
as valid fingerprint algorithms. K získání otisků prstů můžete použít PowerShell: Get-FileHash -Algorithm SHA256 <path to .cer file> | Format-Table -AutoSize
Důležité
Rozhraní příkazového řádku podpisu podporuje RSA
pouze algoritmy, takže použití ECDSA
k vygenerování otisku prstu během instalace selže. Tato akce neblokuje instalaci, ale během instalace se v okně Instalačního programu VSIX zobrazí upozornění Neplatný podpis.
Synopse
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
Popis
Sign CLI
je nástroj Dotnet, který rekurzivně podepisuje soubory a kontejnery pomocí certifikátu a soukromého. Certifikát a privátní klíč lze získat buď ze souboru (PFX, P7B, CER), nebo z certifikátu nainstalovaného v úložišti certifikátů poskytnutím nebo otisku prstuSHA-256
SHA-384
SHA-512
. Ke klíčům USB je možné přistupovat pomocí zprostředkovatele kryptografických služeb (CSP) implementovaného výrobcem a přistupovat k němu z úložiště certifikátů.
Instalace
Globální instalace rozhraní příkazového řádku pro přihlašování s využitím dotnet tool install sign --prerelease --global
Offline instalace rozhraní příkazového řádku pro přihlášení
V izolovaných prostředích si můžete stáhnout balíček NuGet cli sign cli a nainstalovat ho pomocí:
dotnet tool install --global --add-source <path-to-folder> <tool-name> --version <version>
Argumenty
VSIX-paths(s)
Určuje cesty k balíčku VSIX, který se má podepsat.
Možnosti
-cf|--certificate-file <PATH>
SOUBOR PFX, P7B nebo CER obsahující certifikát a potenciálně privátní klíč.
-p|--password <PASSWORD>
Volitelné heslo pro soubor certifikátu.
-cfp|--certificate-fingerprint <SHA>
Otisk prstu SHA-256, SHA-384 nebo SHA-512 sloužící k identifikaci certifikátu před podepsáním.
-csp|--crypto-service-provider <CSP NAME>
Zprostředkovatel kryptografických služeb obsahující privátní klíč.
Poznámka:
Všechny dostupné poskytovatele CSP můžete zobrazit spuštěním příkazu
certutil -csplist
, kde starší poskytovatelé CSP určují "Typ poskytovatele" a poskytovatelé CNG obvykle mají ve svých názvech "Poskytovatel úložiště klíčů".certutil -csptest "<provider name>"
poskytuje další informace o konkrétních poskytovatelích.-k|--key-container <CONTAINER NAME>]
Název kontejneru privátního klíče
Poznámka:
Všechny klíče uložené v rámci CSP najdete spuštěním příkazu
certutil -csp <Provider Name> -key
.-km|--use-machine-key-container]
Místo výchozího kontejneru na úrovni uživatele použijte kontejner privátního klíče na úrovni počítače.
-d|--description <DESCRIPTION>
Popis podpisového certifikátu
-u|--descriptionUrl <URL>
Popis adresy URL podpisového certifikátu
-fd | --file-digest <DIGEST>
Algoritmus hash pro hash souboru.
-t|--timestamp-url <URL>
Adresa URL serveru časového razítka RFC 3161 [výchozí: http://timestamp.acs.microsoft.com/]
-tr | --timestamp-rfc3161 <URL>
Určuje adresu URL serveru časového razítka RFC 3161.
-td|--timestamp-digest <DIGEST>
Používá se s
-tr
přepínačem k vyžádání algoritmu digest používaného serverem časového razítka RFC 3161.-o|--output <PATH>
Výstupní soubor nebo složka, pokud je zadáno více souborů. Pokud tento parametr vynecháte, vstup se přepíše.
-b|--base-directory <PATH>
Základní adresář pro soubory pro přepsání pracovního adresáře.
--f|--force
Pokud existuje, přepíše podpis.
-m|--max-concurrency <MAXCONCURRENCY>
Maximální souběžnost (výchozí hodnota je 4)
-fl | --filelist <PATH>
Cesta k souboru obsahujícímu cesty k souborům, které se mají podepsat nebo vyloučit z podepisování v rámci kontejneru.
-?|-h|--help
Vytiskne popis použití příkazu.
-i|--interactive
Výzva k zadání uživatelského vstupu, která se vyžaduje v některých scénářích, například při použití klíče chráněného uživatelem, kde musí uživatel zadat heslo.
Příklady
Podepište contoso.vsix certifikátem importovaným do úložiště uživatelských certifikátů:
sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -d "Constoso VSIX Signature" -u "http://www.contoso.com"
Podepište contoso.vsix certifikátem cert.pfx (ne chráněným heslem) pomocí otisku prstu SHA-512:
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"
Podepište contoso.vsix certifikátem cert.pfx (chráněným heslem):
sign code certificate-store contoso.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -p <password> -d "Constoso VSIX Signature" -u "http://www.contoso.com"
Podepište několik balíčků VSIX – contoso.vsix a všechny soubory .vsix v adresáři zadaném certifikátem cert.pfx (ne chráněné heslem):
sign code certificate-store *.vsix -cfp 24D589...FB9523B36E -cf cert.pfx -d "Constoso VSIX Signature" -u "http://www.contoso.com"
Podepište contoso.vsix certifikátem uloženým na zabezpečené jednotce USB.
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"
Podepište contoso.vsix certifikátem uloženým na zabezpečené jednotce USB a přistupovat z úložiště certifikátů počítače (možnost km).
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"
Poznámka:
Pokud
-k
není k dispozici možnost, nástroj zkontroluje všechny kontejnery v zadaném CSP odpovídající certifikát otisku prstu SHA.Podepište contoso.vsix certifikátem uloženým na zabezpečené jednotce USB určující algoritmus hash souboru (-fd), časového razítka (-t) a vlastní výstupní cestu (-o) podepsaného 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"