Integracja podpisywania kodu w chmurze z BitBucket

To jest przewodnik po tym, jak narzędzie BitBucket CI/CD można zintegrować z narzędziem eSigner CodeSignTool w celu automatycznego podpisywania kodu.

CodeSignTool to narzędzie wiersza poleceń, które jest skuteczne w procesach zdalnego podpisywania iw pełni integruje się z różnymi platformami CI/CD. Jest częścią zestawu narzędzi eSigner — naszej usługi podpisywania kodu w chmurze, która umożliwia programistom korzystanie z intuicyjnej i bezpiecznej metody podpisywania kodu.

SSL.com's EV Podpisywanie kodu Certyfikaty pomagają chronić Twój kod przed nieautoryzowanym manipulowaniem i naruszeniem bezpieczeństwa z najwyższym poziomem walidacji i są dostępne za jedyne $ 249 rocznie. Można również używaj swojego certyfikatu EV Code Signing na dużą skalę w chmurze za pomocą eSigner.

ZAMÓW TERAZ

Ezmienne środowiskowe

  • USERNAME: Nazwa użytkownika konta SSL.com. (Wymagany)
  • HASŁO: Hasło do konta SSL.com (wymagane)
  • CREDENTIAL_ID: Identyfikator poświadczeń do podpisywania certyfikatu. Jeśli credential_id zostanie pominięty, a użytkownik ma tylko jeden certyfikat podpisywania kodu eSigner, CodeSignTool domyślnie to zrobi. Jeśli użytkownik ma więcej niż jeden certyfikat podpisywania kodu, ten parametr jest obowiązkowy. (Wymagany)
  • TOTP_SECRET: Klucz tajny TOTP protokołu OAuth. Możesz uzyskać dostęp do szczegółowych informacji na temat https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Wymagany)
  • ŚRODOWISKO_NAME : 'TEST' lub 'PROD' Środowisko. (Wymagany)

Wejścia

  • ścieżka_pliku_wejściowego: Ścieżka obiektu kodu do podpisania. (Wymagany)

  • ścieżka_katalogu_wyjściowego: Katalog, w którym zostaną zapisane obiekty z podpisanym kodem. Jeśli ścieżka_wyjściowa zostanie pominięta, plik określony w -ścieżka_pliku zostanie zastąpiony podpisanym plikiem.

Przykładowy przepływ pracy z podpisywaniem biblioteki DLL kodu .NET

potoki: domyślnie: - krok: # Do kroku można dodać nazwę, aby ekrany i raporty były bardziej czytelne i zrozumiałe. name: build-dotnet # Nazwa obrazu Dockera, który może zawierać adres URL rejestru, tag i obraz wartości skrótu: mcr.microsoft.com/dotnet/sdk:3.1-bullseye # Polecenia do wykonania w skrypcie kroku: # Utworzono katalogi dla artefaktów - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/packages # Kompilacja projektu dotnet z konfiguracją wydania - dotnet build dotnet/HelloWorld.csproj -c Wersja # Kopiowanie zbudowanych artefaktów do katalogu artefaktów - cp dotnet/bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${BITBUCKET_CLONE_DIR}/packages/HelloWorld.dll # Pliki utworzone przez krok do udostępnienia z następującymi artefaktami kroku: - packages/HelloWorld.dll - step : # Możesz dodać nazwę do kroku, aby ekrany i raporty były bardziej czytelne i zrozumiałe. name: sign-dotnet-artifacts # Usługi włączone dla step services: - docker # Polecenia do wykonania w skrypcie step: # Utworzono katalogi dla artefaktów - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/ packages # Naprawiono problem z uprawnieniami dotnet - chmod -R 777 ${BITBUCKET_CLONE_DIR}/packages # Docker Pull CodeSigner Docker Image - docker pull ghcr.io/sslcom/codesigner:latest # Podpisz artefakt za pomocą obrazu dokera CodeSigner - docker run -i --rm --dns 8.8.8.8 --volume ${BITBUCKET_CLONE_DIR}/packages:/codesign/examples --volume ${BITBUCKET_CLONE_DIR}/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 ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:najnowszy znak -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign /wynik

Utwórz nowe repozytorium na bitbucket.org

Wybierz opcje dla określonych pól:

a) Poziom dostępu: zaznacz pole wyboru Repozytorium prywatne

b) Czy dołączyć plik README? Nie

c) Domyślna nazwa gałęzi: main

d) dołączyć .gitignore? Nie

Utwórz nowy projekt w swoim edytorze kodu

W ramach nowego projektu utwórz plik .yml

Napisz skrypt dla etapu budowania

Napisz scenariusz dla etapu znaku

SSL.com's EV Podpisywanie kodu Certyfikaty pomagają chronić Twój kod przed nieautoryzowanym manipulowaniem i naruszeniem bezpieczeństwa z najwyższym poziomem walidacji i są dostępne za jedyne $ 249 rocznie. Można również używaj swojego certyfikatu EV Code Signing na dużą skalę w chmurze za pomocą eSigner.

ZAMÓW TERAZ

Pełny skrypt:

potoki: domyślnie: - krok: # Do kroku można dodać nazwę, aby ekrany i raporty były bardziej czytelne i zrozumiałe. name: build-dotnet # Nazwa obrazu Dockera, który może zawierać adres URL rejestru, tag i obraz wartości skrótu: mcr.microsoft.com/dotnet/sdk:3.1-bullseye # Polecenia do wykonania w skrypcie kroku: # Utworzono katalogi dla artefaktów - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/packages # Kompilacja projektu dotnet z konfiguracją wydania - dotnet build dotnet/HelloWorld.csproj -c Wersja # Kopiowanie zbudowanych artefaktów do katalogu artefaktów - cp dotnet/bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${BITBUCKET_CLONE_DIR}/packages/HelloWorld.dll # Pliki utworzone przez krok do udostępnienia z następującymi artefaktami kroku: - packages/HelloWorld.dll - step : # Możesz dodać nazwę do kroku, aby ekrany i raporty były bardziej czytelne i zrozumiałe. name: sign-dotnet-artifacts # Usługi włączone dla step services: - docker # Polecenia do wykonania w skrypcie step: # Utworzono katalogi dla artefaktów - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/ packages # Naprawiono problem z uprawnieniami dotnet - chmod -R 777 ${BITBUCKET_CLONE_DIR}/packages # Docker Pull CodeSigner Docker Image - docker pull ghcr.io/sslcom/codesigner:latest # Podpisz artefakt za pomocą obrazu dokera CodeSigner - docker run -i --rm --dns 8.8.8.8 --volume ${BITBUCKET_CLONE_DIR}/packages:/codesign/examples --volume ${BITBUCKET_CLONE_DIR}/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 ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:najnowszy znak -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign /wynik

Zdefiniuj wszystkie informacje o repozytorium

Kliknij kartę Ustawienia repozytorium

Pod RUROCIĄGI, kliknij Ustawienia, aby włączyć potok

Następnie, nadal w obszarze RUROCIĄGI, kliknij Zmienne repozytorium.

Umieść nazwę i wartość dla każdej zmiennej repozytorium

Przekaż swój kod do Bitbucket

Na Źródło zakładka menu BitBucket, ustaw adres URL repozytorium na https

Napisz polecenie dla git zdalnie dodaj pochodzenie i wklej link https swojego projektu bitbucket, a następnie plik git push komenda

Napisz git push –u origin master polecenie

Odśwież Bitbucket, aby zobaczyć wypchnięty kod

Odśwież Bitbucket i kliknij Rurociągi patka. Etap budowania i podpisywania rozpocznie się automatycznie.

Sprawdź, czy etap kompilacji zakończył się pomyślnie

Sprawdź, czy etap podpisywania zakończył się pomyślnie

Przykładowy potok BitBucket

Sprawdź potok BitBucket, na którym utworzyliśmy https://github.com/SSLcom/codesigner-bitbucket-przyklad

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ą.

Twitter
Facebook
LinkedIn
Reddit
E-mail

Bądź na bieżąco i bezpiecznie

SSL.com jest światowym liderem w dziedzinie cyberbezpieczeństwa, PKI i certyfikaty cyfrowe. Zarejestruj się, aby otrzymywać najnowsze wiadomości branżowe, wskazówki i ogłoszenia o produktach od SSL.com.

Będziemy wdzięczni za Twoją opinię

Weź udział w naszej ankiecie i daj nam znać, co myślisz o swoim ostatnim zakupie.