0
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?

【Visual Studio】ASP.NET Coreのプロジェクトでアプリを初回実行した際に表示されるメッセージの意味について

Posted at

概要

Visual StudioのASP.NET Coreのプロジェクトで実行したときに表示される、証明書の信頼やセキュリティ警告に関するメッセージの意味を調べてみました。

ASP.NET Core SSL証明書を信頼する

image.png

意味

ASP.NET Core プロジェクトを初めて https://localhost で起動しようとした際に表示される、Visual Studioが出しているメッセージです。
具体的には、Visual Studio が開発用の自己署名 SSL 証明書を信頼するかどうかを確認するために表示します。
開発環境(https://localhost)では本物の認証局(CA)が発行した証明書を使うのではなく、ASP.NET Coreが自動で生成した自己署名証明書を使用します。ただその証明書を Windows に信頼させるには、ユーザーの同意が必要なので、初回起動時に「信頼しますか?」というダイアログを表示しているイメージです。
このメッセージはローカル開発環境専用のメッセージなので、本番環境には関係ありません。

操作

「はい」を選ぶと、その証明書が Windows の証明書ストアに登録されて、以降はブラウザで警告が出なくなります。
「いいえ」を選ぶと証明書は信頼されず、ブラウザでアクセスすると「この接続は安全ではありません」といった警告が出続けます。
なのでローカル開発で HTTPS を使いたいなら「はい」を選ぶのが通常になります。

セキュリティ警告

image.png

意味

Windowsの証明書ストア(証明書管理機能) が出しているメッセージです。Windows OS 自体が「この証明書を信頼してよいか?」という判断をユーザーに委ねるために表示しています。
タイミング的には、Visual Studioが自己署名証明書(localhost)を 「信頼されたルート証明機関」 にインストールしようとしたときに表示されます。証明書は「localhost」という名前で発行されていて、ルート証明書(信頼の起点になる証明書)として登録しようとしている状態です。

  • 警告文にある通り「この証明書を信頼すると、今後この発行者が作る証明書は自動的に信頼される」ことになります。

操作

「はい」を選ぶと、ブラウザでhttps://localhost:xxxxにアクセスしても警告が出なくなります。
ローカル開発で HTTPS を使うなら「はい」を選ぶのが一般的です。
ただしこれはあくまで「開発用の証明書」であり、本番環境では必ず正式な認証局(CA)が発行した証明書を使う必要があります。

終わりに

どちらのメッセージも「開発環境でhttps://localhostを使うために、自己署名証明書を信頼させる必要がある」ことから出ています。
流れ的には、Visual Studio が依頼 → Windows が最終確認という二段階チェックになっています。

0
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
0
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?