Használat
- név: Írja alá a műterméket a CodeSignTool segítségével
használ: sslcom/actions-codesigner@develop
val vel:
- CodeSignTool parancsok:
- get_credential_ids
: A felhasználóhoz társított eSigner hitelesítő azonosítók listájának megjelenítése.
- credential_info
: A hitelesítő adatok azonosítójához kapcsolódó kimeneti kulcs és tanúsítvány adatai.
- sign
: Jel és időbélyegző kód objektum.
- batch_sign
: Több kódobjektum aláírása és időbélyegzése egy OTP-vel.
- hash
: Előzetesen kiszámítja a hash(ek)et későbbi használatra a batch_hash_sign paranccsal.
- batch_sign_hash
: A hash paranccsal előre kiszámított hash(ek) aláírása.
parancs: <p></p>
- SSL.com fiók felhasználóneve.
username: ${{secrets.ES_USERNAME}}
- SSL.com fiók jelszava.
password: ${{secrets.ES_PASSWORD}}
- Hitelesítési adat azonosító a tanúsítvány aláírásához.
credential_id: ${{secrets.CREDENTIAL_ID}}
- OAuth TOTP titkos (https://www.ssl.com/how-to/automate-esigner-ev-code-signing)
totp_secret: ${{secrets.ES_TOTP_SECRET}}
- Az aláírandó kódobjektum elérési útja.
file_path: ${GITHUB_WORKSPACE}/test/src/build/HelloWorld.jar
- Könyvtár, ahová az aláírt kódobjektumok íródnak.
output_path: ${GITHUB_WORKSPACE}/artifacts
Bemenetek
- felhasználónév: SSL.com-fiók felhasználóneve. (Kívánt)
- jelszó: SSL.com fiók jelszava (kötelező)
- hitelesítő_azonosító: Hitelesítési adat azonosító a tanúsítvány aláírásához. Ha a credential_id kimarad, és a felhasználónak csak egy eSigner kód aláíró tanúsítványa van, a CodeSignTool alapértelmezés szerint ezt fogja használni. Ha a felhasználónak egynél több kódaláíró tanúsítványa van, akkor ez a paraméter kötelező. (Kívánt)
- totp_secret: OAuth TOTP titkos. Részletes információkat a címen érhet el https://www.ssl.com/how-to/automate-esigner-ev-code-signing (Kötelező)
- fájl elérési út: Az aláírandó kódobjektum elérési útja. (Kívánt)
- kimeneti út: Könyvtár, ahová az aláírt kódobjektumok íródnak. Ha a kimeneti_útvonal kimarad, a -file_path paraméterben megadott fájl felül lesz írva az aláírt fájllal.
Java kód (Maven) JAR aláírási példa munkafolyamat
Készítse elő a munkafolyamat összetevőit
- Hozzon létre egy Github mappát a szerkesztőben. Foglaljon bele munkafolyamatokat a mappába, és hozzon létre egy yml fájlt a mappa alatt.
- Nevezze meg projektjét és az érintett munkafolyamat típusát
Név: Maven Build and Sign
- Indítsa el ezt a munkafolyamatot egy lenyomással
rá: nyomni
- Hozzon létre egy környezeti változót
- Környezeti változókat használnak a minták olvashatóbbá tételére. A példa munkafolyamatának fenti képernyőképen a PROJECT_NAME, a PROJECT_VERSION és a MAVEN_VERSION opcionálisan kimaradt. Az aláírás még ezekkel a kihagyásokkal is folytatódhat.
env: PROJECT_NAME: HelloWorld PROJECT_VERSION: 0.0.1 MAVEN_VERSION: 3.8.5 JAVA_VERSION: 17
- Határozza meg a munkákat a szerkesztőben
munkák: build-and-sign-jar:
- Futtassa a feladatot az Ubuntu Runneren
futó: ubuntu-latest
- Hozzon létre egy nevet. Amikor a munkafolyamat fut, ez a név kerül naplózásra.
név: CodeSigner Java-n a Maven-nel
Vázolja fel a forráskód lekérdezésének, a Java és Maven környezet beállításának, valamint az Artifact Directory létrehozásának lépéseit.
1) Nézze meg a forráskódot, hogy a munkafolyamat hozzáférhessen.
lépések: - használja: action/checkout@v2
2) Állítsa be a Java és a Maven környezetet a munkafolyamathoz.
- név: A Maven és a Java telepítése a következőt használja: s4u/setup-maven-action@v1.3.1 with: java-version: '${{env.JAVA_VERSION}}' maven-version: '${{env.MAVEN_VERSION}}'
3) Hozzon létre Műtermékkönyvtárat az aláírt és aláíratlan műtermékfájlok tárolásához
- név: Címtár létrehozása shell: bash run: | mkdir ${GITHUB_WORKSPACE}/termékek mkdir ${GITHUB_WORKSPACE}/csomagok
4) Építsen egy maven projektet vagy megoldást és annak összes függőségét.
A jar fájl létrehozása után másolja a "packes" mappába aláíráshoz
- Ebben az írásos aláírási példa munkafolyamatban több projekttípus jött létre. Ez az oka annak, hogy a különböző projekttípusok fájljait almappák létrehozásával tárolták. A Java projektekhez egy „java” nevű almappa jött létre. A fenti bemutató képernyőképen nem kellett létrehozni egy „java” nevű almappát, így ez nem szerepelt a szkriptben.
- név: Build Java Project shell: 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}}. befőttes üveg
Vázolja fel az aláírási és feltöltési feladatok lépéseit
- Az aláírási feladat az a lépés, ahol a létrehozott JAR (termékek) fájlokat a CodeSignTool aláírja.
- név: A Sign Artifact a következőt használja: sslcom/actions-codesigner@develop with:
Jel és időbélyeg kód objektum.
parancs: jel
SSL.com fiók felhasználóneve.
felhasználónév: ${{secrets.ES_USERNAME}}
SSL.com fiók jelszava.
jelszó: ${{secrets.ES_PASSWORD}}
Hitelesítési adat azonosító a tanúsítvány aláírásához.
hitelesítési_azonosító: ${{titok.CREDENTIAL_ID}}
OAuth TOTP titkos (https://www.ssl.com/how-to/automate-esigner-ev-code-signing)
totp_secret: ${{secrets.ES_TOTP_SECRET}}
Az aláírandó kódobjektum elérési útja. (DLL, JAR, EXE, MSI fájlok vb…)
fájl_útvonala: ${GITHUB_WORKSPACE}/packages/${{env.PROJECT_NAME}}.jar
Könyvtár, ahová az aláírt kódobjektumok íródnak.
kimeneti_útvonal: ${GITHUB_WORKSPACE}/termékek
- A feltöltési feladat az a lépés, ahol a munkafolyamatból származó műtermékek feltöltésre kerülnek, lehetővé téve az adatok megosztását a feladatok között, és az adatok tárolását a munkafolyamat befejezése után
- név: Az aláírt fájlok feltöltése a következőt használja: action/upload-artifact@v2 with: name: ${{env.PROJECT_NAME}}.jar elérési út: ./artifacts/${{env.PROJECT_NAME}}.jar
Szerezzen be egy build-műtermék-feltöltőt a Github Marketplace-ről
Tekintse át a kódolási szkriptet
Összességében a tömörítési, aláírási és feltöltési feladatok kódolási szkriptjének úgy kell kinéznie, mint az alábbi képen. Az aláírási folyamat zökkenőmentes lebonyolítása érdekében mindenképpen javítsa ki a hibákat, például a hibás helyesírást vagy a hibás sortöréseket a szkriptben.
Határozza meg a környezeti változókat
Menjen a projekt helyére a Github-fiókjában. Kattints a Hozzászólások fület. Kattints a Új adattár titka gombot a kód aláírásához szükséges egyes környezeti változók értékeinek elhelyezéséhez.
Hozzon létre egy új tárolót a parancssorban
Menjen a projekt helyére a Githubon, és másolja ki a push parancs minden összetevőjét.
Nyomja meg a projektet
Minden push parancssort tartalmazzon a kódszerkesztőben. A befejezést követően a kód automatikusan megjelenik a Githubon.
Várja meg, amíg a műterméket aláírja az eSigner CodeSignTool
Töltse fel az aláírt fájlt
Kattintson az aláírt fájlra a feltöltéshez.
Minta Github Actions Pipeline
Tekintse meg az általunk létrehozott minta Github Actions folyamatot github.com/SSLcom/codesigner-github-sample
Egyéb CI/CD távoli aláírás integrációs útmutatók
- Cloud Code Signing integráció CircleCI-vel
- Cloud Code Signing integráció a GitLab CI-vel
- Cloud Code Signing integráció a Jenkins CI-vel
- Cloud Code Signing integráció a Travis CI-vel
- Cloud Code Signing integráció az Azure DevOps szolgáltatással
- Felhőkód-aláíró automatizálás CI/CD szolgáltatásokkal
Egyedi megoldásokra van szüksége?
Szakértői tudásunkkal és ötcsillagos támogató munkatársainkkal készen állunk arra, hogy együttműködjünk Önnel az egyedi megoldásokon vagy a vállalati szintű, nagy volumenű aláírási kedvezményeken. Töltse ki az alábbi űrlapot és felvesszük Önnel a kapcsolatot.