1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.NETにて、自己署名証明書を発行し、開発中にHTTPSを使用できるようにする

Last updated at Posted at 2023-10-28

参考記事

環境

  • Windows10 Pro
  • Visual Studio 2022
  • .NET 7.0

コマンドの説明

dotnet dev-certsコマンドを実行することで自己証明書が生成され、ローカルWebアプリ開発中にHTTPSを使用できるようになる。dotnet dev-certsコマンドの主な機能は以下の通り

  • 開発中にHTTPSエンドポイントで使用する証明書を生成する
  • ローカルコンピュータで生成した証明書を信頼する
  • ローカルコンピュータから生成した証明書を削除する
  • 証明書をさまざまな形式でエクスポートして、他のツールで使用できるようにする
  • ツールによって生成された既存の証明書をローカルコンピュータにインポートする

使用方法

dotnet dev-certsには1つのコマンドhttpsしかなく、dotnet dev-certs httpsコマンドを実行することで、開発証明書がマシン上の現在のユーザーの証明書ストアに存在するかどうかを確認する

自己署名証明書を作成

  • 作成コマンドを実行
dotnet dev-certs https
  • 既に証明書が存在する場合は以下のようなメッセージが表示される
A valid HTTPS certificate is already present.
  • 証明書がなく、正常に作成ができた場合はコマンドでは次の例のようなメッセージが表示される
The HTTPS developer certificate was generated successfully.

コマンドで開発証明書が見つからない場合は、現在のユーザーの証明書ストア (CurrentUser という場所にある My という名前のストア) に開発証明書が作成され、証明書の物理的な場所は、.NET ランタイムの実装の詳細であり、いつでも変更可能。

  • 証明書を信頼
    ※規定では、新しく作成された証明書は信頼されていないため、証明書を信頼するには--trustオプションを使用する必要あり
> dotnet dev-certs https --trust
Trusting the HTTPS development certificate was requested. A confirmation prompt will be displayed if the certificate was not previously trusted. Click yes on the prompt to trust the certificate.
  • 翻訳するとこんな感じ

HTTPS 開発証明書を信頼することが要求されました。証明書が以前に信頼されていない場合は、確認プロンプトが表示されます。プロンプトで「はい」をクリックして証明書を信頼します。

  • 画面上で表示されているダイアログにて「はい」をクリックして、証明書をインストールする
    image.png

自己署名証明書の確認

  • 信頼された開発証明書がローカル コンピューターに存在するかどうかを確認。A valid certificate was found:が表示されていればOK
> dotnet dev-certs https --check --trust
A valid certificate was found: ~

以上です。

1
3
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
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?