SSL.com

การผสานรวมการเซ็นชื่อรหัสบนคลาวด์กับ Travis CI

บทความนี้แสดงวิธีการลงนามโค้ดอัตโนมัติบน Travis CI โดยการผสานรวม eSigner CodeSignTool เข้ากับไปป์ไลน์ของคุณ  eSigner เป็นแพลตฟอร์มการลงนามโค้ดจากระยะไกลของเราซึ่งมีระดับความปลอดภัยเท่ากับโทเค็น USB และ HSMS แบบเครือข่าย แต่มีประสิทธิภาพและใช้งานง่ายกว่า  ส่วนหนึ่งของชุดเครื่องมือ eSigner คือ CodeSignTool: ยูทิลิตีบรรทัดคำสั่งที่ปลอดภัยซึ่งเหมาะสำหรับการลงนามรหัสองค์กรในสภาพแวดล้อม CI/CD ต่างๆ รวมถึง Travis
SSL.com ของ EV การลงรหัส ใบรับรองจะช่วยปกป้องรหัสของคุณจากการปลอมแปลงโดยไม่ได้รับอนุญาตและประนีประนอมกับการตรวจสอบระดับสูงสุด และมีให้ในราคาเพียง $ 249 al año. คุณยังสามารถ ใช้ใบรับรองการลงนามรหัส EV ของคุณในขนาดต่างๆ ในระบบคลาวด์โดยใช้ eSigner

ORDER NOW

ตัวแปรสภาพแวดล้อม

ปัจจัยการผลิต

Java Code (Maven) JAR Signing ตัวอย่างเวิร์กโฟลว์

สร้างโครงการ

ภายใต้โครงการสร้างไฟล์สำหรับ Travis

กำหนดองค์ประกอบของเวิร์กโฟลว์

  1. วางสถาปัตยกรรม CPU เพื่อรันงานบน

ซุ้มประตู: amd64

  1. ภาษาเริ่มต้นเพื่อเรียกใช้การทดสอบใน

ภาษา: java

  1. ระบุระบบปฏิบัติการที่จะรันงานบน

ระบบปฏิบัติการ: linux

  1. เขียนการกระจาย Ubuntu ที่จะใช้

dist: ไบโอนิค

  1. กำหนดตัวแปรสภาพแวดล้อมทั่วโลก คุณสมบัติระดับงานแทนที่ตัวแปรส่วนกลาง

สิ่งแวดล้อม:

  ทั่วโลก:

    – PROJECT_NAME="สวัสดีโลก"

    – PROJECT_VERSION =”0.0.1″

    – TERM = ใบ้

    – ENVIRONMENT_NAME=”ทดสอบ”

  1. ระบุลำดับของขั้นตอน งานทั้งหมดในสเตจเดียวต้องทำให้เสร็จก่อนดำเนินการสเตจถัดไป

ขั้นตอน:

  - สร้าง

  - เข้าสู่ระบบ

ร่างขั้นตอนการสร้าง  

งาน:

  รวมถึง:

        – เวที: สร้าง

  1. ชื่องาน

      ชื่อ: build-maven

  1. การกระจาย Ubuntu ที่จะใช้

      dist: ไบโอนิค

  1. ใช้คำสั่ง docker สำหรับการลงนาม  

      บริการ:

        – นักเทียบท่า

  1. ใช้ dotnet-cli เพื่อสร้างโครงการ

      ภาษา: java

  1. เวอร์ชัน Java เพื่อสร้างโครงการ

      jdk:

      – oraclejdk17

  1. แคช m2 ไดเรกทอรีเพื่อเพิ่มความเร็ว

      แคช:

        ไดเรกทอรี:

        – $บ้าน/.m2

  1. เขียนสคริปต์ Before เพื่อรันก่อนสร้างโครงการ

      before_script:

        # สร้างไดเรกทอรีสำหรับสิ่งประดิษฐ์

        – mkdir -p ${TRAVIS_BUILD_DIR}/สิ่งประดิษฐ์

        – mkdir -p ${TRAVIS_BUILD_DIR}/แพ็คเกจ

        # ตั้งค่าตัวเลือกการสร้าง Maven

        – ส่งออก MAVEN_CLI_OPTS =”–batch-mode –errors –fail-at-end –show-version -DinstallAtEnd=true -DdeployAtEnd=true”

  1. เขียนสคริปต์เพื่อสร้างโครงการ

      สคริปต์:

        # สร้างโครงการ Maven ด้วยตัวเลือก Maven

        – mvn $MAVEN_CLI_OPTS ติดตั้งใหม่ทั้งหมด -f java/pom.xml

         # คัดลอกสิ่งประดิษฐ์ที่สร้างขึ้นไปยังไดเรกทอรีสิ่งประดิษฐ์

        – ซีพี java/target/${PROJECT_NAME}-${PROJECT_VERSION}.jar ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar

     

  1. ร่างวิธีการระบุรายการไฟล์และไดเร็กทอรีที่ควรแนบไปกับงานหากทำสำเร็จ

      พื้นที่ทำงาน:

        สร้าง:

          ชื่อ: maven-jar-artifacts

          เส้นทาง:

            # บันทึกสิ่งประดิษฐ์เพื่อใช้ลงนามงาน

            – ${TRAVIS_BUILD_DIR}/packages/${PROJECT_NAME}.jar

ร่างขั้นตอนป้าย

 – เวที: ป้าย

  1. เขียนชื่องาน

      ชื่อ: sign-jar-file

  1. วางการแจกจ่าย Ubuntu เพื่อใช้

      dist: ไบโอนิค

  1. ใช้คำสั่ง Docker ในการเซ็นชื่อ  

      บริการ:

        – นักเทียบท่า

     

  1. กำหนดตัวแปรสภาพแวดล้อมสำหรับงานเฉพาะ

      สิ่งแวดล้อม:

        คำสั่ง=”สัญญาณ”

  1. ใช้ dotnet-cli เพื่อสร้างโครงการ

      ภาษา: java

  1. เวอร์ชัน Java เพื่อสร้างโครงการ

      jdk:

      – oraclejdk17

  1. ก่อนรันสคริปต์ก่อนสร้างโครงการ

      before_script:

        # สร้างไดเรกทอรีสำหรับสิ่งประดิษฐ์

        – mkdir -p ${TRAVIS_BUILD_DIR}/สิ่งประดิษฐ์

        – mkdir -p ${TRAVIS_BUILD_DIR}/แพ็คเกจ

     

  1. สคริปต์สำหรับสร้างโครงการ

      สคริปต์:

        # Docker Pull CodeSigner ภาพนักเทียบท่า

        – นักเทียบท่าดึง ghcr.io/sslcom/codesigner:latest

        # ลงนามสิ่งประดิษฐ์ด้วย CodeSigner Docker image

        – docker run -i –rm –dns 8.8.8.8 – โฮสต์เครือข่าย – ปริมาณ ${TRAVIS_BUILD_DIR}/packages:/codesign/examples

          –ปริมาณ ${TRAVIS_BUILD_DIR}/artifacts:/codesign/output

          -e USERNAME=${USERNAME} -e รหัสผ่าน=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET}

          -e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:latest ${COMMAND}

          -input_file_path=/codesign/examples/${PROJECT_NAME}.jar -output_dir_path=/codesign/output

  1. ใช้เพื่อระบุรายการไฟล์และไดเร็กทอรีที่ควรแนบไปกับงานหากทำสำเร็จ

      พื้นที่ทำงาน:

        ใช้:

          – maven-jar-สิ่งประดิษฐ์

        สร้าง:

          ชื่อ: ลงนาม jar-file

          เส้นทาง:

            # บันทึกสิ่งประดิษฐ์ที่ลงนาม

            – ${TRAVIS_BUILD_DIR}/artifacts/${PROJECT_NAME}.jar

SSL.com ของ EV การลงรหัส ใบรับรองจะช่วยปกป้องรหัสของคุณจากการปลอมแปลงโดยไม่ได้รับอนุญาตและประนีประนอมกับการตรวจสอบระดับสูงสุด และมีให้ในราคาเพียง $ 249 al año. คุณยังสามารถ ใช้ใบรับรองการลงนามรหัส EV ของคุณในขนาดต่างๆ ในระบบคลาวด์โดยใช้ eSigner

ORDER NOW

กำหนดตัวแปรสภาพแวดล้อม

ไปที่ Travis แล้วคลิก การตั้งค่า ปุ่ม

เพิ่มค่าสำหรับแต่ละตัวแปร

เลื่อนลงไปที่ ตัวแปรสภาพแวดล้อม ส่วนแล้วคลิกปุ่มเพิ่มเพื่อเพิ่มค่าให้กับตัวแปรแต่ละตัว

สร้าง Github repo

ค้นหาคำสั่งพุชบน Github

เขียนคำสั่งพุชที่เทอร์มินัลบนตัวแก้ไขของคุณ

รอให้งานสร้างเสร็จ

บน Travis งานสร้างควรเริ่มต้นโดยอัตโนมัติหลังจากที่คุณกดรหัสแล้ว

เริ่มขั้นตอนการเซ็นโค้ด

คลิก ลงชื่อ ส่วนสำหรับ CodeSignTool เพื่อเริ่มกระบวนการลงนาม

รอให้เครื่องเสมือนทำการบูทเสร็จ

ยืนยันว่าการเซ็นรหัสสำเร็จหรือไม่

คุณสามารถอ้างถึง SSL.com ที่เก็บ Github ซึ่งมีซอร์สโค้ดของอิมเมจนักเทียบท่าและอธิบายวิธีใช้งาน: https://github.com/SSLcom/ci-images

ตัวอย่าง Travis CI Pipeline

ตรวจสอบตัวอย่างไปป์ไลน์ Travis CI ที่เราสร้างขึ้น github.com/SSLcom/codesigner-travisci-sample

คู่มือการรวมการเซ็นชื่อระยะไกลสำหรับบริการ CI/CD อื่นๆ

ต้องการโซลูชันที่กำหนดเองหรือไม่ 

ด้วยความรู้จากผู้เชี่ยวชาญและเจ้าหน้าที่สนับสนุนระดับห้าดาว เราพร้อมและยินดีที่จะทำงานร่วมกับคุณเกี่ยวกับโซลูชันแบบกำหนดเองหรือส่วนลดการลงนามจำนวนมากในระดับองค์กร กรอกแบบฟอร์มด้านล่าง แล้วเราจะติดต่อกลับไป

ออกจากเวอร์ชันมือถือ