Asp.net core 在开发时使用ASP.NET Core 2.1中的SSL证书

Asp.net core 在开发时使用ASP.NET Core 2.1中的SSL证书,asp.net-core,asp.net-core-2.1,Asp.net Core,Asp.net Core 2.1,在ASP.NET Core 2.1 I应用程序appSettings文件上,我具有以下内容: "Kestrel": { "Certificates": { "Default": { "Path": "localhost.pfx", "Password": "1234" } } } 我使用dotnet命令创建了证书: dotnet dev-certs https -ep "localhost.pfx" -p 1234 我将localhost.

在ASP.NET Core 2.1 I应用程序appSettings文件上,我具有以下内容:

"Kestrel": {
  "Certificates": {
    "Default": {
      "Path": "localhost.pfx",
      "Password": "1234"
    }
  }
}  
我使用dotnet命令创建了证书:

dotnet dev-certs https -ep "localhost.pfx" -p 1234
我将localhost.pfx文件沿着appSettings文件复制到项目根目录中

当我在上面运行项目时,它被重定向到

但是,我收到浏览器错误,说连接不安全,并要求我添加异常

我做错了什么?

简短回答 包括
--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
意味着我们不再需要在appsettings.json文件中添加
“Kestrel”
部分。

您使用的浏览器是什么?我试过Firefox和Google Chrome您试过使用
dev certs
命令中的
--trust
标志吗
dotnet dev certs https-ep“localhost.pfx”-p 1234--trust
。为了获得信任,必须将自签名证书添加到Windows中的信任证书存储中(这是
--trust
参数实现的),但您也可以手动执行。然而,这只会影响依赖Windows可信证书存储的浏览器,据我所知,该存储只有IE、Edge和Chrome。尤其是Firefox,没有,所以您仍然需要在Firefox中添加一个手动异常。使用您建议的选项,仍然需要将证书添加到项目路径并将kestrel部分添加到设置中?我问这个问题是因为我认为使用本地证书文件(例如,在项目根上)没有必要将其添加到存储中。否。使用
--trust
标志,无需将自定义kestrel设置添加到appsettings.json。使用非自签名证书生产的SSL如何?@Wes我建议打开另一个StackOverflow问题。