Jenkins is een open-source automatiseringstool die veel wordt gebruikt voor continue integratie en continue levering (CI/CD) van softwareapplicaties. Jenkins biedt een webgebaseerde gebruikersinterface waarmee u eenvoudig jobs kunt configureren en beheren. Dit zijn geautomatiseerde taken die kunnen worden gepland om op specifieke tijdstippen te worden uitgevoerd of die worden geactiveerd door specifieke gebeurtenissen. Deze jobs kunnen worden gebruikt om code te compileren, tests uit te voeren, applicaties te implementeren en vele andere taken met betrekking tot softwareontwikkeling uit te voeren.
Enkele belangrijke kenmerken van Jenkins zijn:
-
Eenvoudige installatie en configuratie
Jenkins is eenvoudig te installeren en configureren en kan op een breed scala aan besturingssystemen en platforms worden gebruikt.
-
Krachtig taakbeheer
Met Jenkins kunt u jobs aanmaken en beheren. Dit zijn geautomatiseerde taken die u kunt plannen om op specifieke tijdstippen uit te voeren of die worden geactiveerd door specifieke gebeurtenissen. Jobs kunnen worden gebruikt om code te compileren, tests uit te voeren, applicaties te implementeren en vele andere taken met betrekking tot softwareontwikkeling uit te voeren.
-
Breed scala aan plug-ins en integraties
Jenkins beschikt over een groot aantal plug-ins en integraties, waardoor het met veel verschillende tools en technologieën kan werken. Dit maakt het zeer aanpasbaar en flexibel.
-
Ondersteuning voor pijpleidingen
Jenkins biedt krachtige ondersteuning voor pipelines, sets van fasen die een softwareontwikkelingsworkflow definiëren. Pipelines kunnen worden gedefinieerd met behulp van code, waardoor ze zeer aanpasbaar en eenvoudig te beheren zijn.
-
Ingebouwde testondersteuning
Jenkins biedt ingebouwde ondersteuning voor veel verschillende soorten tests, waaronder unittests, integratietests en functionele tests. Dit maakt het eenvoudig om tests uit te voeren als onderdeel van een continue integratieworkflow, zodat alle codewijzigingen grondig worden getest voordat ze in productie worden genomen.
-
Schaalbaarheid
Jenkins kan eenvoudig worden geschaald ter ondersteuning van grote ontwikkelteams en complexe softwareontwikkelingsworkflows.
-
Open-source
Jenkins is open-sourcesoftware. Dit betekent dat u de software gratis kunt gebruiken en kunt aanpassen aan de specifieke behoeften van uw ontwikkelteam.
Codesigning met Jenkins
Code ondertekening is een procedure die de legitimiteit van de auteur en de originaliteit en authenticiteit van digitale informatie, met name softwarecode, verifieert. Het garandeert ook dat de informatie geen kwaadaardige code is. Bovendien garandeert het dat deze informatie niet is gewijzigd, vervalst of geannuleerd nadat deze is gepubliceerd. digitaal ondertekend.
Om codesigning met Jenkins uit te voeren, volgt u de onderstaande stappen.
Vereisten voor het uitvoeren van deze taak zijn:
- Jenkins-installatie en configuratie op uw apparaat
- Signtool geïnstalleerd en geconfigureerd
- ECSigning KSP geïnstalleerd en geconfigureerd.
Om Jenkins in te stellen en te configureren, gaat u door de link.
Volg de onderstaande stappen om Signtool in te stellen en te configureren:
Signtool kan worden gedownload als onderdeel van de Windows SDK. Download Windows SDK: (developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/)
U kunt ervoor kiezen om alleen de Windows SDK Signing Tools voor desktop-apps te installeren.
Open het bestand winsdksetup.exe. Onthoud het standaardpad dat wordt weergegeven in het installatiepad, omdat dit handig is bij het uitvoeren van deze opdrachten vanaf de opdrachtprompt.

Op de pagina Windows Kits Privacy is elke optie om Microsoft toestemming te geven om inzichten te verzamelen in orde. Klik op Volgende.

Accepteer de licentieovereenkomst

Deselecteer alle functies behalve Windows SDK-ondertekeningshulpmiddelen voor desktop-apps, Selecteer vervolgens Installeren.

Wanneer u wordt gevraagd of u wilt toestaan dat deze app wijzigingen aanbrengt, selecteert u Ja.


Klik op de Windows-zoekbalk op de taakbalk en typ 'Bewerk de systeemomgevingsvariabelen'. Selecteer vervolgens de gelijknamige optie in het Configuratiescherm.

Klik omgevingsvariabelen.

Voordat u de variabelenlijst bewerkt, navigeert u met behulp van de bestandsverkenner naar de locatie waar de Windows SDK is geïnstalleerd. U moet het pad kopiëren van de map waarin de SignTool-toepassing zich bevindt. Het standaardpad is C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64, Zie de onderstaande schermafbeelding. Klik met de rechtermuisknop en kopieer het pad zoals weergegeven. U kunt ook de SignTool-applicatie onderaan de bestandslijst zien; dit is de opdracht die u gaat uitvoeren.

Klik in de lijst Systeemvariabelen op Nieuw. Typ vervolgens Pad als variabelenaam en kopieer en plak het bovengenoemde pad. Klik vervolgens op OK aan de omgeving houden variabelen venster en system vastgoed venster.

Om de installatie te testen, opent u de opdrachtprompt en typt u signtool. De uitvoer zou er dan als volgt uit moeten zien.

De standaard installatielocatie voor signtool is bijvoorbeeld: C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64
Om KSP in te stellen, volgt u de onderstaande stappen:
Encryption Consulting biedt u deze oplossing, CodeSignSecureDeze oplossing biedt u fraudebestendige opslag voor de sleutels en volledige zichtbaarheid en controle over codeondertekeningsactiviteiten. De privésleutels van het codeondertekeningscertificaat kunnen worden opgeslagen in een HSM om de risico's van gestolen, beschadigde of misbruikte sleutels te elimineren.
Als u onze oplossing gebruikt, kunt u de KSP downloaden met behulp van de onderstaande stappen:
- Inloggen Code Sign Secure.
-
Navigeer naar: Signing tools repository.

- Download “Encryptie Consulting CNG-SigningKSP”
-
Installeer de clienttools met behulp van het .MSI-installatieprogramma. Het .MSI-installatieprogramma automatiseert een groot deel van de configuratie. Navigeer naar de locatie waar het gedownloade bestand is opgeslagen en start het installatieprogramma.

-
Klik op Volgende wanneer de installatiewizard verschijnt.

-
Klik volgende.

- In de Gebruikersnaam veld, typ admin.
-
In de Code veld, kopieer de code uit de Postman API-repository. Klik op de GetLoginToken api en kopieer de code van de Lichaam.
Download PostMan hier linkKlik na het downloaden op de knop 'Overslaan' onderaan het venster. Voeg in het dashboard een nieuwe collectie toe met het plusteken naast 'Collecties'.
GetLoginToken API (http://codesignsecureapi.encryptionconsulting.com/api/auth/GetLoginToken): Dit is de belangrijkste API, omdat deze u een Token aan toonder Om te gebruiken met de rest van de API's, wordt hieronder weergegeven wat er in de body moet staan. De code dient als wachtwoord om een Bearer Token te verkrijgen, het veld 'Gebruiker' is de gebruikersnaam en het veld 'Identiteitstype' specificeert het gebruikerstype. Klik Verstuur Om een uitvoer te genereren met de Bearer Token onderaan. Kopieer deze token voor gebruik.

- Verander de Identiteit Type om 1.
- Verlof API BaseURL hetzelfde.
-
Klik volgende.

-
Klik volgende.

-
U krijgt dan een melding dat dit programma wijzigingen zal aanbrengen op uw pc. Klik op Ja.

-
De installatie is nu voltooid.

Zodra Jenkins is ingesteld, hebben we beheerdersrechten nodig om de opdracht voor signtool uit te voeren. Om te zien of we de beheerdersrechten voor Jenkins hebben ingesteld, en zo niet, om die in te stellen
- Ga naar de services op uw systeem (u kunt er gewoon naar zoeken)
- Scroll naar beneden naar Jenkins. Daar, in de kolom 'Aanmelden als', zie je het gebruikersaccount dat voor Jenkins is ingesteld. Als het is ingesteld op iets anders (Lokale service/Systeem, Netwerkservice/Systeem) dan '.\Administrator', dan moeten we het instellen als Administrator.
-
Dubbelklik op Jenkins of klik met de rechtermuisknop > Eigenschappen om Eigenschappen te openen. Ga naar Aanmelden.
Selecteer 'Dit account'
Stel het in als ".\Administrator". Geef een wachtwoord op, bij voorkeur een beheerderswachtwoord. Klik op Toepassen als je klaar bent.

Zodra we dit hebben ingesteld, gaan we naar Jenkins. Welke URL/hostnaam je ook hebt opgegeven tijdens de installatie, als je daar vanuit je browser naartoe navigeert, kom je bij Jenkins. In mijn systeem heb ik het ingesteld als http://localhost:8080/ (Dit is ook de standaardinstelling).
Volg de onderstaande stappen in uw Dashboard:
-
Klik op Nieuw item op het Dashboard.

-
Voer een itemnaam in en klik op pijplijn en klik op OK.

-
Op de configuratiepagina, onder Algemeen, kunt u een gewenste beschrijving invullen.

-
Scroll naar beneden om Pipeline te vinden.

-
Schrijf het script in het scriptvak en klik op Opslaan. Je moet je omgevingsvariabele aanpassen aan je instellingen.
pijplijn { agent elke omgeving { SM_KEY_NAME='evcodesigning' SM_CLIENT_CERT_FILE='C:\\Gebruikers\\Beheerder\\Bureaublad\\VoorTesten\\evcodesigning.pem' SM_HASHING_ALGORITHM='SHA256' SM_TIME_STAMP_SERVER="http://timestamp.digicert.com" SM_FILEPATH="C:\\Gebruikers\\Beheerder\\Bureaublad\\VoorTesten\\AgentService.exe" } fasen { fase('Codeondertekening') { stappen { dir('C:\\Gebruikers\\Beheerder\\Bureaublad\\VoorTesten') { bat 'signtool sign /csp "Encryptie Consulting Sleutelopslagprovider" /kc %SM_KEY_NAME% /fd %SM_HASHING_ALGORITHM% /f %SM_CLIENT_CERT_FILE% /tr %SM_TIME_STAMP_SERVER% /td SHA256 %SM_FILEPATH%' } } } } } -
Klik op 'Nu bouwen'. U ziet dan een buildnummer op het scherm verschijnen.

-
Als u op het buildnummer klikt en naar de console-uitvoer gaat, ziet u dat uw bestand is ondertekend.

