en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

Integracja Cloud Code Signing z Jenkins CI

To jest przewodnik, jak wykonać automatyczne podpisywanie kodu w Jenkins za pomocą eSigner CodeSignTool.

CodeSignTool to narzędzie wiersza poleceń, które jest odpowiednie do podpisywania dużej ilości danych i bezproblemowo integruje się z różnymi platformami CI/CD. Stanowi część eSigner: naszej usługi zdalnego podpisywania, która oferuje wydajne, bezpieczne i przyjazne dla użytkownika podejście do podpisywania kodu przedsiębiorstwa.

SSL.com's EV Podpisywanie kodu certyfikaty pomagają chronić Twój kod przed nieautoryzowanymi manipulacjami i naruszeniami bezpieczeństwa dzięki najwyższemu poziomowi weryfikacji i są dostępne za jedyne $ 249 rocznie.

KUP CERTYFIKAT PODPISANIA KODU SSL.COM EV

Utwórz plik Jenkins i zdefiniuj potok w edytorze kodu

pipeline { agent dowolne opcje { buildDiscarder(logRotator(numToKeepStr: "5")) disableConcurrentBuilds() }

Ustaw narzędzie .NET w edytorze kodu, konfigurując Jenkins

Kliknij Zarządzaj Jenkinsem zakładka na pulpicie Jenkins.

Przewiń stronę w dół i kliknij Globalna konfiguracja narzędzi.

Przewiń w dół i kliknij Instalacje .NET SDK.

Skopiuj wartość dla .NET SDK i wklej ją w edytorze kodu.

narzędzia { dotnetsdk "DOTNET_CORE_3.1.24" }

Przejdź do plugins.jenkins.io i zainstaluj wtyczkę .NET SDK

Pod Zarządzaj Jenkinsem w panelu, sprawdź Zarządzaj wtyczkami aby potwierdzić, czy zainstalowano wtyczkę .NET SDK.

Po potwierdzeniu, że wtyczka została zainstalowana, wróć do INSTALACJI .NET SDK i upewnij się, że ustawiono poprawną wersję i szczegóły wydania wtyczki .NET SDK. Przejdź, aby kliknąć Zapisz przycisk.

Ustaw zmienne środowiskowe w edytorze kodu

environment { NAZWA UŻYTKOWNIKA = credentials('es-username') // Nazwa użytkownika konta SSL.com. PASSWORD = credentials('es-password') // hasło do konta SSL.com. CREDENTIAL_ID = credentials('es-crendential-id') // Identyfikator poświadczeń do podpisywania certyfikatu. TOTP_SECRET = credentials('es-totp-secret') // OAuth TOTP Secret (https://www.ssl.com/how-to/automate-esigner-ev-code-signing) ENVIRONMENT_NAME = 'PROD' // SSL Nazwa środowiska .com. W przypadku konta demonstracyjnego może to być „TEST”, w przeciwnym razie będzie to „PROD” }

Znajdziesz wartości dla każdej zmiennej na pulpicie nawigacyjnym Jenkins pod Bezpieczeństwo> zarządzanie Poświadczeń.

 

Ustaw etapy tworzenia katalogu artefaktów, pobierania obrazu dockera, budowania platformy .NET i podpisywania kodu artefaktu

 

        1) Utwórz katalog artefaktów do przechowywania podpisanych i niepodpisanych plików artefaktów.
 stage('Utwórz katalog artefaktów') { kroki { sh 'mkdir ${OBSZAR ROBOCZY}/artifacts' sh 'mkdir ${OBSZAR ROBOCZY}/pakiety' } }
        2) Wyciągnij obraz Docker Codesigner z rejestru Github.
stage('Docker Pull Image') {steps { sh 'docker pull ghcr.io/sslcom/codesigner:latest' } }
        3) Zbuduj projekt lub rozwiązanie dotnet i wszystkie jego zależności. Po utworzeniu pliku dll lub exe skopiuj go do folderu „pakiety” w celu podpisania.
stage('Build Dotnet') { steps { sh 'dotnet build dotnet/HelloWorld.csproj -c Release' sh 'cp dotnet/bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${WORKSPACE}/packages/ HelloWorld.dll' } }
        4) Jest to krok, w którym utworzone pliki DLL (artefakty) zostaną podpisane za pomocą CodeSignTool.
stage('Podpisz i zapisz artefakt Dotnet Core DLL') {steps { sh 'docker run -i --rm --dns 8.8.8.8 --network host --volume ${OBSZAR ROBOCZY}/packages:/codesign/examples -- wolumin ${OBSZAR ROBOCZY}/artifacts:/codesign/output -e NAZWA UŻYTKOWNIKA=${NAZWA UŻYTKOWNIKA} -e HASŁO=${HASŁO} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e NAZWA_ŚRODOWISKA=${ ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:latest sign -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign/output' } post { always { archiveArtifacts artefakty: "artifacts/HelloWorld.dll", onlyIfSuccessful: true } } } } }

SSL.com's EV Podpisywanie kodu certyfikaty pomagają chronić Twój kod przed nieautoryzowanymi manipulacjami i naruszeniami bezpieczeństwa dzięki najwyższemu poziomowi weryfikacji i są dostępne za jedyne $ 249 rocznie.

KUP CERTYFIKAT PODPISANIA KODU SSL.COM EV

Utwórz repozytorium Github

Skopiuj każdy z komponentów polecenia push na Github.

Napisz polecenia w nowym terminalu w edytorze kodu, aby wypchnąć kod.

Po wypchnięciu kodu przejdź do swojego konta Github i skopiuj link URL swojego projektu.

Przejdź do swojego konta Jenkins i kliknij Utwórz pracę łącze.

Wybierz Rurociąg wielooddziałowy, ustaw nazwę dla swojego projektu i kliknij OK przycisk.

Pod Źródła branżowe, Wybierz git i wklej link URL swojego projektu na Github.

Przewiń w dół do Skanuj wyzwalacze potoku wielooddziałowego. Zaznacz pole dla Okresowo, jeśli nie uruchamiaj inaczej. Możesz wybrać 2 minut.

Kliknij Zapisz przycisk.

Wróć do swojego konta Jenkins, kliknij swój projekt i potwierdź, czy potok się rozpoczął

Kliknij swój projekt Jenkins i wybierz Skanuj teraz wielooddziałowy potok na pulpicie nawigacyjnym.

Kliknij Wyjście konsoli

Przewiń w dół i sprawdź, czy podpisywanie kodu powiodło się

Cały skrypt

Uwaga: Upewnij się, że poprawiłeś błędy typograficzne lub błędne podziały wierszy w skrypcie, aby proces podpisywania przebiegał płynnie.

Zdefiniuj rurociąg

pipeline { agent dowolne opcje { buildDiscarder(logRotator(numToKeepStr: "5")) disableConcurrentBuilds() }

Zainstaluj narzędzia do budowania

narzędzia { dotnetsdk "DOTNET_CORE_3.1.24" //https://plugins.jenkins.io/dotnet-sdk }

Utwórz zmienną środowiskową

environment { NAZWA UŻYTKOWNIKA = credentials('es-username') // Nazwa użytkownika konta SSL.com. PASSWORD = credentials('es-password') // hasło do konta SSL.com. CREDENTIAL_ID = credentials('es-crendential-id') // Identyfikator poświadczeń do podpisywania certyfikatu. TOTP_SECRET = credentials('es-totp-secret') // OAuth TOTP Secret (https://www.ssl.com/how-to/automate-esigner-ev-code-signing) ENVIRONMENT_NAME = 'PROD' // SSL Nazwa środowiska .com. W przypadku konta demonstracyjnego może to być „TEST”, w przeciwnym razie będzie to „PROD” }

Skrypt dla etapów budowania i podpisywania

Stages { // 1) Utwórz katalog artefaktów do przechowywania podpisanych i niepodpisanych plików artefaktów stage('Utwórz katalog artefaktów') { steps { sh 'mkdir ${WORKSPACE}/artifacts' sh 'mkdir ${WORKSPACE}/packages' } } / / 2) Wyciągnij obraz platformy Codesigner Docker z Github Registry stage('Docker Pull Image') { steps { sh 'docker pull ghcr.io/sslcom/codesigner:latest' } } // 3) Zbuduj projekt lub rozwiązanie dotnet i wszystkie jego zależności. // Po utworzeniu pliku dll lub exe skopiuj go do folderu „packages” w celu podpisania stage('Build Dotnet') { steps { sh 'dotnet build dotnet/HelloWorld.csproj -c Release' sh 'cp dotnet/bin/ Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${WORKSPACE}/packages/HelloWorld.dll' } } // 4) Jest to krok, w którym utworzone pliki DLL (artefakty) zostaną podpisane za pomocą CodeSignTool. stage('Podpisz i zapisz artefakt Dotnet Core DLL') {steps { sh 'docker run -i --rm --dns 8.8.8.8 --network host --volume ${OBSZAR ROBOCZY}/packages:/codesign/examples -- wolumin ${OBSZAR ROBOCZY}/artifacts:/codesign/output -e NAZWA UŻYTKOWNIKA=${NAZWA UŻYTKOWNIKA} -e HASŁO=${HASŁO} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e NAZWA_ŚRODOWISKA=${ ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:latest sign -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign/output' } post { always { archiveArtifacts artefakty: "artifacts/HelloWorld.dll", onlyIfSuccessful: true } } } } }
Możesz odwołać się do SSL.com Repozytorium Github, które zawiera kody źródłowe obrazu dokera i opisuje, jak go używać: https://github.com/SSLcom/ci-images 

Przykładowy potok Jenkinsa

Sprawdź przykładowy potok Jenkins, na którym utworzyliśmy https://github.com/SSLcom/codesigner-jenkins-sample

Inne przewodniki dotyczące integracji zdalnego podpisywania

Potrzebujesz niestandardowych rozwiązań? 

Dzięki naszej wiedzy eksperckiej i pięciogwiazdkowemu personelowi pomocy technicznej jesteśmy gotowi i chętni do współpracy z Tobą w zakresie niestandardowych rozwiązań lub rabatów na podpisywanie na dużą skalę na poziomie przedsiębiorstwa. Wypełnij poniższy formularz, a skontaktujemy się z Tobą.

Zapisz się do newslettera SSL.com

Nie przegap nowych artykułów i aktualizacji z SSL.com