AutoCAD ベースのプログラムでは、デジタル署名は、カスタム プログラム ファイルを安全にロードできるかどうかを確認するために使用されます。ファイル拡張子が ARX、CRX、DBX、DLL であるバイナリ(ObjectARX および Managed .NET)ファイルには、デジタル署名を行うことができます。さらに、カスタム プログラムを配置するために作成した MSI ファイルにもデジタル署名することができ、デジタル署名する必要があります。
注: バイナリ ファイルにデジタル署名をアタッチするには、Microsoft の署名ツール(SignTool.exe)が必要です。Microsoft の Web サイト(https://docs.microsoft.com/ja-jp/windows/apps/desktop/)から Windows SDK の最新バージョンをダウンロードしてインストールする必要があります。署名ツール以外にも、デジタル証明書を取得する必要もあります。デジタル証明書は、典型的には Symantec ™
や DigiCert ®
のようなベンダーからから取得しますが、作成したアプリケーションを自社内に配布する場合には、個人のデジタル署名を作成することができます。
次に、SignTool.exe ツールを使用してバイナリ ファイルに署名を行う例を示します。
"C:\Program Files (x86)\Windows Kits\10\bin\x64\signtool.exe" sign /f MyCert.pfx /p MyPassword /t http://timestamp.verisign.com/scripts/timstamp.dll "c:\Autodesk\AdskUtil.arx"
- "C:¥Program Files (x86)¥Windows Kits¥<バージョン>¥bin¥x64¥MakeCert.exe" - SignTool.exe ツールの場所を指定します。
- sign - バイナリ ファイルに署名を行うことを示します。
- /f MyCert.pfx - ファイルの署名に使用する PFX ファイルの場所を指定します。この例では、ファイルの名前は MyCert.pfx です。
- /p MyPassword - PFX ファイルに割り当てられているパスワードを指定します。この例では、パスワードは MyPassword です。
- /t http://timestamp.verisign.com/scripts/timstamp.dll - タイムスタンプ サーバの URL を指定します。サーバ上のファイルには前もってデジタル署名を行っておく必要があります。この例では、タイムスタンプのサーバとファイルは http://timestamp.verisign.com/scripts/timstamp.dll です。
- "c:¥Autodesk¥AdskUtil.arx" - 署名対象のファイルを指定します。この例では、署名対象のファイルは、C:¥Autodesk フォルダにある AdskUtil.arx です。
バイナリ ファイルに署名を行うには、次の操作を行います。
- Windows の[スタート]ボタン
[Windows システム ツール]
[コマンド プロンプト]をクリックします。
- Windows の[コマンド プロンプト]ウィンドウで cd %userprofile%¥Documents と入力し、[Enter]を押して[ドキュメント]フォルダを現在の作業フォルダとして設定します。別の作業フォルダを使用する場合は、代わりにその場所を指定します。
- SignTool.exe の場所と、実行する必要がある引数を入力します。
ファイルが読み込み専用としてマークされていたり、読み込み専用の場所にある場合を除き、ファイルの署名は成功するはずです。
- 署名したファイルの種類に基づいて、次のいずれかを実行します。
- 新しく署名したファイルを AutoCAD ベースのプログラムにロードし、デジタル署名が認識されることを確認します。
- 新しく署名した MSI ファイルが Windows ファイル エクスプローラでデジタル署名されていることを確認した後、テストをしてファイルが正しく実行されることを確認します。
注: AutoCAD ベースのプログラムが証明書を確認するためには、デジタル証明書は[信頼されたルート証明機関]ストアにある必要があります。