SSL.com

Cloud Code Signing-Integration mit Travis CI

Dieser Artikel zeigt, wie Sie automatisierte Codesignaturen auf Travis CI durchführen können, indem Sie eSigner CodeSignTool in Ihre Pipeline integrieren.  eSigner ist unsere Remote-Codesignatur-Plattform, die das gleiche Sicherheitsniveau wie USB-Token und vernetzte HSMS bietet, jedoch auf effizientere und intuitivere Weise.  Teil des eSigner-Toolkits ist CodeSignTool: ein sicheres Befehlszeilenprogramm, das sich ideal für die Durchführung von Codesignaturen in Unternehmen in verschiedenen CI/CD-Umgebungen, einschließlich Travis, eignet.
SSL.com EV Codesignatur Zertifikate helfen, Ihren Code vor unbefugter Manipulation und Kompromittierung mit dem höchsten Validierungsniveau zu schützen, und sind für so wenig wie erhältlich $ 249 pro Jahr. Sie können auch Verwenden Sie Ihr EV Code Signing-Zertifikat in großem Maßstab in der Cloud mit eSigner.

BESTELLEN SIE JETZT!

Umgebungsvariablen

Eingänge

Beispiel-Workflow für Java-Code (Maven) JAR-Signierung

Erstellen Sie ein Projekt

Erstellen Sie unter dem Projekt eine Datei für Travis

Definieren Sie die Komponenten des Workflows

  1. Platzieren Sie die CPU-Architektur, auf der der Job ausgeführt werden soll

Bogen: amd64

  1. Standardsprache zum Ausführen von Tests

Sprache: Java

  1. Geben Sie das Betriebssystem an, auf dem der Job ausgeführt werden soll

Betriebssystem: Linux

  1. Schreiben Sie die zu verwendende Ubuntu-Distribution

Abstand: bionisch

  1. Umgebungsvariablen global definieren. Die Eigenschaft auf Jobebene überschreibt globale Variablen.

Umgebung:

  weltweit:

    – PROJECT_NAME=“Hallo Welt“

    – PROJECT_VERSION=“0.0.1“

    – BEGRIFF=dumm

    – ENVIRONMENT_NAME = „TEST“

  1. Geben Sie die Reihenfolge der Stufen an. Alle Jobs in einer Stufe müssen abgeschlossen sein, bevor die nächste Stufe ausgeführt wird.

Stufen:

  - bauen

  - Schild

Skizzieren Sie die Bauphase  

Arbeitsplätze:

  -System umfasst:

        – Stufe: bauen

  1. Der Jobname

      Name: build-maven

  1. Die zu verwendende Ubuntu-Distribution

      Abstand: bionisch

  1. Verwenden Sie den Docker-Befehl zum Signieren  

      Leistungen:

        – Docker

  1. Verwenden Sie dotnet-cli, um das Projekt zu erstellen

      Sprache: Java

  1. Java-Version zum Erstellen des Projekts

      jdk:

      – oraclejdk17

  1. Zwischenspeichern des m2-Verzeichnisses zur Beschleunigung

      cache:

        Verzeichnisse:

        – $HOME/.m2

  1. Schreiben Sie das Before-Skript, das vor dem Erstellen des Projekts ausgeführt werden soll

      before_script:

        # Erstellen Sie Verzeichnisse für Artefakte

        – mkdir -p ${TRAVIS_BUILD_DIR}/artifacts

        – mkdir -p ${TRAVIS_BUILD_DIR}/Pakete

        # Maven-Build-Optionen festlegen

        – export MAVEN_CLI_OPTS=“–batch-mode –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true“

  1. Schreiben Sie das Skript zum Erstellen des Projekts.

      Skript:

        # Erstellen Sie ein Maven-Projekt mit Maven-Optionen

        – mvn $MAVEN_CLI_OPTS saubere Installation -f java/pom.xml

         # Erstellte Artefakte in das Artefaktverzeichnis kopieren

        – cp java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar

     

  1. Skizzieren Sie, wie Sie eine Liste von Dateien und Verzeichnissen angeben, die an den Job angehängt werden sollen, wenn er erfolgreich ist.

      Arbeitsbereiche:

        schaffen:

          Name: Maven-jar-Artefakte

          Wege:

            # Speichern Sie das Artefakt, um den Signaturjob zu verwenden

            – ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar

Skizzieren Sie die Zeichenphase

 – Stufe: Zeichen

  1. Schreiben Sie den Jobnamen

      name: sign-jar-datei

  1. Platzieren Sie die zu verwendende Ubuntu-Distribution

      Abstand: bionisch

  1. Verwenden Sie den Docker-Befehl zum Signieren  

      Leistungen:

        – Docker

     

  1. Definieren Sie Umgebungsvariablen für bestimmte Jobs.

      Umgebung:

        BEFEHL = "Zeichen"

  1. Verwenden Sie dotnet-cli, um das Projekt zu erstellen

      Sprache: Java

  1. Java-Version zum Erstellen des Projekts

      jdk:

      – oraclejdk17

  1. Before-Skript, das vor dem Erstellen des Projekts ausgeführt werden soll

      before_script:

        # Erstellen Sie Verzeichnisse für Artefakte

        – mkdir -p ${TRAVIS_BUILD_DIR}/artifacts

        – mkdir -p ${TRAVIS_BUILD_DIR}/Pakete

     

  1. Skript zum Erstellen des Projekts

      Skript:

        # Docker-Pull-CodeSigner-Docker-Image

        – Docker-Pull ghcr.io/sslcom/codesigner:latest

        # Artefakt mit CodeSigner Docker-Image signieren

        – docker run -i –rm –dns 8.8.8.8 –network host –volume ${TRAVIS_BUILD_DIR}/packages:/codesign/examples

          –Volume ${TRAVIS_BUILD_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:latest ${COMMAND}

          -input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output

  1. Wird verwendet, um eine Liste von Dateien und Verzeichnissen anzugeben, die an den Job angehängt werden sollen, wenn er erfolgreich ist.

      Arbeitsbereiche:

        benutzen:

          – Maven-jar-Artefakte

        schaffen:

          name: signierte-jar-datei

          Wege:

            # Signiertes Artefakt speichern

            – ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar

SSL.com EV Codesignatur Zertifikate helfen, Ihren Code vor unbefugter Manipulation und Kompromittierung mit dem höchsten Validierungsniveau zu schützen, und sind für so wenig wie erhältlich $ 249 pro Jahr. Sie können auch Verwenden Sie Ihr EV Code Signing-Zertifikat in großem Maßstab in der Cloud mit eSigner.

BESTELLEN SIE JETZT!

Definieren Sie die Umgebungsvariablen

Gehen Sie zu Travis und klicken Sie auf die Einstellungen  Taste im nun erscheinenden Bestätigungsfenster nun wieder los.

Fügen Sie den Wert für jede Variable hinzu

Scrollen Sie nach unten zum Umgebungsvariablen Abschnitt und klicken Sie auf die Schaltfläche Hinzufügen, um den Wert für jede Variable hinzuzufügen

Erstellen Sie ein Github-Repository

Suchen Sie nach den Push-Befehlen auf Github

Schreiben Sie die Push-Befehle an einem Terminal auf Ihrem Editor

Warten Sie, bis der Build-Job abgeschlossen ist

Auf Travis sollte der Build-Job automatisch starten, nachdem Sie den Code gepusht haben.

Initiieren Sie die Code Signing-Phase

Klicken Sie auf die Schild Abschnitt für CodeSignTool um den Signiervorgang zu starten

Warten Sie, bis Ihre virtuelle Maschine vollständig gebootet ist

Bestätigen Sie, ob die Codesignatur erfolgreich war

Sie können auf die verweisen SSL.com Github-Repository, das die Quellcodes des Docker-Images enthält und dessen Verwendung beschreibt: https://github.com/SSLcom/ci-images

Beispiel einer Travis CI-Pipeline

Sehen Sie sich die Travis CI-Beispielpipeline an, die wir erstellt haben github.com/SSLcom/codesigner-travisci-sample

Andere CI/CD-Service-Remote-Signatur-Integrationsleitfäden

Benötigen Sie kundenspezifische Lösungen? 

Mit unserem Expertenwissen und unserem Fünf-Sterne-Support-Personal sind wir bereit und bereit, mit Ihnen an kundenspezifischen Lösungen oder Rabatten für Großseriensignaturen auf Unternehmensebene zu arbeiten. Füllen Sie das untenstehende Formular aus und wir melden uns bei Ihnen.

Beenden Sie die mobile Version