Denne opplæringen viser deg hvordan du signerer filer fra Windows-kommandolinjen med et kodesigneringssertifikat og en privat nøkkel som er lagret i Azure Key Vault. For å følge disse instruksjonene trenger du:
- An Azure-konto
- A Nøkkelhvelv
- A kodesigneringssertifikat installert i Key Vault. Du kan enten:
- Azure Sign Tool installert på datamaskinen du vil bruke til signering
Hva er Azure Sign Tool?
Azure Sign Tool er et open source-verktøy som tilbyr SignTool funksjonalitet for sertifikater og nøkler som er lagret i Azure Key Vault. Du kan installere Azure Sign Tool med følgende kommando i Windows PowerShell (krever .NET SDK):
dotnet tool install --global AzureSignTool
Trinn 1: Registrer et nytt Azure-program
Først må du registrere et nytt Azure-program slik at du kan koble til Key Vault for signering.
- Logg deg på Azure portal.
- naviger til Azure Active Directory. (Klikk Flere tjenester hvis Azure Active Directory-ikonet ikke er synlig.)
- Klikk Appregistreringer, i venstre kolonne.
- Klikk Ny registrering.
- Gi søknaden din en Navn og klikk på Registrere knapp. La de andre innstillingene være på standardverdiene.
- Den nye søknaden din er registrert. Kopier og lagre verdien som vises for Søknad (klient) IDfordi du trenger det senere.
- Klikk Autentisering.
- Under Avanserte innstillinger, sett Tillat offentlige kundestrømmer til
Yes
.
- Klikk Spar.
Trinn 2: Opprett en klienthemmelighet
Deretter genererer du en klienthemmelighet som fungerer som legitimasjon når du signerer.
- Klikk Sertifikater og hemmeligheter i venstre meny.
- Klikk Ny klienthemmelighet.
- Gi klientens hemmelighet en Beskrivelse, angi utløp som ønsket, og klikk på Legg til knapp.
- Kopier Verdi av din nye klienthemmelighet umiddelbart og lagre den på et trygt sted. Neste gang siden oppdateres, blir denne verdien maskert og uopprettelig.
Trinn 3: Aktiver tilgang i Key Vault
Nå må du aktivere tilgang for applikasjonen din i Azure Key Vault.
- Naviger til Key Vault som inneholder sertifikatet du vil bruke til signering, og klikk på Tilgangspolicyer kobling.
- Klikk Legg til tilgangspolicy.
- Under Viktige tillatelser, Aktiver
Sign
.
- Under Sertifikattillatelser, Aktiver
Get
.
- Klikk på Ingen valgt lenke, under Velg rektor, bruk deretter søkefeltet til å finne og velge applikasjonen du opprettet i forrige seksjon.
- Klikk på Plukke ut knapp.
- Klikk på Legg til knapp.
- Klikk Spar.
- Tilgangspolicyen din er angitt, og du er klar til å begynne å signere filer.
Trinn 4: Signer en fil
Nå er du endelig klar til å signere litt kode!
- Du trenger følgende informasjon tilgjengelig:
- Nedenfor er et eksempel på en kommando i PowerShell for å signere og tidsstemplere en fil med Azure Sign Tool. Erstatt verdiene i ALL CAPS med din faktiske informasjon:
azuresigntool sign -kvu KEY-VALT-URI -kvc CERTIFICATE-NAME -kvi APPLICATION-CLIENT-ID -kvs CLIENT-SECRET -tr http://ts.ssl.com/ -td sha256 PATH-TO-EXECUTABLE
OBS: Som standard støtter SSL.com tidsstempler fra ECDSA-nøkler.
Hvis du støter på denne feilen:The timestamp certificate does not meet a minimum public key length requirement
, bør du kontakte programvareleverandøren for å tillate tidsstempler fra ECDSA-nøkler.
Hvis det ikke er noen måte for programvareleverandøren din å tillate at det vanlige endepunktet brukes, kan du bruke dette eldre endepunktethttp://ts.ssl.com/legacy
for å få et tidsstempel fra en RSA Timestamping Unit. - Hvis signering er vellykket, bør du se utdata som følger (mislykket signering gir ingen utdata):
info: AzureSignTool.Program [0] => Fil: test.exe Signeringsfil test.exe info: AzureSignTool.Program [0] => File: test.exe Signering fullført for fil test.exe. info PS C: \ Brukere \ Aaron Russell \ Desktop>
- Detaljer om den nye digitale signaturen vil være tilgjengelig i filegenskapene: