デジタル署名とWindows インストーラー

Windows インストーラーでは、デジタル署名を使用して、破損したリソースを検出できます。 署名者証明書は、パッケージによってインストールされる外部リソースの署名者証明書と比較できます。 デジタル署名、デジタル証明書、WinVerifyTrust の使用の詳細については、Microsoft Windows ソフトウェア開発キット (SDK) のセキュリティセクションを参照してください。

Windows インストーラーでは、デジタル署名を Windows インストーラー パッケージ、変換、修正プログラム、マージ モジュール、外部キャビネット ファイルと共に使用できます。 Windowsインストーラーは、Microsoft Windows XP のソフトウェア制限ポリシーと統合されています。 ポリシーは、特定の署名者証明書や発行元など、さまざまな条件に基づいてインストールを許可または禁止するために作成できます。 Windowsインストーラーは、CryptoAPI バージョン 2.0 がインストールされているすべてのプラットフォームで外部キャビネット ファイルの署名検証を実行できます。

Windows Installer SDK で提供されるサンプル Setup.exe ブートストラップでは、インストールを開始する前に、Windows インストーラー パッケージに対して署名チェックが実行されることに注意してください。

管理インストールを実行すると、パッケージからデジタル署名が削除されます。 管理インストールでは、AdminProperties ストリームを追加するためにインストール パッケージが変更され、元のデジタル署名が無効になります。 管理者はパッケージを再署名できます。

管理インストールにパッチを適用すると、パッケージからデジタル署名も削除されます。 その理由は、変更が管理インストールの修正プログラムが適用されたインストール パッケージに保持されるためです。 管理者はパッケージを再署名できます。

Windows インストーラー バージョン 3.0 以降では、ユーザー アカウント制御 (UAC) の修正プログラムを適用すると、管理者以外のユーザーはコンピューターごとのコンテキストでインストールされているアプリケーションに修正プログラムを適用できます。 UAC 修正プログラムの適用は、 MsiPatchCertificate テーブルに署名者証明書を指定し、同じ証明書で修正プログラムに署名することで有効になります。

詳細については、「デジタル署名と外部キャビネット ファイル」、Windows インストーラーとソフトウェア制限ポリシー完全に検証された署名付きインストールの作成、およびインストーラーのインストール例Windows基づく URL を参照してください。