Jenkins ist ein Open-Source-Automatisierungstool, das häufig für die kontinuierliche Integration und Bereitstellung (CI/CD) von Softwareanwendungen eingesetzt wird. Jenkins bietet eine webbasierte Benutzeroberfläche, die die Konfiguration und Verwaltung von Jobs vereinfacht. Dabei handelt es sich um automatisierte Aufgaben, die so geplant werden können, dass sie zu bestimmten Zeiten ausgeführt oder durch bestimmte Ereignisse ausgelöst werden. Mit diesen Jobs können Sie Code kompilieren, Tests ausführen, Anwendungen bereitstellen und viele weitere Aufgaben der Softwareentwicklung erledigen.
Zu den wichtigsten Funktionen von Jenkins gehören:
-
Einfache Installation und Einrichtung
Jenkins lässt sich einfach installieren und konfigurieren und kann auf einer Vielzahl von Betriebssystemen und Plattformen eingerichtet werden.
-
Leistungsstarkes Jobmanagement
Mit Jenkins können Sie Jobs erstellen und verwalten. Dabei handelt es sich um automatisierte Aufgaben, die zu bestimmten Zeiten oder durch bestimmte Ereignisse ausgeführt werden können. Mit Jobs können Sie Code kompilieren, Tests ausführen, Anwendungen bereitstellen und viele weitere Aufgaben der Softwareentwicklung ausführen.
-
Große Auswahl an Plugins und Integrationen
Jenkins verfügt über eine große Anzahl an Plugins und Integrationen, die die Zusammenarbeit mit vielen verschiedenen Tools und Technologien ermöglichen. Dies macht es hochgradig anpassbar und flexibel.
-
Unterstützung für Pipelines
Jenkins bietet umfassende Unterstützung für Pipelines, die einen Softwareentwicklungs-Workflow definieren. Pipelines können mithilfe von Code definiert werden, wodurch sie hochgradig anpassbar und leicht versionierbar sind.
-
Integrierte Testunterstützung
Jenkins bietet integrierte Unterstützung für viele verschiedene Testarten, darunter Unit-Tests, Integrationstests und Funktionstests. Dies erleichtert die Durchführung von Tests im Rahmen eines kontinuierlichen Integrationsworkflows und stellt sicher, dass alle Codeänderungen vor der Bereitstellung in der Produktion gründlich getestet werden.
-
Skalierbarkeit
Jenkins lässt sich problemlos skalieren, um große Entwicklungsteams und komplexe Softwareentwicklungs-Workflows zu unterstützen.
-
Open-Source
Jenkins ist Open-Source-Software, d. h. die Nutzung ist kostenlos und kann an die spezifischen Anforderungen Ihres Entwicklungsteams angepasst werden.
Codesigning mit Jenkins
Codesignatur ist ein Verfahren, das die Legitimität des Autors sowie die Originalität und Authentizität digitaler Informationen, insbesondere von Softwarecode, überprüft. Es stellt außerdem sicher, dass es sich bei den Informationen nicht um Schadcode handelt. Darüber hinaus garantiert es, dass diese Informationen nach der Erstellung nicht verändert, verfälscht oder gelöscht wurden. digital signiert.
Um Codesigning mit Jenkins durchzuführen, führen Sie die folgenden Schritte aus.
Voraussetzungen für die Durchführung dieser Aufgabe sind:
- Jenkins-Setup und -Konfiguration auf Ihrem Gerät
- Signtool installiert und konfiguriert
- ECSigning KSP installiert und konfiguriert.
Um Jenkins einzurichten und zu konfigurieren, gehen Sie durch die Link.
Führen Sie zum Einrichten und Konfigurieren von Signtool die folgenden Schritte aus:
Signtool kann als Teil des Windows SDK heruntergeladen werden. Windows SDK herunterladen: (developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/)
Sie können auswählen, nur die Windows SDK-Signaturtools für Desktop-Apps zu installieren.
Öffnen Sie die Datei winsdksetup.exe. Merken Sie sich den im Installationspfad angezeigten Standardpfad, da dieser beim Ausführen dieser Befehle über die Eingabeaufforderung hilfreich ist.

Auf der Datenschutzseite von Windows Kits können Sie Microsoft mit beiden Optionen das Sammeln von Erkenntnissen gestatten. Klicken Sie auf „Weiter“.

Akzeptieren Sie die Lizenzvereinbarung

Deaktivieren Sie alle Funktionen außer Windows SDK-Signaturtools für Desktop-Apps, Wählen Sie dann „Installieren“.

Wenn Sie gefragt werden, ob Sie dieser App Änderungen erlauben möchten, wählen Sie „Ja“.


Klicken Sie auf die Windows-Suchleiste in der Taskleiste, geben Sie „Systemumgebungsvariablen bearbeiten“ ein und wählen Sie die gleichnamige Option in der Systemsteuerung aus.

Klicken Sie auf Umgebungsvariablen.

Bevor Sie die Variablenliste bearbeiten, navigieren Sie mit dem Datei-Explorer zum Installationsort des Windows SDK. Sie müssen den Pfad des Ordners kopieren, der die Signtool-Anwendung enthält. Der Standardpfad lautet C:\Programme (x86)\Windows Kits\10\bin\10.0.22621.0\x64, Siehe Screenshot unten. Klicken Sie mit der rechten Maustaste und kopieren Sie den Pfad wie gezeigt. Sie sehen außerdem die Anwendung „Signtool“ unten in der Dateiliste. Dies ist der Befehl, den Sie ausführen werden.

Klicken Sie in der Liste der Systemvariablen auf Neu. Geben Sie dann Pfad als Variablennamen ein und kopieren Sie den oben genannten Pfad. Klicken Sie dann auf OK auf die Umwelt Variablen Fenster und fragst immobilien Fenster.

Um die Installation zu testen, öffnen Sie die Eingabeaufforderung und geben Sie „signtool“ ein. Die Ausgabe sollte wie unten gezeigt aussehen.

Der Standardinstallationsort für Signtool ist beispielsweise: C:\Programme (x86)\Windows Kits\10\bin\10.0.22621.0\x64
Um KSP einzurichten, führen Sie die folgenden Schritte aus:
Encryption Consulting bietet Ihnen diese Lösung, CodeSignSecureDiese Lösung bietet Ihnen eine manipulationssichere Speicherung der Schlüssel sowie vollständige Transparenz und Kontrolle der Code Signing-Aktivitäten. Die privaten Schlüssel des Code Signing-Zertifikats können in einem HSM gespeichert werden, um die Risiken im Zusammenhang mit gestohlenen, beschädigten oder missbrauchten Schlüsseln auszuschließen.
Wenn Sie unsere Lösung verwenden, können Sie das KSP mit den folgenden Schritten herunterladen:
- Anmelden bei Code Sign Secure.
-
Navigieren Sie zu: Repository für Signaturtools.

- Download „Verschlüsselungsberatung CNG-SigningKSP“
-
Installieren Sie die Client-Tools mit dem MSI-Installationsprogramm. Das MSI-Installationsprogramm automatisiert einen Großteil der Konfiguration. Navigieren Sie zum Speicherort der heruntergeladenen Datei und starten Sie das Installationsprogramm.

-
Klicken Sie auf „Weiter“, wenn der Installationsassistent angezeigt wird.

-
Weiter klicken.

- Im Benutzername Geben Sie im Feld „admin“ ein.
-
Im Code Feld, kopieren Sie den Code aus dem Postman-API-Repository. Klicken Sie auf GetLoginToken API und kopieren Sie den Code aus der Körper
Laden Sie PostMan von diesem herunter Link. Klicken Sie nach dem Download unten im Fenster auf die Schaltfläche „Überspringen“. Fügen Sie im Dashboard mithilfe des Pluszeichens neben „Sammlungen“ eine neue Sammlung hinzu.
GetLoginToken API (http://codesignsecureapi.encryptionconsulting.com/api/auth/GetLoginToken): Dies ist die wichtigste API, da sie Ihnen eine Inhaber-Token Zur Verwendung mit den restlichen APIs. Was im Body enthalten sein sollte, wird unten angezeigt. Der Code dient als Passwort, um das Bearer-Token zu erhalten, das Benutzerfeld ist der Benutzername und das Feld Identitätstyp gibt den Benutzertyp an. Klicken Sie auf Senden um eine Ausgabe zu generieren, in der das Bearer-Token unten aufgeführt ist. Kopieren Sie dieses Token zur Verwendung.

- Ändern Sie die Identitätsschutz Typ um 1.
- Verlassen API BaseURL das Gleiche.
-
Weiter klicken.

-
Weiter klicken.

-
Sie werden dann benachrichtigt, dass dieses Programm Änderungen an Ihrem PC vornimmt. Klicken Sie auf „Ja“.

-
Die Installation ist nun abgeschlossen.

Sobald Jenkins eingerichtet ist, benötigen wir Administratorrechte, um den Befehl für signtool auszuführen. Um zu sehen, ob wir die Administratorrechte für Jenkins gesetzt haben, und falls nicht, um diese zu setzen
- Gehen Sie zu den Diensten auf Ihrem System (Sie können einfach danach suchen)
- Scrollen Sie nach unten zu Jenkins. Dort sehen Sie in der Spalte „Anmelden als“ das für Jenkins eingerichtete Benutzerkonto. Wenn es auf etwas anderes (Lokaler Dienst/System, Netzwerkdienst/System) als „.\Administrator“ eingestellt ist, müssen wir es auf „Administrator“ einstellen.
-
Doppelklicken Sie auf Jenkins oder klicken Sie mit der rechten Maustaste auf > Eigenschaften, um die Eigenschaften zu öffnen. Gehen Sie zu Anmelden.
Wählen Sie „Dieses Konto“
Legen Sie es als „.\Administrator“ fest. Geben Sie ein Kennwort ein, vorzugsweise ein Administratorkennwort. Klicken Sie anschließend auf „Übernehmen“.

Sobald wir dies eingerichtet haben, gehen wir zu Jenkins. Unabhängig davon, welche URL/welcher Hostname Sie zuvor bei der Einrichtung angegeben haben, gelangen Sie von Ihrem Browser aus zu Jenkins. In meinem System habe ich es wie folgt eingerichtet: http://localhost:8080/ (Es ist auch die Standardeinstellung).
Führen Sie in Ihrem Dashboard die folgenden Schritte aus:
-
Klicken Sie im Dashboard auf „Neues Element“.

-
Geben Sie einen beliebigen Artikelnamen ein, klicken Sie auf „Pipeline“ und dann auf „OK“.

-
Geben Sie auf der Konfigurationsseite unter „Allgemein“ eine Beschreibung nach Ihren Wünschen ein.

-
Scrollen Sie nach unten, um Pipeline zu finden.

-
Schreiben Sie das Skript in das Skriptfeld und klicken Sie auf Speichern. Sie müssen Ihre Umgebungsvariable entsprechend Ihrem Setup bearbeiten
Pipeline { Agent, beliebige Umgebung { SM_KEY_NAME='evcodesigning' SM_CLIENT_CERT_FILE='C:\\Benutzer\\Administrator\\Desktop\\FürTesting\\evcodesigning.pem' SM_HASHING_ALGORITHM='SHA256' SM_TIME_STAMP_SERVER="http://timestamp.digicert.com" SM_FILEPATH="C:\\Benutzer\\Administrator\\Desktop\\FürTesting\\AgentService.exe" } Stufen { Stufe('Code Signing') { Schritte { dir('C:\\Benutzer\\Administrator\\Desktop\\FürTesting'){ bat 'signtool sign /csp "Anbieter von Verschlüsselungsberatungsschlüsselspeicher" /kc %SM_KEY_NAME% /fd %SM_HASHING_ALGORITHM% /f %SM_CLIENT_CERT_FILE% /tr %SM_TIME_STAMP_SERVER% /td SHA256 %SM_FILEPATH%' } } } } } -
Klicken Sie auf „Jetzt erstellen“ und auf dem Bildschirm wird eine Build-Nummer angezeigt.

-
Wenn Sie auf die Build-Nummer klicken und zur Konsolenausgabe gehen, sehen Sie, dass Ihre Datei signiert wurde.

