コード署名を安価かつ手軽に、CI/CDを通じて行えるサービスがTrusted Signingです。
$9.99/月は魅力的ですね
残念ながら単独のSaaSではなくAzureのサービスの一つのため
IaaSとしてAzureのセットアップ一式が必要になります。
GitHub Actionsでの対応はこちら
全体像
(1) Subscription 課金周り AWSのアカウント
相当 無料あり
└ (2) Resource Group
└ (3)コード署名アカウント 各サービス相当
├ (4) ID検証 作成者(組織)の存在を検証する
└ (5) Certificate Profile 証明書関係。これがゴール 有料
(1) Subscriptionの作成
まずは大枠を作りましょう。ここは指示通りで悩むところは少ないです
- トライアル時は無料枠を選ぶこと
- といっても署名プラン代金以外はほぼ0円
- 本番運用時はいろいろ割引プランがあるため適宜検討する
- 無料でもクレカが必要になります。1ドルオーソリが走ります
Subscriptionを作るとあとでフォローアップ電話が来ます
なおEntra ID(Active Directory)にユーザーアカウントがあったとしても、
Entra IDはAzureサービスではない(??)ためSubscriptionはありません
リソースプロバイダーを登録する
ここからTrusted Signingの公式ガイドを読んでいきます
最初にSubscriptionに対して設定からリソースプロバイダーを登録します
リソースグループではないので地味に注意
(2)と(3) コード署名アカウントを作成する
Azure側、公式ガイドともに機械翻訳のため整合性が取れておらず、使われている単語に注意しましょう
ここではコード署名アカウントと同時にリソースグループを作ります。
今度はポータルトップに飛んで、コード署名アカウントを選択後、設定していきます。
リージョンは初期設定でよいでしょう。
コード署名のプランを選択します。
大体の場合basicの$9.99/月でよさそうです
IAMでコード署名アカウントの中身を操作できるようにする
初期設定だと権限がないためコード署名アカウント
自体は作れても証明書が作れません
IAMが別管理です
上記ページの表の通り、一通りこなすにはオーナーであってもロールが追加で2つ必要です。
コード署名アカウントに付随するIAMページから、操作したいユーザー(自分)にロールを付与します。
全体のIAMページではない模様。
ロール検索時は機械翻訳に惑わされずCode
あたりで検索しましょう
ロールはまとめて割当できないので一つずつ行うこと
(4) ID検証する
証明書作成の前に、署名する組織自体を検証します。
本番運用時はPublicがよさそうですが検証に長い時間がかかります。
トライアル時はPrivateがよさそうです。
(5) Certificate Profile を作る
ゴールです
必要に応じて(4)同様Public TrustかPrivate Trustを選べばOK
- VBS Enclaveを使いたい方にはこの記事は不要でしょう
- Private Truste CI PolicyのCIはContinuous Integrationではありません。忘れてください
ここからGitHub Actions作業へ
Q&A
- 東京リージョンはありますか?
- 今はありません
- EV証明書はありますか
- 発行する予定もないとのこと
まとめ
IaaSのセットアップになるのでなかなか大変です。
しかもこの記事には本番運用に必要なIAMやセキュリティ周りはほぼ含まれていません。
AWSでも同様のサービスを提供してほしいですね