Pilvekoodi allkirjastamise integreerimine GitHubi toimingutega

See juhendi artikkel näitab, kuidas eSigner on integreeritud GitHub Actionsiga automaatseks koodi allkirjastamiseks pideva integreerimise/pideva edastamise (CI/CD) seadistuses.

eSigner on meie pilvepõhine allkirjastamisplatvorm, mida usaldavad tarkvaraarendajad üle kogu maailma, et viia läbi ettevõtte koodi allkirjastamist, ilma et oleks vaja USB-märke või muud spetsiaalset riistvara.  Üks eSigneri komponente on CodeSignTool: privaatsuspõhine käsurea utiliit, mis on väga tõhus arendajatele, kes soovivad koodi allkirjastamist automatiseerida.  Järgmised jaotised näitavad, kuidas saate eSigner CodeSignTooli abil GitHubi toimingutes Java-koodi (Maven) allkirjastada.

SSL.com-d EV Koodiallkirjastamine sertifikaadid aitavad kaitsta teie koodi volitamata rikkumiste ja kompromisside eest kõrgeima valideerimistasemega ning on saadaval kõige vähem $ 249 aastas. Te saate ka kasutage oma EV koodi allkirjastamise sertifikaati suures ulatuses pilves, kasutades eSignerit.

TELLI NÜÜD

Kasutus

- nimi: Allkirjastage artefakt CodeSignTooliga

  kasutab: sslcom/actions-codesigner@develop

  kus:

  •      CodeSignTooli käsud:

     - get_credential_ids: kasutajaga seotud eSigner mandaadi ID-de loendi väljastamine.

     - credential_info: Mandaadi ID-ga seotud väljundvõti ja sertifikaadi teave.

     - sign: Märk ja ajatempli koodi objekt.

     - batch_sign: Mitme koodi objekti allkirjastamine ja ajatempel ühe OTP-ga.

     - hash: Arvutage räsi(d) ette hilisemaks kasutamiseks koos käsuga batch_hash_sign.

     - batch_sign_hash: räsikäsuga eelarvutatud räsi(de) allkirjastamine.

        käsk: kirjutama

 

  • SSL.com konto kasutajanimi.

         username: ${{secrets.ES_USERNAME}}

  •  SSL.com konto parool.

         password: ${{secrets.ES_PASSWORD}}

  • Mandaadi ID sertifikaadi allkirjastamiseks.

         credential_id: ${{secrets.CREDENTIAL_ID}}

         totp_secret: ${{secrets.ES_TOTP_SECRET}}

  • Allkirjastatava koodiobjekti tee.

          file_path: ${GITHUB_WORKSPACE}/test/src/build/HelloWorld.jar

  • Kataloog, kuhu kirjutatakse allkirjastatud koodiobjekt(id).

          output_path: ${GITHUB_WORKSPACE}/artifacts

 

Sisendid

  • kasutajanimi: SSL.com-i konto kasutajanimi. (Nõutud)
  • parool: SSL.com konto parool (nõutav)
  • mandaadi_id: sertifikaadi allkirjastamise mandaadi ID. Kui credential_id on välja jäetud ja kasutajal on ainult üks eSigneri koodi allkirjastamise sertifikaat, kasutab CodeSignTool vaikimisi seda. Kui kasutajal on rohkem kui üks koodi allkirjastamise sertifikaat, on see parameeter kohustuslik. (Nõutud)
  • totp_secret: OAuthi TOTP saladus. Üksikasjalikule teabele pääsete juurde aadressil https://ssl.com/how-to/automate-esigner-ev-code-signing (Nõutav)
  • faili teekond: allkirjastatava koodiobjekti tee. (Nõutud)
  • väljundi_tee: kataloog, kuhu kirjutatakse allkirjastatud koodiobjekt(id). Kui väljundi_tee jäetakse välja, kirjutatakse failitee määratud fail allkirjastatud failiga üle.

Java koodi (Maven) JAR-i allkirjastamise näidistöövoog

Valmistage ette töövoo komponendid

  1. Looge oma redaktoris Githubi kaust. Kaasake kaustaga töövood ja looge kausta alla yml-fail.
    1. Nimetage oma projekt ja kaasatud töövoo tüüp
    Nimi: Maven Build and Sign
     
    1. Käivitage see töövoog tõuke korral
    sisse: lükake
     
    1. Looge keskkonnamuutuja
    • Näidiste loetavamaks muutmiseks kasutatakse keskkonnamuutujaid. Näidistöövoo ülaltoodud ekraanipildil jäeti PROJECT_NAME, PROJECT_VERSION ja MAVEN_VERSION valikuliselt välja. Allkirjastamine võib jätkuda isegi nende väljajätmiste korral.
    env: PROJECT_NAME: HelloWorld PROJECT_VERSION: 0.0.1 MAVEN_VERSION: 3.8.5 JAVA_VERSION: 17
     
    1. Määratlege oma toimetaja töökohad
    töökohad: build-and-sign-jar:
     
    1. Käitage tööd Ubuntu Runneris
        töötab: ubuntu-latest
     
    1. Loo nimi. Kui töövoog käitatakse, siis see nimi logitakse.
      nimi: CodeSigner Javas koos Maveniga
     

Kirjeldage lähtekoodi kontrollimise, Java ja Maveni keskkonna seadistamise ning Artefaktide kataloogi loomise samme.

  1) Kontrollige lähtekoodi, et töövoog saaks sellele juurde pääseda.

   sammud: - kasutab: action/checkout@v2
 

  2) Seadistage Java ja Maven keskkond töövoo kasutamiseks.

    - nimi: installige Maven ja Java kasutab: s4u/setup-maven-action@v1.3.1 koos: java-version: '${{env.JAVA_VERSION}}' maven-version: '${{env.MAVEN_VERSION}}'

 

      3) Looge allkirjastatud ja allkirjastamata artefaktifailide salvestamiseks artefaktikataloog

 - nimi: Loo kataloogi kest: bash run: | mkdir ${GITHUB_WORKSPACE}/artefaktid mkdir ${GITHUB_WORKSPACE}/paketid

 

      4) Ehitage meisterprojekt või lahendus ja kõik selle sõltuvused.

      Pärast jar-faili loomist kopeerige allkirjastamiseks pakettide kausta

  • Selles kirjaliku allkirjastamise näite töövoos loodi mitu projektitüüpi. Seetõttu säilitati erinevate projektitüüpide faile, luues alamkaustad. Java projektide jaoks loodi alamkaust nimega 'java'. Ülaltoodud demo ekraanipildil ei olnud vaja luua alamkausta nimega "Java", nii et see ei sisaldunud skriptis.
 - nimi: Ehitage Java projekti kest: bash run: | mvn clean install -f java/pom.xml cp java/target/${{env.PROJECT_NAME}}-${{env.PROJECT_VERSION}}.jar ${GITHUB_WORKSPACE}/packages/${{env.PROJECT_NAME}}. purk
 

Kirjeldage allkirjastamise ja üleslaadimise tööde samme

  1. Allkirjatöö on samm, kus loodud JAR-failid (artefaktid) allkirjastatakse CodeSignTooliga.
 - nimi: Sign Artifact kasutab: sslcom/actions-codesigner@develop koos:

           Märgi ja ajatempli koodi objekt.

käsk: märk

           SSL.com konto kasutajanimi.

kasutajanimi: ${{secrets.ES_USERNAME}}

           SSL.com konto parool.

parool: ${{secrets.ES_PASSWORD}}

           Mandaadi ID sertifikaadi allkirjastamiseks.

mandaadi_id: ${{saladused.CREDENTIAL_ID}}

           OAuthi TOTP-salakood (https://ssl.com/how-to/automate-esigner-ev-code-signing)

totp_secret: ${{secrets.ES_TOTP_SECRET}}

           Allkirjastatava koodiobjekti tee. (DLL, JAR, EXE, MSI failid vb…)

  failitee: ${GITHUB_WORKSPACE}/packages/${{env.PROJECT_NAME}}.jar

           Kataloog, kuhu kirjutatakse allkirjastatud koodiobjekt(id).

väljundi_tee: ${GITHUB_WORKSPACE}/artefaktid

 

  1. Üleslaadimistöö on samm, kus teie töövoo artefaktid laaditakse üles, mis võimaldab teil tööde vahel andmeid jagada ja andmeid salvestada, kui töövoog on lõppenud
 - nimi: Laadi alla allkirjastatud failid kasutab: action/upload-artifact@v2 koos: nimega: ${{env.PROJECT_NAME}}.jar tee: ./artifacts/${{env.PROJECT_NAME}}.jar
 

Hankige Githubi turuplatsist ehitusartefakti üleslaadija

Vaadake üle oma kodeerimisskript

Kodeerimis-, allkirjastamis- ja üleslaadimistööde kodeerimisskript peaks üldiselt välja nägema nagu alloleval pildil. Parandage kindlasti skriptis kõik vead, nagu vale kirjapilt või vigased reavahetused, et allkirjastamisprotsess kulgeks tõrgeteta.

SSL.com-d EV Koodiallkirjastamine sertifikaadid aitavad kaitsta teie koodi volitamata rikkumiste ja kompromisside eest kõrgeima valideerimistasemega ning on saadaval kõige vähem $ 249 aastas. Te saate ka kasutage oma EV koodi allkirjastamise sertifikaati suures ulatuses pilves, kasutades eSignerit.

TELLI NÜÜD

Määratlege oma keskkonnamuutujad

Minge oma Githubi kontol oma projekti asukohta. Klõpsake nuppu Meetmete vahekaart. Klõpsake nupul Uus hoidla saladus nuppu, et asetada iga koodi allkirjastamisel nõutava keskkonnamuutuja väärtused.

Looge käsureal uus hoidla

Liikuge oma projekti asukohta Githubis ja kopeerige tõukekäsu iga komponent.

Lükka projekti

Kaasake oma koodiredaktorisse iga push-käsurida. Pärast lõpetamist lükatakse kood automaatselt Githubisse.

Oodake, kuni artefakt allkirjastatakse eSigner CodeSignTooliga

Laadige alla allkirjastatud fail

Selle üleslaadimiseks klõpsake allkirjastatud failil.

Märkus. Allkirjastamise sujuvaks kulgemiseks parandage kindlasti skriptis trükivead või ekslikud reavahetused.

Näidis Githubi toimingute torujuhtmest


Tutvuge Githubi toimingute torujuhtme näidisega, mille oleme loonud github.com/SSLcom/codesigner-github-sample  

Muud CI/CD kaugallkirjastamise integreerimise juhendid

Kas vajate kohandatud lahendusi? 

Tänu oma asjatundlikele teadmistele ja viietärnilisele tugipersonalile oleme valmis teiega koostööd tegema kohandatud lahenduste või ettevõtte tasemel suuremahuliste allkirjastamise allahindluste kallal. Täitke allolev vorm ja me võtame teiega ühendust.

Olge kursis ja turvaline

SSL.com on ülemaailmne küberturvalisuse liider, PKI ja digitaalsed sertifikaadid. Registreeruge, et saada valdkonna uusimaid uudiseid, näpunäiteid ja tooteteateid SSL.com.

SSL.com

Meile meeldiks teie tagasiside

Osalege meie küsitluses ja andke meile teada oma mõtted oma hiljutise ostu kohta.

Privaatsuse ülevaade
SSL.com

See veebisait kasutab küpsiseid, et saaksime pakkuda teile parimat võimalikku kasutajakogemust. Präänikuandmeid salvestatakse teie brauseris ja see täidab selliseid funktsioone nagu teie veebisaidile naasmisel teie äratundmine ja meie meeskonna abistamine, millised veebisaidi jaotised teile kõige huvitavamad ja kasulikud on.

Lisateabe saamiseks lugege meie lehte Präänik ja privaatsusavaldus.

Kolmanda osapoole küpsised

See veebisait kasutab Google Analytics & Statcounter anonüümse teabe, näiteks saidi külastajate arvu ja kõige populaarsemate lehtede, kogumiseks.

Nende küpsiste lubamine aitab meil oma veebisaiti paremaks muuta.

Näita detaile