方法 : アセンブリに署名する (Visual Studio)

アセンブリ署名 (厳密な名前による署名とも呼ばれます) により、アプリケーションまたはコンポーネントに一意な識別子が割り当てられます。この識別子は、他のソフトウェアでそのアプリケーションまたはコンポーネントを明示的に識別および参照する場合に使用できます。 厳密な名前は、単純テキスト名、バージョン番号、カルチャ情報 (設定されている場合)、および公開キーと秘密キーのペアで構成されます。 この情報はキー ファイルに保存されます。このファイルは、Personal Information Exchange (PFX) ファイル、またはユーザーの Windows 証明書ストアの証明書になります。 詳細については、「マネージ アプリケーションに対する厳密な名前による署名」を参照してください。

注意

アセンブリ署名のために、Visual Studio では、ローカル コンピューターのプロジェクト システムに格納されている Personal Information Exchange (.pfx) ファイルと厳密名キー (.snk) ファイルのみがサポートされています。

場合によっては、公開キーにしかアクセスできないこともあります。 その場合は、遅延署名を使用して秘密キーの割り当てを遅らせることができます。 詳細については、「方法 : アセンブリに遅延署名する (Visual Studio)」を参照してください。

次のように、プロジェクト デザイナー[署名] ページのオプションを使用して、アセンブリに署名できます。詳細については、「[署名] ページ (プロジェクト デザイナー)」を参照してください。

次の手順は、アセンブリの署名のみに該当します。 アプリケーション マニフェストと配置マニフェストに署名する場合は、「方法 : アプリケーション マニフェストおよび配置マニフェストに署名する」を参照してください。

新しいキー ファイルを使用してアセンブリに署名するには

  1. ソリューション エクスプローラーでプロジェクト ノードを選択した状態で、[プロジェクト] メニューの [プロパティ] をクリックします (または、ソリューション エクスプローラーのプロジェクト ノードを右クリックし、[プロパティ] をクリックします)。

  2. プロジェクト デザイナーで、[署名] タブをクリックします。

  3. [アセンブリの署名] チェック ボックスをオンにします。

  4. 新しいキー ファイルを指定します。 [厳密な名前のキー ファイルを選択してください] ボックスの一覧の [<新規作成...>] を選択します。 新しいキー ファイルは常に .pfx 形式で作成されることに注意してください。

    [厳密な名前キーの作成] ダイアログ ボックスが表示されます。

  5. [厳密な名前キーの作成] ダイアログ ボックスで、新しいキー ファイルの名前とパスワードを入力し、[OK] をクリックします。

    注意

    必要に応じて、[遅延署名のみ] チェック ボックスをオンにして遅延署名を有効にできます。 詳細については、「方法 : アセンブリに遅延署名する (Visual Studio)」を参照してください。

既存のキー ファイルを使用してアセンブリに署名するには

  1. ソリューション エクスプローラーでプロジェクト ノードを選択した状態で、[プロジェクト] メニューの [プロパティ] をクリックします (または、ソリューション エクスプローラーのプロジェクト ノードを右クリックし、[プロパティ] をクリックします)。

  2. プロジェクト デザイナーで、[署名] タブをクリックします。

  3. [アセンブリの署名] チェック ボックスをオンにします。

  4. 既存のキー ファイルを指定します。 [厳密な名前のキー ファイルを選択してください] ボックスの一覧の [<参照...>] を選択します。

  5. [ファイルの選択] ダイアログ ボックスで、キー ファイルに移動するか、キー ファイルのパスを [ファイル名] ボックスに入力し、[開く] をクリックしてキー ファイルを選択します。 詳細については、「方法 : 公開キーと秘密キーのキー ペアを作成する」を参照してください。

    注意

    [パスワードの変更] をクリックして、キー ファイルのパスワードを変更できます。 [キー パスワードの変更] ダイアログ ボックスで、古いパスワードを入力し、新しいパスワードを 2 回入力します。

    注意

    必要に応じて、[遅延署名のみ] チェック ボックスをオンにして遅延署名を有効にできます。 詳細については、「方法 : アセンブリに遅延署名する (Visual Studio)」を参照してください。

参照

処理手順

方法 : アセンブリに遅延署名する (Visual Studio)

概念

マネージ アプリケーションに対する厳密な名前による署名

その他の技術情報

アセンブリおよびマニフェストへの署名の管理