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.
Java-code (Maven) JAR-ondertekeningsvoorbeeld workflow
Maak een project
Maak onder het project een bestand voor Travis

Definieer de componenten van de workflow
- Plaats de CPU-architectuur om de taak op uit te voeren
boog: amd64
- Standaardtaal om tests in uit te voeren
taal: java
- Geef het besturingssysteem op waarop de taak moet worden uitgevoerd
os: linux
- Schrijf de Ubuntu-distributie die zal worden gebruikt
dist: bionisch
- Definieer omgevingsvariabelen globaal. De eigenschap op taakniveau overschrijft globale variabelen.
- Houd er rekening mee dat TERM=dom alleen nodig is voor Gradle-projectinstanties.
- Plaats onder ENVIRONMENT_NAME "TEST" voor testondertekening en "PROD" voor liveondertekening.
omgeving:
globaal:
– PROJECT_NAME=”Hallo Wereld”
– PROJECT_VERSION=”0.0.1″
– TERM = dom
– ENVIRONMENT_NAME=”TEST”
- Geef de volgorde van de fasen op. Alle taken in één fase moeten worden voltooid voordat de volgende fase wordt uitgevoerd.
stadia:
– bouwen
- teken
Geef een overzicht van de bouwfase
banen:
omvatten:
– fase: bouwen
- De taaknaam
naam: build-maven
- De te gebruiken Ubuntu-distributie
dist: bionisch
- Gebruik het docker-commando om te ondertekenen
diensten:
– havenarbeider
- Gebruik dotnet-cli om het project te bouwen
taal: java
- Java-versie om het project te bouwen
jdk:
– orakeljdk17
- Cache m2-map om te versnellen
cache:
mappen:
– $HUIS/.m2
- Schrijf het Before-script dat moet worden uitgevoerd voordat het project wordt gebouwd
voor_script:
# Maak mappen voor artefacten
– mkdir -p ${TRAVIS_BUILD_DIR}/artefacten
– mkdir -p ${TRAVIS_BUILD_DIR}/pakketten
# Stel Maven-buildopties in
– export MAVEN_CLI_OPTS=”–batch-modus –fouten –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”
- Schrijf het script om het project te bouwen.
- In deze ondertekeningsvoorbeeldworkflow zijn meerdere projecttypen gemaakt. Dit is de reden waarom bestanden van verschillende projecttypes werden bewaard door submappen te maken. Er is een submap met de naam 'java' gemaakt voor Java-projecten. In de demo-screenshot hierboven was het niet nodig om een submap met de naam 'java' te maken, dus deze was niet opgenomen in het script.
script:
# Bouw Maven-project met Maven-opties
– mvn $MAVEN_CLI_OPTS schone installatie -f java/pom.xml
# Kopieer gebouwde artefacten naar de map met artefacten
– cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar
- Geef aan hoe u een lijst met bestanden en mappen opgeeft die aan de taak moeten worden toegevoegd als deze slaagt.
werkruimten:
creëren:
naam: maven-jar-artefacten
paden:
# Bewaar artefact om ondertekeningstaak te gebruiken
– ${TRAVIS_BUILD_DIR}/pakketten/${PROJECT_NAME}.jar
Geef een overzicht van de tekenfase
– podium: teken
- Schrijf de functienaam
naam: teken-jar-bestand
- Plaats de te gebruiken Ubuntu-distributie
dist: bionisch
- Gebruik het Docker-commando om te ondertekenen
diensten:
– havenarbeider
- Definieer omgevingsvariabelen voor specifieke taken.
- In de bovenstaande schermafbeelding is de sign-opdracht rechtstreeks in het sign-script gedefinieerd en niet onder omgevingsvariabelen. Both methoden correct kunnen ondertekenen met TravisCI.
omgeving:
COMMAND="teken"
- Gebruik dotnet-cli om het project te bouwen
taal: java
- Java-versie om het project te bouwen
jdk:
– orakeljdk17
- Voordat het script wordt uitgevoerd voordat het project wordt gebouwd
voor_script:
# Maak mappen voor artefacten
– mkdir -p ${TRAVIS_BUILD_DIR}/artefacten
– mkdir -p ${TRAVIS_BUILD_DIR}/pakketten
- Script om het project te bouwen
script:
# Docker Pull CodeSigner Docker-afbeelding
– docker pull ghcr.io/sslcom/codesigner: nieuwste
# Onderteken artefact met CodeSigner Docker-afbeelding
– docker run -i –rm –dns 8.8.8.8 –netwerkhost –volume ${TRAVIS_BUILD_DIR}/packages:/codesign/examples
–volume ${TRAVIS_BUILD_DIR}/artefacts:/codesign/output
-e USERNAME=${USERNAME} -e WACHTWOORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET}
-e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:nieuwste ${COMMAND}
-input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output
- Wordt gebruikt om een lijst met bestanden en mappen op te geven die aan de taak moeten worden toegevoegd als deze slaagt.
werkruimten:
gebruiken:
– maven-jar-artefacten
creëren:
naam: ondertekend-jar-bestand
paden:
# Bewaar ondertekend artefact
– ${TRAVIS_BUILD_DIR}/artefacts/${PROJECT_NAME}.jar
Definieer de omgevingsvariabelen
Ga naar Travis en klik op de Instellingen
Voeg de waarde voor elke variabele toe
Blader omlaag naar de Omgevingsvariabelen sectie en klik op de knop Toevoegen om de waarde voor elke variabele toe te voegen
Maak een Github-repo
Zoek naar de push-commando's op Github
Schrijf de push-commando's op een terminal op je editor
Wacht tot de bouwtaak is voltooid
Op Travis zou de bouwtaak automatisch moeten starten nadat u de code hebt gepusht.
Start de code-ondertekeningsfase
Klik op de teken sectie voor CodeSignTool om het ondertekeningsproces te starten
Wacht tot je virtuele machine klaar is met opstarten
Bevestig of code-ondertekening succesvol is
Voorbeeld Travis CI-pijplijn
Bekijk de voorbeeld Travis CI-pijplijn waarop we hebben gemaakt github.com/SSLcom/codesigner-travisci-sampleAndere CI/CD Service Remote Signing Integration Guides
- Integratie van Cloud Code Signing met CircleCI
- Integratie van Cloud Code Signing met GitHub-acties
- Cloud Code Signing-integratie met GitLab CI
- Integratie van Cloud Code Signing met Jenkins 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.