Azure DevOps Bulut İmzalama Entegrasyon Kılavuzu

Bu, otomatik kod imzalama gerçekleştirmek için Azure DevOps'un eSigner CodeSignTool ile nasıl tümleştirilebileceğine ilişkin bir kılavuzdur.

CodeSignTool, bulut kod imzalama işlemleri için uygun olan ve çeşitli CI/CD platformlarıyla sorunsuz bir şekilde bütünleşen bir komut satırı yardımcı programıdır. eSigner'ın bir parçasını oluşturur: kod imzalamaya verimli, güvenli ve kullanıcı dostu bir yaklaşım sunan uzaktan imzalama hizmetimiz.

SSL.com EV Kod İmzalama sertifikalar, kodunuzu yetkisiz kurcalamaya karşı korumaya yardımcı olur ve en yüksek düzeyde doğrulama ile taviz verir ve en az düzeyde kullanılabilir. Yılda $ 249. Ayrıca şunları da yapabilirsiniz EV Kod İmzalama sertifikanızı geniş ölçekte kullanın eSigner kullanarak bulutta.

ŞİMDİ SİPARİŞ VER

Ortam Değişkenleri

  • KULLANICI ADI: SSL.com hesabı kullanıcı adı. (Gerekli)
  • ŞİFRE: SSL.com hesap şifresi (Gerekli)
  • KİMLİK_KİMLİĞİ: İmza sertifikası için kimlik bilgisi. credential_id atlanırsa ve kullanıcının yalnızca bir eSigner kod imzalama sertifikası varsa, CodeSignTool varsayılan olarak bunu ayarlar. Kullanıcının birden fazla kod imzalama sertifikası varsa bu parametre zorunludur. (Gerekli)
  • TOTP_SECRET: OAuth TOTP Gizli. adresinden detaylı bilgilere ulaşabilirsiniz. https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Gereklidir)
  • ENVIRONMENT_NAME : 'TEST' veya 'PROD' Ortamı. (Gerekli)

 

Girdiler

  • girdi_dosya_yolu: İmzalanacak kod nesnesinin yolu. (Gerekli)
  • çıktı_dir_yolu: İmzalı kod nesnesinin/nesnelerinin yazılacağı dizin. output_path atlanırsa, -file_path içinde belirtilen dosyanın üzerine imzalı dosya yazılır.

Visualstudio.com'da bir proje oluşturun

Kod düzenleyicinizde yeni bir .yml dosyası oluşturun

Entegrasyon tetikleyicilerini ve ortam değişkenlerini ayarlayın

Sürekli entegrasyon tetikleyicileri

tetik:

  - Yok

 

Genel olarak ortam değişkenlerini tanımlar. İş seviyesi özelliği, genel değişkenleri geçersiz kılar

değişkenleri:

  buildConfiguration: 'Yayın'

İşleri aşamalar halinde gruplandırın

Yapım aşaması için adımları yazın. Bir aşamadaki tüm işler, bir sonraki aşama yürütülmeden önce tamamlanmalıdır.

aşamaları:

  – aşama: inşa

    # İş akışı çalıştığında, günlüğe kaydedilen ad budur

    displayName: Derleme

    Meslekler:

      - Görev:

        havuz:

           Windows VM'lerinde işi çalıştır

          vmImage: 'en son pencereler'

        adım:

           Dotnet 6.0.x'i yükleyin

        – görev: UseDotNet@2

          displayName: '.NET Core SDK'yı yükleyin'

          girişler:

            sürüm: '6.0.x'

            performMultiLevelLookup: doğru

            includePreviewVersions: doğru

       

            Dotnet projesini geri yükle

        – görev: DotNetCoreCLI@2

          displayName: Geri Yükle

          girişler:

            komut: 'geri yükle'

 

           Sürüm yapılandırmasıyla dotnet projesi oluşturun

        – görev: DotNetCoreCLI@2

          displayName: Derleme

          girişler:

            komut: inşa

            projeler: HelloWorld.csproj

            argümanlar: '–configuration $(buildConfiguration)'

 

           İmzalı yapılar için dizinler oluşturun

        – powershell: Yeni Öğe -ItemType Dizini -Yol ./artifacts

          displayName: 'Yapılar için oluşturulan dizinler'

 

           İmzalı paketler için dizinler oluşturun

        – powershell: New-Item -ItemType Directory -Path ./packages

          displayName: 'Paketler için oluşturulan dizinler'

 

           Yapıtı imza yolu olacak şekilde kopyalayın

        – powershell: Copy-Item ./bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll -Destination ./packages/HelloWorld.dll

          displayName: "Yerleşik yapıları paketler dizinine kopyalayın"

 

           İmzalama işini kullanmak için yapıyı kaydedin

        – görev: PublishBuildArtifacts@1

          displayName: 'İndirmek için imzalanacak yapıyı kaydedin'

          girişler:

            pathtoPublish: ./packages/HelloWorld.dll

            yapıtAdı: HelloWorld.dll

Sign aşaması için adımları yazın

– aşama: İşaret

    # İş akışı çalıştığında, günlüğe kaydedilen ad budur

    görünenAdı: İmzala

    Meslekler:

    - Görev:

      havuz:

         Ubuntu VM'lerinde işi çalıştır

        vmImage: “Ubuntu-en son”

      adım:

         İmzalı yapılar için dizinler oluşturun

      – komut dosyası: mkdir -p ./artifacts && mkdir -p ./packages

        displayName: "Yapılar ve paketler için oluşturulan dizinler"

 

         İmzalanacak eseri indirin

      – görev: DownloadPipelineArtifact@2

        girişler:

          yapı: HelloWorld.dll

          indirme Yolu: ./packages

 

         Docker 17.09.0-ce'yi yükleyin

      – görev: DockerInstaller@0

        displayName: Docker Yükleyici

        girişler:

          dockerSürüm: 17.09.0-ce

          yayın Türü: kararlı

 

         Docker Çekme CodeSigner Docker Görüntüsü

      – komut dosyası: docker pull ghcr.io/sslcom/codesigner:latest

        displayName: 'Docker Pull CodeSigner Docker Image'

         CodeSigner liman işçisi görüntüsüyle yapıyı imzalayın

      – komut dosyası: docker çalıştırması -i –rm –dns 8.8.8.8 –ağ ana bilgisayarı –hacim $PWD/paketler:/codesign/examples –volume $PWD/artifacts:/codesign/output

                -e KULLANICI ADI=$(KULLANICI ADI) -e ŞİFRE=$(ŞİFRE) -e CREDENTIAL_ID=$(CREDENTIAL_ID) -e TOTP_SECRET=$(TOTP_SECRET)

Parola özel karakterler içeriyorsa, tırnak içinde olmalıdır.

                -e ENVIRONMENT_NAME=$(ENVIRONMENT_NAME) ghcr.io/sslcom/codesigner:latest işareti -input_file_path=/codesign/examples/HelloWorld.dll

                -output_dir_path=/codesign/output

        displayName: 'CodeSigner liman işçisi görüntüsüyle yapıyı imzala'

 

         İndirmek için imzalı yapıyı kaydet

      – görev: PublishBuildArtifacts@1

        displayName: 'İndirmek için imzalı yapıyı kaydet'

        girişler:

          pathtoPublish: ./artifacts/HelloWorld.dll

          yapıtAdı: HelloWorld.dll

Yeni bir .gitignore dosyası oluşturun

Yazın:

çöp kutusu

obj

.vs kodu

Mesaj çubuğuna Created pipe.yml yazın ve Işlemek düğmesine tıklayın

SSL.com EV Kod İmzalama sertifikalar, kodunuzu yetkisiz kurcalamaya karşı korumaya yardımcı olur ve en yüksek düzeyde doğrulama ile taviz verir ve en az düzeyde kullanılabilir. Yılda $ 249. Ayrıca şunları da yapabilirsiniz EV Kod İmzalama sertifikanızı geniş ölçekte kullanın eSigner kullanarak bulutta.

ŞİMDİ SİPARİŞ VER

Tıklamak için devam edin Değişiklikleri Senkronize Et düğmesine tıklayın

Visualstudio.com'a gidin ve tıklayın Dinlenme gösterge panelinde

yml dosyasını görmek için sayfayı yenileyin

Tıkla Boru Hatları gösterge panelinde

Ardından, tıklayın İşlem Hattı Oluştur

Azure Repos Git'e tıklayın

YAML dosyanızı seçin

Tıkla Değişkenler düğmesinin ardından Yeni değişken

Her ortam değişkeni için değeri yerleştirin ve OK düğmesine tıklayın

Her bir değişkeni eklemeye devam etmek için + işaretini tıklayın

Tüm değişkenleri yerleştirdikten sonra işlem hattınızı oluşturmaya devam edin

İşlem hattınızı çalıştırın

Tıkla Boru Hatları gösterge tablosunda. İşlem hattınızdaki üç noktayı (daha fazla seçenek) tıklayın. Tıklamak İşlem hattını çalıştır. Sonunda, tıklayın koşmak düğmesine basın.

Oluşturma aşamasını başlatmak için Oluştur'a tıklayın

Oluşturma aşamasındaki her işin başarılı olup olmadığını kontrol edin

yanındaki açılır oku tıklayın İş her yapı işinin durumunu görmek için

Tıklayarak İmza aşamasını başlatın. İş

İmzalama sürecindeki her adımın başarılı olup olmadığını kontrol edin

Hem oluşturma hem de imzalama aşamalarının başarılı olup olmadığını iki kez kontrol edin

Referans edebilirsiniz SSL.com Docker görüntüsünün kaynak kodlarını içeren ve nasıl kullanılacağını açıklayan Github deposu: https://github.com/SSLcom/ci-images 

Örnek Azure DevOps İşlem Hattı

Üzerinde oluşturduğumuz örnek Azure DevOps ardışık düzenine göz atın github.com/SSLcom/codesigner-azuredevops-sample

Diğer Uzaktan İmzalama Entegrasyon Kılavuzları

Özel Çözümlere mi ihtiyacınız var? 

Uzman bilgi birikimimiz ve beş yıldızlı destek ekibimizle, özel çözümler veya kurumsal düzeyde yüksek hacimli imza indirimleri konusunda sizinle birlikte çalışmaya hazır ve istekliyiz. Aşağıdaki formu doldurun, sizinle iletişime geçelim.

Twitter
Facebook
LinkedIn
Reddit
e-posta

Haberdar Olun ve Güvende Kalın

SSL.com Siber güvenlik alanında küresel bir lider olan PKI ve dijital sertifikalar. En son sektör haberlerini, ipuçlarını ve ürün duyurularını almak için kaydolun SSL.com.

Geri bildiriminizi almak isteriz

Anketimize katılın ve son satın alma işleminizle ilgili düşüncelerinizi bize bildirin.