TIPS 2024年10月5日

Azure の Trusted Signing でPowerShellからコード署名をする際のコマンド

当社が配布するmsi等の実行ファイルはMicrosoftが提供するTrusted Signingによりデジタル署名されています。

Trusted Signing 公式ドキュメントではSignTool.exeを使用する方法が詳しく書かれていますが、PowerShellで署名するためのTrusted Signingコマンドについては具体的に書かれていません。

まず最初にモジュールをインストールしておきます:

PS> Install-Module -Name TrustedSigning -RequiredVersion 0.4.1

コード署名のコマンドは次の通りです:

PS> Invoke-TrustedSigning -Endpoint (エンドポイントURL) -CodeSigningAccountName (Trusted Signing Accountのアカウント名) -CertificateProfileName (Certificate profiles の名前) -FileDigest SHA256 -TimestampRfc3161 http://timestamp.acs.microsoft.com -TimestampDigest SHA256 (署名するファイルの絶対パス)

処理の途中、ブラウザが立ち上がりAzureへのログインが必要となります。Azure CLIがインストールされていて az login コマンドですでにAzureにログインしている場合には表示されません。

また、注意点として、最後のファイル名のパスは絶対パスである必要があります。(C:\Users\Hoge\package\hoge.msi など)

この記事をシェア

最近のTIPS