E環境変数
- USERNAME: SSL.com アカウントのユーザー名。 (必須)
- PASSWORD:SSL.comアカウントのパスワード(必須)
- CREDENTIAL_ID: 証明書に署名するための資格情報 ID。 credential_id が省略され、ユーザーが eSigner コード署名証明書を XNUMX つしか持っていない場合、CodeSignTool はデフォルトでそれを使用します。 ユーザーが複数のコード署名証明書を持っている場合、このパラメーターは必須です。 (必須)
- TOTP_SECRET: OAuth TOTP シークレット。 の詳細情報にアクセスできます。 https://www.ssl.com/how-to/automate-esigner-ev-code-signing (必須)
- ENVIRONMENT_NAME : 「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 ファイルを作成します。
ビルド ステージのスクリプトを作成する
サインステージの脚本を書く
フルスクリプト:
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 /出力
すべてのリポジトリ情報を定義する
[リポジトリ設定] タブをクリックします。
パイプラインで、[設定] をクリックしてパイプラインを有効にします
次に、PIPELINES の下にある をクリックします。 リポジトリ変数.
各リポジトリ変数の名前と値を配置します
コードを Bitbucket にプッシュする
ソフトウェア設定ページで、下図のように ソース BitBucket メニューのタブで、リポジトリの URL を https に設定します。
のコマンドを書きます git remote add origin bitbucket プロジェクトの https リンクを貼り付け、その後に git push command
書きます git push –u origin master コマンド
Bitbucket を更新して、プッシュしたコードを確認します
Bitbucket を更新して、 パイプライン タブ。 ビルドと署名の段階が自動的に開始されます。
ビルド段階が成功したかどうかを確認する
サインステージが成功したかどうかを確認する
サンプル BitBucket パイプライン
作成した BitBucket パイプラインを確認してください github.com/SSLcom/codesigner-bitbucket-sampleその他のリモート署名統合ガイド
- クラウド コード署名と CircleCI の統合
- Jenkins CI との Cloud Code Signing 統合
- Cloud Code Signing と GitHub Actions の統合
- クラウド コード署名と GitLab CI の統合
- Cloud Code Signing と Travis CI の統合
- クラウド コード署名と Azure DevOps の統合
- CI/CD サービスによるクラウド コード署名の自動化
カスタムソリューションが必要ですか?
専門知識とXNUMXつ星のサポートスタッフにより、カスタムソリューションやエンタープライズレベルの大量署名割引についてお客様と協力する準備ができています。 以下のフォームにご記入ください。ご連絡いたします。