BitBucket과 클라우드 코드 서명 통합

이것은 자동화된 코드 서명을 수행하기 위해 BitBucket CI/CD 도구를 eSigner CodeSignTool과 통합하는 방법에 대한 가이드입니다.

CodeSignTool은 원격 서명 프로세스에 효과적이며 다양한 CI/CD 플랫폼과 완벽하게 통합되는 명령줄 유틸리티입니다. 이것은 개발자가 코드에 서명하는 직관적이고 안전한 방법을 경험할 수 있게 해주는 클라우드 코드 서명 서비스인 eSigner의 툴킷의 일부입니다.

SSL.com EV 코드 서명 인증서는 최고 수준의 유효성 검사를 통해 무단 변조 및 손상으로부터 코드를 보호하는 데 도움이 되며 최소한의 비용으로 사용할 수 있습니다. 연간 $ 249. 당신은 또한 수 EV 코드 서명 인증서를 대규모로 사용 eSigner를 사용하여 클라우드에서

지금 주문하세요

E환경 변수

  • 사용자 이름: SSL.com 계정 사용자 이름. (필수의)
  • PASSWORD: SSL.com 계정 비밀번호(필수)
  • CREDENTIAL_ID: 인증서 서명을 위한 자격 증명 ID입니다. credential_id가 생략되고 사용자에게 하나의 eSigner 코드 서명 인증서만 있는 경우 CodeSignTool은 기본적으로 이 인증서를 사용합니다. 사용자에게 둘 이상의 코드 서명 인증서가 있는 경우 이 매개변수는 필수입니다. (필수의)
  • TOTP_비밀: OAuth TOTP 비밀. 에 대한 자세한 정보에 액세스할 수 있습니다. https://www.ssl.com/how-to/automate-esigner-ev-code-signing (필수)
  • 환경_이름 : 'TEST' 또는 'PROD' 환경. (필수의)

입력

  • 입력_파일_경로: 서명할 코드 개체의 경로입니다. (필수의)

  • 출력_디렉터_경로: 서명된 코드 개체가 작성될 디렉터리입니다. output_path를 생략하면 -file_path에 지정된 파일을 서명된 파일로 덮어씁니다.

.NET 코드 DLL 서명 예제 워크플로

pipelines: default: - step: # 디스플레이와 보고서를 더 쉽게 읽고 이해할 수 있도록 단계에 이름을 추가할 수 있습니다. name: build-dotnet # 레지스트리 URL, 태그 및 다이제스트 값을 포함하거나 포함하지 않을 수 있는 Docker 이미지의 이름 image: mcr.microsoft.com/dotnet/sdk:3.1-bullseye # 단계 스크립트에서 실행할 명령: # 아티팩트용 디렉터리 생성 - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/packages # 릴리스 구성으로 dotnet 프로젝트 빌드 - dotnet build dotnet/HelloWorld.csproj -c Release # 빌드된 아티팩트를 아티팩트 디렉터리에 복사 - cp dotnet/bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${BITBUCKET_CLONE_DIR}/packages/HelloWorld.dll # 다음 단계 아티팩트와 공유하기 위해 단계에서 생성된 파일: - packages/HelloWorld.dll - 단계 : # 단계에 이름을 추가하여 디스플레이와 보고서를 더 쉽게 읽고 이해할 수 있습니다. name: sign-dotnet-artifacts # 단계 서비스에 대해 활성화된 서비스: - docker # 단계 스크립트에서 실행할 명령: # 아티팩트용 디렉터리 생성 - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/ packages # dotnet 권한 문제 수정 - chmod -R 777 ${BITBUCKET_CLONE_DIR}/packages # Docker Pull CodeSigner Docker Image - docker pull ghcr.io/sslcom/codesigner:latest # CodeSigner로 아티팩트 서명 docker image - docker run -i --rm --dns 8.8.8.8 --volume ${BITBUCKET_CLONE_DIR}/packages:/codesign/examples --volume ${BITBUCKET_CLONE_DIR}/artifacts:/codesign/output -e USERNAME=${USERNAME} -e PASSWORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:최신 서명 -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign /산출

bitbucket.org에서 새 리포지토리 생성

특정 필드에 대한 옵션을 선택합니다.

a) 액세스 수준: 개인 저장소 확인란을 선택합니다.

b) README를 포함하시겠습니까? 아니

c) 기본 분기 이름: main

d) .gitignore를 포함합니까? 아니

코드 편집기에서 새 프로젝트 만들기

새 프로젝트에서 .yml 파일을 만듭니다.

빌드 단계의 스크립트 작성

사인 스테이지 스크립트 작성

SSL.com EV 코드 서명 인증서는 최고 수준의 유효성 검사를 통해 무단 변조 및 손상으로부터 코드를 보호하는 데 도움이 되며 최소한의 비용으로 사용할 수 있습니다. 연간 $ 249. 당신은 또한 수 EV 코드 서명 인증서를 대규모로 사용 eSigner를 사용하여 클라우드에서

지금 주문하세요

전체 스크립트 :

pipelines: default: - step: # 디스플레이와 보고서를 더 쉽게 읽고 이해할 수 있도록 단계에 이름을 추가할 수 있습니다. name: build-dotnet # 레지스트리 URL, 태그 및 다이제스트 값을 포함하거나 포함하지 않을 수 있는 Docker 이미지의 이름 image: mcr.microsoft.com/dotnet/sdk:3.1-bullseye # 단계 스크립트에서 실행할 명령: # 아티팩트용 디렉터리 생성 - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/packages # 릴리스 구성으로 dotnet 프로젝트 빌드 - dotnet build dotnet/HelloWorld.csproj -c Release # 빌드된 아티팩트를 아티팩트 디렉터리에 복사 - cp dotnet/bin/Release/netcoreapp3.1/HelloWorld-0.0.1.dll ${BITBUCKET_CLONE_DIR}/packages/HelloWorld.dll # 다음 단계 아티팩트와 공유하기 위해 단계에서 생성된 파일: - packages/HelloWorld.dll - 단계 : # 단계에 이름을 추가하여 디스플레이와 보고서를 더 쉽게 읽고 이해할 수 있습니다. name: sign-dotnet-artifacts # 단계 서비스에 대해 활성화된 서비스: - docker # 단계 스크립트에서 실행할 명령: # 아티팩트용 디렉터리 생성 - mkdir -p ${BITBUCKET_CLONE_DIR}/artifacts - mkdir -p ${BITBUCKET_CLONE_DIR}/ packages # dotnet 권한 문제 수정 - chmod -R 777 ${BITBUCKET_CLONE_DIR}/packages # Docker Pull CodeSigner Docker Image - docker pull ghcr.io/sslcom/codesigner:latest # CodeSigner로 아티팩트 서명 docker image - docker run -i --rm --dns 8.8.8.8 --volume ${BITBUCKET_CLONE_DIR}/packages:/codesign/examples --volume ${BITBUCKET_CLONE_DIR}/artifacts:/codesign/output -e USERNAME=${USERNAME} -e PASSWORD=${PASSWORD} -e CREDENTIAL_ID=${CREDENTIAL_ID} -e TOTP_SECRET=${TOTP_SECRET} -e ENVIRONMENT_NAME=${ENVIRONMENT_NAME} ghcr.io/sslcom/codesigner:최신 서명 -input_file_path=/codesign/examples/HelloWorld.dll -output_dir_path=/codesign /산출

모든 리포지토리 정보 정의

리포지토리 설정 탭을 클릭합니다.

$XNUMX Million 미만 파이프라인, 설정을 클릭하여 파이프라인을 활성화합니다.

다음으로 아직 PIPELINES 아래에 있는 다음을 클릭합니다. 리포지토리 변수.

각 리포지토리 변수의 이름과 값을 배치합니다.

Bitbucket에 코드 푸시

에 출처 BitBucket 메뉴의 탭에서 리포지토리 URL을 https로 설정합니다.

다음에 대한 명령을 작성하십시오. 자식 원격 원산지 추가 bitbucket 프로젝트의 https 링크를 붙여넣은 다음 git push 명령

쓰기 git push –u 오리진 마스터 명령

푸시한 코드를 보려면 Bitbucket을 새로 고칩니다.

Bitbucket을 새로 고침하고 파이프 라인 탭. 빌드 및 서명 단계가 자동으로 시작됩니다.

빌드 단계가 성공했는지 확인

서명 단계가 성공했는지 확인

샘플 BitBucket 파이프라인

우리가 생성한 BitBucket 파이프라인을 확인하십시오. github.com/SSLcom/codesigner-bitbucket-sample

기타 원격 서명 통합 가이드

맞춤형 솔루션이 필요하십니까? 

우리의 전문 지식과 XNUMX성급 지원 직원을 통해 맞춤형 솔루션 또는 엔터프라이즈 수준의 대량 서명 할인에 대해 귀하와 협력할 준비가 되어 있습니다. 아래 양식을 작성해 주시면 연락드리겠습니다.

트위터
페이스북
링크드인
레딧
이메일

최신 정보를 얻고 보안을 유지하세요

SSL.com 사이버 보안 분야의 글로벌 리더입니다. PKI 그리고 디지털 인증서. 최신 업계 뉴스, 팁, 제품 공지 사항을 받아보려면 등록하세요. SSL.com.

우리는 귀하의 피드백을 환영합니다

설문조사에 참여하여 최근 구매에 대한 의견을 알려주세요.