See on juhend selle kohta, kuidas saab Azure DevOpsi integreerida eSigner CodeSignTooliga, et teostada automaatset koodi allkirjastamist.
CodeSignTool on käsurea utiliit, mis sobib pilvekoodi allkirjastamise protsessideks ja integreerub sujuvalt erinevate CI/CD platvormidega. See on osa eSignerist: meie kaugallkirjastamisteenusest, mis pakub tõhusat, turvalist ja kasutajasõbralikku lähenemist koodi allkirjastamisele.
Keskkonna muutujad
- KASUTAJATUNNUSE: SSL.com-i konto kasutajanimi. (Nõutud)
- PASSWORD: SSL.com konto parool (nõutav)
- CREDENTIAL_ID: sertifikaadi allkirjastamise mandaadi ID. Kui credential_id on välja jäetud ja kasutajal on ainult üks eSigneri koodi allkirjastamise sertifikaat, kasutab CodeSignTool vaikimisi seda. Kui kasutajal on rohkem kui üks koodi allkirjastamise sertifikaat, on see parameeter kohustuslik. (Nõutud)
- TOTP_SECRET: OAuthi TOTP saladus. Üksikasjalikule teabele pääsete juurde aadressil https://ssl.com/how-to/automate-esigner-ev-code-signing (Nõutav)
- ENVIRONMENT_NAME : 'TEST' või 'PROD' keskkond. (Nõutud)
Sisendid
- sisendfaili_tee: allkirjastatava koodiobjekti tee. (Nõutud)
- väljundi_kataloogi_tee: kataloog, kuhu kirjutatakse allkirjastatud koodiobjekt(id). Kui väljundi_tee jäetakse välja, kirjutatakse failitee määratud fail allkirjastatud failiga üle.
Looge projekt saidil visualstudio.com

Looge oma koodiredaktoris uus .yml-fail

Määrake integratsioonipäästikud ja keskkonnamuutujad

Pideva integreerimise päästikud
päästik:
– mitte ühtegi
Määratleb keskkonnamuutujad globaalselt. Töötaseme atribuut alistab globaalsed muutujad
muutujad:
buildConfiguration: 'Release'
Grupeeri tööd etappideks
Kirjutage ehitusetapi sammud. Kõik ühes etapis olevad tööd peavad olema lõpetatud enne järgmise etapi täitmist.
etapid:
– etapp: ehita
# Kui töövoog töötab, siis see nimi logitakse
displayName: ehitamine
töökohad:
- töökoht:
bassein:
Käivitage töö Windowsi VM-ides
vmImage: 'windows-latest'
sammud:
Installige Dotnet 6.0.x
– ülesanne: UseDotNet@2
displayName: 'Installi .NET Core SDK'
sisendid:
versioon: '6.0.x'
performMultiLevelLookup: tõsi
includePreviewVersions: true
Taastage Dotneti projekt
– ülesanne: DotNetCoreCLI@2
displayName: Taasta
sisendid:
käsk: 'taasta'
Koostage väljalaskekonfiguratsiooniga dotnet-projekt
– ülesanne: DotNetCoreCLI@2
displayName: ehitamine
sisendid:
käsk: ehita
projektid: HelloWorld.csproj
argumendid: '–konfiguratsioon $(buildConfiguration)'
Looge allkirjastatud artefaktide jaoks kataloogid
– powershell: uus üksus – üksuse tüübi kataloog – tee ./artefaktid
displayName: "Loodud kataloogid artefaktide jaoks"
Looge allkirjastatud pakettide jaoks kataloogid
– powershell: uus üksus – üksuse tüübi kataloog – tee ./paketid
displayName: 'Loodud pakettide kataloogid'
Kopeerige artefakt allkirjastamisteeks
– Powershell: Copy-Item ./bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll -Sihtkoht ./packages/HelloWorld.dll
displayName: "Kopeeri ehitatud artefaktid pakettide kataloogi"
Allkirjastamistöö kasutamiseks salvestage artefakt
– ülesanne: PublishBuildArtifacts@1
displayName: "Salvesta allalaadimiseks allkirjastatud artefakt"
sisendid:
pathtoPublish: ./packages/HelloWorld.dll
artefakti nimi: HelloWorld.dll
Kirjutage märgietapi sammud

– lava: märk
# Kui töövoog töötab, siis see nimi logitakse
displayName: Sign
töökohad:
- töökoht:
bassein:
Käitage tööd Ubuntu VM-ides
vmImage: "Ubuntu-latest"
sammud:
Looge allkirjastatud artefaktide jaoks kataloogid
– skript: mkdir -p ./artefacts && mkdir -p ./paketid
displayName: "Loodud kataloogid artefaktide ja pakettide jaoks"
Laadige alla allkirjastatav artefektiiv
– ülesanne: DownloadPipelineArtifact@2
sisendid:
artefakt: HelloWorld.dll
allalaadimistee: ./paketid
Installige Docker 17.09.0-ce
– ülesanne: DockerInstaller@0
displayName: Docker Installer
sisendid:
dockerVersioon: 17.09.0-ce
väljalaske tüüp: stabiilne
Docker Pull CodeSigner Dockeri pilt
- skript: docker pull ghcr.io/sslcom/codesigner:latest
displayName: "Docker Pull CodeSigner Dockeri pilt"
Allkirjastage artefakt CodeSigner dockeri kujutisega
– skript: docker run -i –rm –dns 8.8.8.8 –võrgu host –maht $PWD/paketid:/koodkujundus/näited –maht $PWD/artefaktid:/koodkujundus/väljund
-e KASUTAJANIMI=$(KASUTANIMI) -e PASSWORD=$(PASSWORD) -e CREDENTIAL_ID=$(CREDENTIAL_ID) -e TOTP_SECRET=$(TOTP_SECRET)
-e ENVIRONMENT_NAME=$(ENVIRONMENT_NAME) ghcr.io/sslcom/codesigner: uusim märk -input_file_path=/codesign/examples/HelloWorld.dll
-väljundi_kataloogi_tee=/koodikujundus/väljund
displayName: "Allkirjasta artefakt CodeSigner dockeri kujutisega"
Salvestage allkirjastatud artefakt allalaadimiseks
– ülesanne: PublishBuildArtifacts@1
displayName: "Salvesta allkirjastatud artefakt allalaadimiseks"
sisendid:
pathtoPublish: ./artifacts/HelloWorld.dll
artefakti nimi: HelloWorld.dll
Looge uus .gitignore fail

Trüki sisse:
konteiner
obj
.vscode
Tippige sõnumiribale tekst Created pipeline.yml ja klõpsake nuppu toime panema nupp

Jätkake klõpsamisega Sünkrooni muudatused nupp

Minge saidile visualstudio.com ja klõpsake puhkus armatuurlaual
Yml-faili nägemiseks värskendage lehte

Click Torujuhtmed armatuurlaual

Järgmine klõpsake Loo torujuhe

Klõpsake nuppu Azure Repos Git

Valige oma YAML-fail

Click Muutujad nuppu, millele järgneb Uus muutuja

Asetage iga keskkonnamuutuja väärtus ja klõpsake nuppu OK nupp

Iga muutuja lisamise jätkamiseks klõpsake märki +

Pärast kõigi muutujate sisestamist jätkake konveieri loomist

Käivitage oma torujuhe
Click Torujuhtmed armatuurlaual. Klõpsake oma torujuhtmel kolme punkti (rohkem valikuid). Klõpsake Käivitage torujuhe. Lõpuks klõpsake nuppu jooks nuppu.

Ehitamisetapi alustamiseks klõpsake nuppu Ehitamine

Kontrollige, kas iga ehitusetapi töö on edukas
Klõpsake kõrval olevat rippmenüü noolt töö et näha iga ehitustöö olekut

Käivitage märgistamise etapp, klõpsates töö
Kontrollige, kas allkirjastamisprotsessi iga samm on edukas

Kontrollige veelkord, kas nii ehitamise kui ka allkirjastamise etapp on edukas

Azure DevOpsi torujuhtme näidis
Tutvuge meie loodud Azure DevOpsi torujuhtme näidisega github.com/SSLcom/codesigner-azuredevops-sample
Muud kaugallkirjastamise integreerimise juhendid
- Pilvekoodi allkirjastamise integreerimine CircleCI-ga
- Pilvekoodi allkirjastamise integreerimine GitHubi toimingutega
- Pilvekoodi allkirjastamise integreerimine GitLab CI-ga
- Pilvekoodi allkirjastamise integreerimine Travis CI-ga
- Pilvekoodi allkirjastamise integreerimine Jenkins CI-ga
- Pilvekoodi allkirjastamise integreerimine BitBucketiga
- Pilvekoodi allkirjastamise automatiseerimine CI/CD teenustega
Kas vajate kohandatud lahendusi?
Tänu oma asjatundlikele teadmistele ja viietärnilisele tugipersonalile oleme valmis teiega koostööd tegema kohandatud lahenduste või ettevõtte tasemel suuremahuliste allkirjastamise allahindluste kallal. Täitke allolev vorm ja me võtame teiega ühendust.
