Azure DevOps Cloud Signing Integration Guide

Dette er en veiledning for hvordan Azure DevOps kan integreres med eSigner CodeSignTool for å utføre automatisert kodesignering.

CodeSignTool er et kommandolinjeverktøy som er egnet for skykodesigneringsprosesser og sømløst integreres med ulike CI/CD-plattformer. Den er en del av eSigner: vår fjernsigneringstjeneste som tilbyr en effektiv, sikker og brukervennlig tilnærming til kodesignering.

SSL.coms EV Kodesignering sertifikater bidrar til å beskytte koden din mot uautorisert tukling og kompromiss med det høyeste nivået av validering, og er tilgjengelige for så lite som $ 249 per år. Du kan også bruk EV Code Signing-sertifikatet i stor skala i skyen ved hjelp av eSigner.

BESTILL NÅ

Miljøvariabler

  • USERNAME: SSL.com-konto brukernavn. (Obligatorisk)
  • PASSORD: SSL.com-kontopassord (påkrevd)
  • CREDENTIAL_ID: Legitimasjons-ID for signering av sertifikat. Hvis credential_id er utelatt og brukeren bare har ett eSigner-kodesigneringssertifikat, vil CodeSignTool som standard bruke det. Hvis brukeren har mer enn ett kodesigneringssertifikat, er denne parameteren obligatorisk. (Obligatorisk)
  • TOTP_SECRET: OAuth TOTP-hemmelighet. Du kan få tilgang til detaljert informasjon om https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Nødvendig)
  • ENVIRONMENT_NAME : 'TEST' eller 'PROD' miljø. (Obligatorisk)

 

Innganger

  • input_file_path: Banen til kodeobjektet som skal signeres. (Obligatorisk)
  • output_dir_path: Katalog hvor signert kodeobjekt(er) vil bli skrevet. Hvis output_path er utelatt, vil filen spesifisert i -file_path bli overskrevet med den signerte filen.

Lag et prosjekt på visualstudio.com

Opprett en ny .yml-fil på koderedigeringsprogrammet

Angi integrasjonstriggere og miljøvariabler

Kontinuerlig integrasjon utløser

avtrekker:

  - ingen

 

Definerer miljøvariabler globalt. Jobbnivåegenskap overstyrer globale variabler

variabler:

  buildConfiguration: 'Release'

Grupper jobber i etapper

Skriv trinnene for byggefasen. Alle jobber i ett trinn må fullføres før neste trinn utføres.

stadier:

  – scene: bygge

    # Når arbeidsflyten kjører, er dette navnet som logges

    displayName: Bygg

    arbeidsplasser:

      – jobb:

        basseng:

           Kjør jobben på Windows VM-er

          vmImage: 'Windows-nyeste'

        trinn:

           Installer Dotnet 6.0.x

        – oppgave: UseDotNet@2

          displayName: 'Installer .NET Core SDK'

          innganger:

            versjon: '6.0.x'

            performMultiLevel Lookup: sant

            includePreviewVersions: true

       

            Gjenopprett Dotnet-prosjektet

        – oppgave: DotNetCoreCLI@2

          displayName: Gjenopprett

          innganger:

            kommando: 'gjenopprett'

 

           Bygg dotnet-prosjekt med utgivelseskonfigurasjon

        – oppgave: DotNetCoreCLI@2

          displayName: Bygg

          innganger:

            kommando: bygge

            prosjekter: HelloWorld.csproj

            argumenter: '–configuration $(buildConfiguration)'

 

           Lag kataloger for signerte artefakter

        – powershell: New-Item -ItemType Directory -Path ./artifacts

          displayName: 'Opprettet kataloger for artefakter'

 

           Opprett kataloger for signerte pakker

        – powershell: New-Item -ItemType Directory -Path ./packages

          displayName: 'Opprettet kataloger for pakker'

 

           Kopier artefakten som signeringsbane

        – powershell: Copy-Item ./bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll -Destinasjon ./packages/HelloWorld.dll

          displayName: "Kopier bygde artefakter til pakkekatalogen"

 

           Lagre artefakt for å bruke signeringsjobb

        – oppgave: PublishBuildArtifacts@1

          displayName: 'Lagre for å bli signert artefakt for nedlasting'

          innganger:

            pathtoPublish: ./packages/HelloWorld.dll

            artefaktnavn: HelloWorld.dll

Skriv trinnene for Sign-scenen

– scene: Sign

    # Når arbeidsflyten kjører, er dette navnet som logges

    displayName: Sign

    arbeidsplasser:

    – jobb:

      basseng:

         Kjør jobb på Ubuntu VM-er

        vmImage: "Ubuntu-siste"

      trinn:

         Lag kataloger for signerte artefakter

      – script: mkdir -p ./artifacts && mkdir -p ./packages

        displayName: "Opprettet kataloger for artefakter og pakker"

 

         Last ned artefakten som skal signeres

      – oppgave: Last ned PipelineArtifact@2

        innganger:

          artefakt: HelloWorld.dll

          nedlastingsbane: ./pakker

 

         Installer Docker 17.09.0-ce

      – oppgave: DockerInstaller@0

        displayName: Docker Installer

        innganger:

          dockerVersjon: 17.09.0-ce

          releaseType: stabil

 

         Docker Pull CodeSigner Docker Image

      – script: docker pull ghcr.io/sslcom/codesigner:latest

        displayName: 'Docker Pull CodeSigner Docker Image'

         Signer artefakt med CodeSigner docker-bilde

      – script: docker run -i –rm –dns 8.8.8.8 –nettverksvert –volum $PWD/packages:/codesign/examples –volume $PWD/artifacts:/codesign/output

                -e BRUKERNAVN=$(BRUKERNAVN) -e PASSORD=$(PASSORD) -e CREDENTIAL_ID=$(CREDENTIAL_ID) -e TOTP_SECRET=$(TOTP_SECRET)

Hvis passordet har spesialtegn, må det stå i anførselstegn.

                -e ENVIRONMENT_NAME=$(ENVIRONMENT_NAME) ghcr.io/sslcom/codesigner:siste tegn -input_file_path=/codesign/examples/HelloWorld.dll

                -output_dir_path=/codesign/output

        displayName: 'Sign artefakt med CodeSigner docker-bilde'

 

         Lagre signert artefakt for nedlasting

      – oppgave: PublishBuildArtifacts@1

        displayName: 'Lagre signert artefakt for nedlasting'

        innganger:

          pathtoPublish: ./artifacts/HelloWorld.dll

          artefaktnavn: HelloWorld.dll

Opprett en ny .gitignore-fil

Skriv inn:

bin

obj

.vscode

På meldingslinjen skriver du inn Created pipeline.yml og klikker på Forplikte knapp

SSL.coms EV Kodesignering sertifikater bidrar til å beskytte koden din mot uautorisert tukling og kompromiss med det høyeste nivået av validering, og er tilgjengelige for så lite som $ 249 per år. Du kan også bruk EV Code Signing-sertifikatet i stor skala i skyen ved hjelp av eSigner.

BESTILL NÅ

Fortsett til å klikke på Synkroniser endringer knapp

Fortsett til visualstudio.com og klikk Repos på dashbordet

Oppdater siden for å se yml-filen

Klikk Rørledninger på dashbordet

Deretter klikker du Lag rørledning

Klikk på Azure Repos Git

Velg din YAML-fil

Klikk Variabler knappen etterfulgt av Ny variabel

Plasser verdien for hver miljøvariabel og klikk på OK knapp

Klikk på +-tegnet for å fortsette å legge til hver variabel

Etter å ha plassert inn alle variablene, fortsett å opprette pipeline

Kjør rørledningen din

Klikk Rørledninger på dashbordet. Klikk på de tre prikkene (flere alternativer) på rørledningen. Klikk Kjør rørledning. Til slutt klikker du på Kjør knapp.

Klikk Bygg for å starte byggefasen

Sjekk om hver jobb i byggefasen er vellykket

Klikk på rullegardinpilen ved siden av Jobb for å se statusen til hver byggejobb

Start Sign-stadiet ved å klikke Jobb

Sjekk om hvert trinn i signeringsprosessen er vellykket

Dobbeltsjekk om både bygge- og skiltfasene er vellykkede

Du kan referere til SSL.com Github-depot som inneholder kildekodene til docker-bildet og beskriver hvordan du bruker det: https://github.com/SSLcom/ci-images 

Eksempel på Azure DevOps Pipeline

Sjekk ut eksempelet på Azure DevOps-pipeline vi har laget på github.com/SSLcom/codesigner-azuredevops-sample

Andre veiledninger for fjernsigneringsintegrering

Trenger du tilpassede løsninger? 

Med vår ekspertkunnskap og femstjerners støttepersonell er vi klare og villige til å samarbeide med deg om tilpassede løsninger eller store signeringsrabatter på bedriftsnivå. Fyll ut skjemaet under så tar vi kontakt.

Twitter
Facebook
Linkedin
Reddit
Epost

Hold deg informert og sikker

SSL.com er en global leder innen cybersikkerhet, PKI og digitale sertifikater. Registrer deg for å motta de siste bransjenyhetene, tipsene og produktkunngjøringene fra SSL.com.

Vi vil gjerne ha tilbakemeldinger

Ta vår spørreundersøkelse og fortell oss dine tanker om ditt nylige kjøp.