翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
で Microsoft Manifest Generation and Editing Tool (Mage.exe) AWS CloudHSM を使用してファイルに署名する
注記
AWS CloudHSM は、Windows SDK for .NET Framework 4.8.1 以降に含まれている 64 ビット Mage ツールのみをサポートします。
以下のトピックでは、 で Mage.exe
ステップ 1: 前提条件の設定
で Microsoft Mage.exe を使用するには AWS CloudHSM、以下が必要です。
-
Windows オペレーティングシステムが実行されている Amazon EC2 インスタンス。
-
自前で管理する、またはサードパーティプロバイダーによる認証局 (CA)
-
EC2 インスタンスと同じ Virtual Private Cloud (VPC) に少なくとも 1 つの HSM があるアクティブな AWS CloudHSM クラスター
-
AWS CloudHSM クラスター内のキーを所有および管理するための Crypto User (CU)
-
未署名のファイルまたは実行可能ファイル
-
Microsoft Windows Software Development Kit (SDK)
Mage.exe AWS CloudHSM で を使用するための前提条件を設定するには
-
このガイドの「開始方法の開始方法 AWS CloudHSM」セクションの手順に従って、Windows EC2 インスタンスと AWS CloudHSM クラスターを起動します。
-
独自の Windows Server CA をホストする場合は、「 で Windows Server を認証機関として設定 AWS CloudHSMする」のステップ 1 と 2 を実行します。それ以外の場合は、公的に信頼されたサードパーティーの CA を使用します。
-
.NET Framework 4.8.1 以降向けの Microsoft Windows SDK を Windows EC2 インスタンスにダウンロードしてインストールします。
mage.exe実行可能ファイルは Windows SDK ツールの一部です。デフォルトのインストール場所は次のとおりです。C:\Program Files (x86)\Windows Kits\<SDK version>\bin\<version number>\x64\Mage.exe
これらのステップを完了したら、Microsoft Windows SDK、 AWS CloudHSM クラスター、および CA を使用して署名証明書を作成できます。
ステップ 2: 署名用証明書を作成する
EC2 インスタンスに Windows SDK をインストールしたら、これを使用して証明書署名リクエスト (CSR) を生成することができます。CSR は、未署名の証明書であり、署名用に最終的に CA に提出します。この例では、Windows SDK に含まれる certreq 実行可能ファイルを使用して、CSR を生成します。
certreq 実行可能ファイルを使用して CSR を生成するには
-
Windows EC2 インスタンスに接続します。詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスに接続する」を参照してください。
-
request.infという名前のファイルを作成し、次の内容を記述します。Subject情報をお客様の組織の情報に置き換えます。[Version] Signature= $Windows NT$ [NewRequest] Subject = "C=<Country>,CN=<www.website.com>,O=<Organization>,OU=<Organizational-Unit>,L=<City>,S=<State>" RequestType=PKCS10 HashAlgorithm = SHA256 KeyAlgorithm = RSA KeyLength = 2048 ProviderName = "CloudHSM Key Storage Provider" KeyUsage = "CERT_DIGITAL_SIGNATURE_KEY_USAGE" MachineKeySet = True Exportable = False各パラメータの説明については、「Microsoft のドキュメント
」を参照してください。 -
certreq.exeを実行して CSR を生成します。certreq.exe -new request.inf request.csrこのコマンドは、 AWS CloudHSM クラスターに新しいキーペアを生成し、プライベートキーを使用して CSR を作成します。
-
CA に CSR を送ります。Windows Server CA を使用している場合は、次のステップを行います。
-
CA ツールを開きます。
certsrv.msc -
新しいウィンドウで、CA サーバーの名前を右クリックします。[すべてのタスク]、[Submit new request (新しいリクエストの送信)] の順に選択します。
-
request.csrの場所に移動し、[開く] を選択します。 -
[サーバー CA] メニューから、[保留中のリクエスト] フォルダを表示します。先ほど作成したリクエストを右クリックし、[すべてのタスク] を選択し、 [問題] を選択します。
-
[発行された証明書] フォルダに移動します。
-
[開く] を選択して証明書を表示し、[詳細] タブを選択します。
-
[Copy to File (ファイルにコピー)] を選択して、証明書のエクスポートウィザードを起動します。DER でエンコードされた X.509 ファイルを
signedCertificate.cerとして安全な場所に保存します。 -
CA ツールを終了し、次のコマンドを実行して、証明書ファイルを Windows の Personal Certificate Store に移動します。
certreq.exe -accept signedCertificate.cer
-
これで、インポートしたファイルを使用して、ファイルに署名することができます。
ステップ 3: ファイルに署名する
Mage.exe とインポートした証明書を取得したため、ファイルに署名できます。証明書の SHA-1 ハッシュ (サムプリント) を把握しておく必要があります。サムプリントにより、Mage.exe は AWS CloudHSMによって検証された証明書のみを使用します。この例では、PowerShell を使用して証明書のハッシュを取得します。
証明書のサムプリントを取得し、それを使用してファイルに署名するには
-
mage.exeが含まれているディレクトリに移動します。デフォルトの場所:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools\x64 -
Mage.exe を使用してサンプルアプリケーションファイルを作成するには、次のコマンドを実行します。
mage.exe -New Application -ToFile C:\Users\Administrator\Desktop\sample.application -
管理者として PowerShell を開き、次のコマンドを実行します。
Get-ChildItem -path cert:\LocalMachine\My出力から
Thumbprint、Key Container、Providerの値をコピーします。
-
次のコマンドを実行してファイルに署名します。
mage.exe -Sign -CertHash<thumbprint>-KeyContainer<keycontainer>-CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>コマンドが正常に実行されると、PowerShell より成功のメッセージが返ります。
-
ファイルの署名を検証するには、次のコマンドを使用します。
mage.exe -Verify -CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>