翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
で 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)
-
少なくとも 1 つの HSM を持つ EC2 インスタンスと同じ仮想プライベートクラウド (VPC) 内のアクティブな 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 を使用してください。
-
Microsoft Windows SDK for .NET Framework 4.8.1 以降を 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し、開くを選択します。 -
Server CA メニューを展開し、Pending Requests フォルダに移動します。作成したリクエストを右クリックし、すべてのタスクを選択し、問題を選択します。
-
発行済み証明書フォルダに移動します。
-
[開く] を選択して証明書を表示し、[詳細] タブを選択します。
-
[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>