Denne opplæringen gir en introduksjon til kodesignering med Azure DevOps, ved hjelp av et sertifikat lagret i Azure Key Vault. For å følge disse instruksjonene trenger du:
- An Azure-konto
- A DevOps-prosjekt
- A Nøkkelhvelv
- A kodesigneringssertifikat installert i Key Vault. Du kan enten:
Gå over til denne artikkelen for en veiledning om hvordan du integrerer eSigner med Azure DevOps: Azure DevOps Cloud Signing Integration Guide.
Registrer et 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.
Lag 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.
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
Verify
,Sign
,Get
ogList
.
- Under Hemmelige tillatelser, Aktiver
Get
ogList
.
- Under Sertifikattillatelser, Aktiver
Get
ogList
.
- 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 satt.
Konfigurer DevOps Build
Nå kan du konfigurere byggingen din. Åpne prosjektet ditt i Azure DevOps.
Lagre påloggingsinformasjon som variabler
Du kan inkludere applikasjons-ID og klienthemmelighet direkte i YAML-rørledningsfilen din, men det er sikrere hvis du lagrer dem som variabler i DevOps.
- Klikk Rørledninger.
- Klikk Bibliotek.
- Klikk + Variabel gruppe.
- Gi variabelgruppen et navn.
- Klikk Legg til.
- Skriv inn et variabelnavn for applikasjons-ID-en din, og lim deretter inn verdien. Klikk på låsen for å kryptere variabelen når du er ferdig.
- Gjenta prosessen for å legge til en variabel for klienthemmeligheten din.
- Klikk Spar.
- Koble variabelgruppen i rørledningen din. (erstatt VARIABLE-GROUP med navnet på den faktiske variablegruppen.)
variabler: - gruppe: 'VARIABLE-GROUP'
Legg til rørledningstrinn for å installere Azure Sign Tool
Azure Sign Tool er et open source-verktøy som tilbyr SignTool funksjonalitet for sertifikater og nøkler lagret i Azure Key Vault. Legg til følgende trinn i rørledningen for å installere Azure Sign Tool:
- oppgave: DotNetCoreCLI @ 2 innganger: kommando: 'tilpasset' tilpasset: 'verktøy' argumenter: 'install --global azuresigntool' displayName: Installer AzureSignTool
Legg til Azure Sign Tool Command til rørledningen
- Nå kan du legge til en oppgave for å signere koden din til rørledningen. Du trenger følgende informasjon:
- Legg til Azure Sign Tool-anropet til rørledningen din. Erstatt verdiene som vises i ALL-CAPS med dine faktiske verdier:
- oppgave: CmdLine @ 2 innganger: skript: AzureSignTool sign -kvu "KEY-VAULT-URI" -kvi "$ (APPLICATION-ID-VAR)" -kvs "$ (CLIENT-SECRET-VAR)" -kvc CERTIFICATE-NAME -tr "http://ts.ssl.com" -td sha256 "FILE-TO-SIGN" displayName: Sign Code
- Du bør se utdata som dette hvis signeringen er vellykket:
info: AzureSignTool.Program [0] => Fil: D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe Signeringsfil D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe info: AzureSignTool. Program [0] => Fil: D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe Signering fullført for fil D: \ a \ 1 \ s \ x64 \ Debug \ HelloWorld.exe.