web-dev-qa-db-ja.com

開発中にASP.NET Core 2.1でSSL証明書を使用する

ASP.NET Core 2.1では、appSettingsファイルをアプリケーションにインストールしますが、次のものがあります。

"Kestrel": {
  "Certificates": {
    "Default": {
      "Path": "localhost.pfx",
      "Password": "1234"
    }
  }
}  

Dotnetコマンドを使用して証明書を作成しました:

dotnet dev-certs https -ep "localhost.pfx" -p 1234

そして、localhost.pfxファイルをappSettingsファイルに沿ってプロジェクトルートにコピーしました。

http:// localhost:50 でプロジェクトを実行すると、 https:// localhost:5001 にリダイレクトされます。

ただし、接続が安全でないことを示すブラウザエラーが表示され、例外を追加するよう求められます。

私は何を間違えていますか?

7
Miguel Moura

短い答え

--trustオプションを含めます。

dotnet dev-certs https -ep "localhost.pfx" -p 1234 --trust

これにより、これらのappsettings.jsonで機能する証明書が作成されます。

"Kestrel": {
  "Certificates": {
    "Default": {
      "Path": "localhost.pfx",
      "Password": "12345"
    }
  }
}

ノート

証明書を再作成する必要がある場合は、最初に証明書ストアをクリーニングします。

dotnet dev-certs https --clean

--trustオプションはChromeですぐに機能します。ただし、Firefoxでは、セキュリティ例外を追加する必要があります。

--trustを使用すると、"Kestrel"セクションをappsettings.jsonファイルに追加する必要がなくなります。

9
Shaun Luttin