ympäristömuuttujat
- USERNAME: SSL.com-tilin käyttäjätunnus. (Vaaditaan)
- SALASANA: SSL.com-tilin salasana (pakollinen)
- CREDENTIAL_ID: Tunnus varmenteen allekirjoittamista varten. Jos credential_id jätetään pois ja käyttäjällä on vain yksi eSigner-koodin allekirjoitusvarmenne, CodeSignTool käyttää oletuksena sitä. Jos käyttäjällä on useampi kuin yksi koodin allekirjoitusvarmenne, tämä parametri on pakollinen. (Vaaditaan)
- TOTP_SECRET: OAuthin TOTP-salaisuus. Voit tutustua yksityiskohtaisiin tietoihin osoitteessa https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Pakollinen)
- ENVIRONMENT_NAME : 'TEST' tai 'PROD' -ympäristö. (Vaaditaan)
Tulot
- input_file_polku: Allekirjoitettavan koodiobjektin polku. (Vaaditaan)
- output_dir_path: Hakemisto, johon allekirjoitetut koodiobjektit kirjoitetaan. Jos lähtöpolku jätetään pois, kohdassa -file_path määritetty tiedosto korvataan allekirjoitetulla tiedostolla.
.NET-koodin DLL-allekirjoituksen esimerkkityönkulku
Luo yml-tiedosto
Ryhmittele työt vaiheisiin. Kaikki yhden vaiheen työt on suoritettava ennen kuin seuraava vaihe suoritetaan.
vaiheet: - rakentaa - merkki
Määrittele ympäristömuuttujat maailmanlaajuisesti. Työtason ominaisuus ohittaa globaalit muuttujat.
- Ympäristömuuttujia käytetään näytteiden luettavuuden parantamiseksi. Esimerkkityönkulun yllä olevassa kuvakaappauksessa PROJECT_NAME, PROJECT_VERSION ja DOTNET_VERSION jätettiin valinnaisesti pois. Allekirjoitus voi silti jatkua näillä puutteilla.
- Aseta kohtaan ENVIRONMENT_NAME "TEST" testiallekirjoitusta varten ja "PROD" live-allekirjoitusta varten.
muuttujat: PROJECT_NAME: "HelloWorld" PROJECT_VERSION: "0.0.1" DOTNET_VERSION: "3.1" ENVIRONMENT_NAME: "PROD"
Määrittele Rakenna Stage
Alla on määritelmä työstäsi dll-artefaktin rakentamiseen
build-dotnet:
- Määritä, missä vaiheessa työ suoritetaan.
vaihe: rakentaa
- Aseta käytettävän kuvan koko nimi. Sen tulee sisältää tarvittaessa rekisteriosa.
kuva: mcr.microsoft.com/dotnet/sdk:3.1-bullseye
- Määrittele komentosarjat, jotka tulee suorittaa *ennen* työtä. Voidaan asettaa maailmanlaajuisesti tai työkohtaisesti.
before_script: - mkdir -p ${CI_PROJECT_DIR}/artefacts - mkdir -p ${CI_PROJECT_DIR}/paketit
- Määritä Runnerin suorittamat Shell-skriptit. Rakenna DLL-artefaktti
komentosarja: - dotnet build dotnet/${PROJECT_NAME}.csproj -c julkaisu - cp dotnet/bin/Release/netcoreapp${DOTNET_VERSION}/${PROJECT_NAME}-${PROJECT_VERSION}.dll ${CI_PROJECT_DIR}/packages/${ PROJECT_NAME}.dll
- Määritä luettelo tiedostoista ja hakemistoista, jotka tulee liittää työhön, jos se onnistuu.
- "expire_in'-ominaisuuden avulla tiedosto voidaan poistaa tietyn ajan kuluttua. Sen käyttö on valinnaista. Tästä syystä yllä olevan esimerkin työnkulun kuvakaappaus ei näytä tätä ominaisuutta.
artefaktit: polut: - ${CI_PROJECT_DIR}/packages/HelloWorld.dll expire_in: 5 minuuttia
Määritä merkkivaihe
Alla on määritelmä työstäsi dll-artefaktin allekirjoittamiseen
sign-dotnet-artefacts:
- Määritä, missä vaiheessa työ suoritetaan.
vaihe: merkki
- Aseta käytettävän kuvan koko nimi. Sen tulee sisältää tarvittaessa rekisteriosa.
kuva: docker:19.03.0
- Määrittele palvelut. Tämä on samanlainen kuin "image" -ominaisuus, mutta linkittää määritetyt palvelut "image" -säilöön.
palvelut: - telakka:19.03.0-dind
- Määritä ympäristömuuttujat tietyille töille.
- Yllä olevassa kuvakaappauksessa merkkikomento määritettiin suoraan merkkikomentosarjassa, ei ympäristömuuttujien alla. Bmuut menetelmät voivat allekirjoittaa oikein TravisCI:n kanssa.
muuttujat: COMMAND: "merkki"
- Määrittele komentosarjat, jotka tulee suorittaa *ennen* työtä. Voidaan asettaa maailmanlaajuisesti tai työkohtaisesti.
before_script: - mkdir -p ${CI_PROJECT_DIR}/artefacts - mkdir -p ${CI_PROJECT_DIR}/paketit
- Aseta Runnerin suorittamat Shell-skriptit. Allekirjoita .NET dll -artefaktti CodeSignTool Docker -kuvalla
komentosarja: - Docker pull ghcr.io/sslcom/codesigner:latest - docker run -i --rm --dns 8.8.8.8 --verkkoisäntä --volume ${CI_PROJECT_DIR}/packages:/codesign/examples --volume $ {CI_PROJECT_DIR}/artefacts:/codesign/output -e KÄYTTÄJÄNIMI=${KÄYTTÄJÄNIMI} -e SALASANA=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e YMPÄRISTÖNIMI=${}ENVIRONMENT_NAME=$ ghcr.io/sslcom/codesigner: uusin ${COMMAND} -input_file_path=/codesign/examples/${PROJECT_NAME}.dll -output_dir_path=/codesign/output
- Kirjoita komentosarja, jonka avulla voit määrittää luettelon tiedostoista ja hakemistoista, jotka tulee liittää työhön, jos se onnistuu.
artefaktit: polut: - ${CI_PROJECT_DIR}/artifacts/${PROJECT_NAME}.dll expire_in: 1 päivää
- Määritä luettelo aiempien vaiheiden töiden nimistä, joista artefaktit tulee ladata.
riippuvuudet: - build-dotnet
Aloita rakennusvaihe
Luo arkisto
Katso Gitlabin komentorivin ohjeita alla olevan kuvakaappauksen mukaisesti
Työnnä kansiota
Tee tämä napsauttamalla terminaali valikossa ja sen jälkeen Uusi terminaali.
Työnnä projekti kirjoittamalla push-skripti terminaaliin
Napsauta Build-painiketta
Liukulinjan käynnistämisen jälkeen jatka rakentamista
Tarkista, onko rakentaminen onnistunut
Aloita merkkivaihe
Jatka artefaktin allekirjoittamista
Varmista, että koodin allekirjoitus onnistui
Nyt voit ladata allekirjoitetun tiedoston
Näyte Gitlab CI Pipeline
Katso näyte Gitlab CI -putkista, jonka olemme luoneet github.com/SSLcom/codesigner-gitlabci-sampleMuut CI/CD-etäallekirjoituksen integrointioppaat
- Pilvikoodin allekirjoituksen integrointi CircleCI:n kanssa
- Cloud Code Signing -integraatio GitHub Actionsin kanssa
- Pilvikoodin allekirjoituksen integrointi Jenkins CI:n kanssa
- Cloud Code Signing -integrointi Travis CI:n kanssa
- Cloud Code Signing -integraatio Azure DevOpsin kanssa
- Cloud Code Signing -integrointi BitBucketin kanssa
- Pilvikoodin allekirjoitusautomaatio CI/CD-palveluilla
Tarvitsetko mukautettuja ratkaisuja?
Asiantuntijaosaamisemme ja viiden tähden tukihenkilöstömme avulla olemme valmiita ja halukkaita työskentelemään kanssasi räätälöityjen ratkaisujen tai yritystason suurten allekirjoitusalennusten parissa. Täytä alla oleva lomake, niin olemme sinuun yhteydessä.