1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windows SDK で ClickOnce用のコード証明書ファイルを作成する

Last updated at Posted at 2023-08-01

1. はじめに

  • ClickOnceでアプリケーションを配布する時にマニフェスト著名を追加したい
  • 配布するアプリケーションでMicrosoft SmartScreenの警告を表示させないようにしたい
  • Windows SDKでコード認証書ファイルを作成したい

2. 開発環境

  • Windos SDK 10
  • ClickOnce
  • Visual Studio 2022
  • Windows 11
  • C# (配布アプリケーション)
  • .Net 6 (配布アプリケーション)

3. Windows SDK 10のインストール

3.1. 下記サイトよりインストーラーをダウンロードする

3.2 インストーラーを起動して、指示通りインストールする

winsdksetup.exe

4. 証明書ファイルの内容

拡張子 取り扱い 説明
.pvk 公開厳禁 秘密鍵ファイル
.cer 公開 公開鍵を含む証明書ファイル
(ユーザーに配布)
.pfx 公開注意 .pvk.cerから生成される
(Visual Studioでマニフェスト著名時に使用)

5.証明書の作成

5.1. Developer Command Prompt for VS 2022を管理者として実行する

image.png

5.2. 作業用フォルダを作成する

mkdir c:\cert
cd c:\cert

5.3. .pvk , .cerファイルを作成する

makecert -n "CN={発行元に表示したい組織名} ,O={アプリケーション名},C=JP" -a sha256 -b {有効開始日 01/01/2000} -e {有効期限 01/01/2100} -eku 1.3.6.1.5.5.7.3.3 -cy end -r -sv {pvkファイル名} {cerファイル名}
  • 入力後の3回パスワードの入力が求められる
    image.png
    image.png

  • 有効期限日の00:00までとなるため、有効期限日+1を設定する

5.4..pfxファイルを作成する

pvk2pfx -pvk {pvkファイル名} -pi {makecert実行時に入力したパスワード} -spc {cerファイル名} -pfx {pfxファイル名} -f

6. 証明書のインストール

6.1. .pfxファイルをダブルクリックする

6.2.ローカルコンピューターを選択して、次へボタンをクリックする

image.png

6.3.次へボタンをクリックする

image.png

6.4 パスワードを入力して、次へボタンをクリックする

image.png

6.5. 証明書をすべて次のストアに配置するを選択して、信頼されたルート証明書期間を参照して次へボタンをクリックする

image.png

6.6 完了ボタンをクリックする

image.png

6.7. certmgr.mscを起動する

image.png

  • インストールした証明書を確認する

7. ClickOnceの町名されたマニフェストへの登録(抜粋)

7.1. 公開のマニフェストの著名でClickOnceマニフェストに著名するにチェックする

image.png

7.2. ファイルから選択をクリックする

  • 作成した.pvkファイルを選択して、パスワードを入力する

8. 参考文献

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?