Omgevingsvariabelen
- USERNAME: gebruikersnaam van SSL.com-account. (Verplicht)
- WACHTWOORD: SSL.com-accountwachtwoord (vereist)
- CREDENTIAL_ID: Referentie-ID voor ondertekeningscertificaat. Als credential_id wordt weggelaten en de gebruiker slechts één eSigner-certificaat voor het ondertekenen van code heeft, zal CodeSignTool dat standaard gebruiken. Als de gebruiker meer dan één code-ondertekeningscertificaat heeft, is deze parameter verplicht. (Verplicht)
- TOTP_GEHEIM: OAuth TOTP-geheim. U hebt toegang tot gedetailleerde informatie over: https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Verplicht)
- OMGEVING_NAME : 'TEST' of 'PROD' omgeving. (Verplicht)
Ingangen
- invoer_bestandspad: Pad van codeobject dat moet worden ondertekend. (Verplicht)
- output_dir_pad: Directory waar ondertekende code-object(en) zullen worden geschreven. Als output_path wordt weggelaten, wordt het bestand gespecificeerd in -file_path overschreven door het ondertekende bestand.
.NET Code DLL-ondertekening Voorbeeld workflow
Maak een yml-bestand
Groepeer taken in fasen. Alle taken in één fase moeten worden voltooid voordat de volgende fase wordt uitgevoerd.
fasen: - bouwen - ondertekenen
Definieer omgevingsvariabelen globaal. De eigenschap op taakniveau overschrijft globale variabelen.
- Omgevingsvariabelen worden gebruikt om de voorbeelden leesbaarder te maken. In de bovenstaande schermafbeelding van de voorbeeldworkflow zijn de PROJECT_NAME, PROJECT_VERSION en DOTNET_VERSION optioneel weggelaten. Ondertekening kan nog steeds doorgaan met deze omissies.
- Plaats onder ENVIRONMENT_NAME "TEST" voor testondertekening en "PROD" voor liveondertekening.
variabelen: PROJECT_NAME: "HelloWorld" PROJECT_VERSION: "0.0.1" DOTNET_VERSION: "3.1" ENVIRONMENT_NAME: "PROD"
Definieer de Bouwfase

Hieronder vindt u de definitie van uw taak om dll-artefacten te bouwen
build-dotnet:
- Bepaal in welke fase de taak wordt uitgevoerd.
fase: bouwen
- Plaats de volledige naam van de afbeelding die moet worden gebruikt. Het moet indien nodig het registergedeelte bevatten.
afbeelding: mcr.microsoft.com/dotnet/sdk:3.1-bullseye
- Definieer scripts die *vóór* de taak moeten worden uitgevoerd. Kan globaal of per taak worden ingesteld.
before_script: - mkdir -p ${CI_PROJECT_DIR}/artifacts - mkdir -p ${CI_PROJECT_DIR}/pakketten
- Definieer Shell-scripts uitgevoerd door de Runner. DLL-artefact bouwen
script: - dotnet build dotnet/${PROJECT_NAME}.csproj -c Release - cp dotnet/bin/Release/netcoreapp${DOTNET_VERSION}/${PROJECT_NAME}-${PROJECT_VERSION}.dll ${CI_PROJECT_DIR}/packages/${ PROJECT_NAME}.dll
- Geef een lijst op met bestanden en mappen die aan de taak moeten worden toegevoegd als deze slaagt.
- Het 'verlopen_in' eigenschap staat toe dat het bestand na een bepaalde tijd wordt verwijderd. Het gebruik ervan is optioneel. Dit is de reden waarom de schermafbeelding van de voorbeeldworkflow hierboven deze eigenschap niet toont.
artefacten: paden: - ${CI_PROJECT_DIR}/packages/HelloWorld.dll expire_in: 5 minuten
Definieer de tekenfase
Hieronder vindt u de definitie van uw taak om dll-artefacten te ondertekenen
teken-dotnet-artefacten:
- Bepaal in welke fase de taak wordt uitgevoerd.
stadium: teken
- Plaats de volledige naam van de afbeelding die moet worden gebruikt. Het moet indien nodig het registergedeelte bevatten.
afbeelding: havenarbeider: 19.03.0
- Definieer diensten. Dit is vergelijkbaar met de eigenschap `image`, maar koppelt de gespecificeerde services aan de `image`-container.
diensten: - havenarbeider: 19.03.0-dind
- Definieer omgevingsvariabelen voor specifieke taken.
- In de bovenstaande schermafbeelding is de sign-opdracht rechtstreeks in het sign-script gedefinieerd en niet onder omgevingsvariabelen. Bandere methoden kunnen correct ondertekenen met TravisCI.
variabelen: COMMANDO: "teken"
- Definieer scripts die *vóór* de taak moeten worden uitgevoerd. Kan globaal of per taak worden ingesteld.
before_script: - mkdir -p ${CI_PROJECT_DIR}/artifacts - mkdir -p ${CI_PROJECT_DIR}/pakketten
- Plaats Shell-scripts uitgevoerd door de Runner. Onderteken .NET dll-artefact met CodeSignTool Docker Image
script: - docker pull ghcr.io/sslcom/codesigner:latest - docker run -i --rm --dns 8.8.8.8 --network host --volume ${CI_PROJECT_DIR}/packages:/codesign/examples --volume $ {CI_PROJECT_DIR}/artifacts:/codesign/output -e USERNAME=${USERNAME} -e PASSWORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:laatste ${COMMAND} -input_file_path=/codesign/examples/${PROJECT_NAME}.dll -output_dir_path=/codesign/output
- Schrijf het script dat kan worden gebruikt om een lijst met bestanden en mappen op te geven die aan de taak moeten worden toegevoegd als deze slaagt.
artefacten: paden: - ${CI_PROJECT_DIR}/artifacts/${PROJECT_NAME}.dll expire_in: 1 dagen
- Geef een lijst op met taaknamen uit eerdere stadia waaruit artefacten moeten worden geladen.
afhankelijkheden: - build-dotnet
Start de bouwfase
Een opslagplaats maken
Raadpleeg de opdrachtregelinstructies op Gitlab zoals te zien is in de onderstaande schermafbeelding:
Duw je map
Doe dit door te klikken op terminal op het menu, gevolgd door Nieuwe terminal.
Typ het push-script op uw Terminal om het project te pushen
Klik op de knop Bouwen
Ga na het activeren van de pijplijn verder met bouwen
Controleer of de build is gelukt
Start de tekenfase
Ga verder om het artefact te ondertekenen
Bevestig of de code-ondertekening succesvol is
U kunt nu het ondertekende bestand downloaden
Voorbeeld Gitlab CI-pijplijn
Bekijk de voorbeeld Gitlab CI-pijplijn waarop we hebben gemaakt github.com/SSLcom/codesigner-gitlabci-sampleAndere integratiehandleidingen voor CI/CD Remote Signing
- Integratie van Cloud Code Signing met CircleCI
- Integratie van Cloud Code Signing met GitHub-acties
- Integratie van Cloud Code Signing met Jenkins CI
- Cloud Code Signing-integratie met Travis CI
- Cloud Code Signing-integratie met Azure DevOps
- Cloud Code Signing-integratie met BitBucket
- Cloud Code Signing-automatisering met CI/CD-services
Oplossingen op maat nodig?
Met onze deskundige kennis en vijfsterrenondersteuningspersoneel staan we klaar en bereid om met u samen te werken aan aangepaste oplossingen of grote ondertekeningskortingen op ondernemingsniveau. Vul het onderstaande formulier in en we nemen contact met je op.