无法配置HTTPS端点。未指定服务器证书,并且找不到默认的开发人员证书

时间:2018-11-14 12:40:32

标签: asp.net-core .net-core asp.net-core-2.1 kestrel

我正在配置HTTPS的结构应用程序上工作。尽管我具有有效的安装证书,但它抛出异常。

16 个答案:

答案 0 :(得分:18)

我正在使用OSX,dotnet dev-certs https --cleansudo dotnet dev-certs https --clean对我不起作用。最终,我可以通过以下步骤对其进行修复。

  1. 进入钥匙串访问
  2. 解锁系统钥匙串
  3. 删除localhost证书
  4. 运行dotnet dev-certs https -t

您现在应该可以正常运行了。

编辑:

如果按照上述答案进行操作后,您确实遇到了读取There was an error saving the HTTPS developer certificate...的错误,请查看此答案https://stackoverflow.com/a/56709117/621827

答案 1 :(得分:2)

this blog的这些说明对我有用

  1. dotnet开发人员证书https --clean
  2. dotnet开发人员证书https -t

答案 2 :(得分:2)

对我来说,该问题已通过运行解决:

  1. dotnet开发人员证书https --clean
  2. dotnet开发人员证书https-详细

enter image description here

答案 3 :(得分:2)

我希望没有人对此做评论,所以可以单独回答。这是我找到的解决方案,在SO或其他站点的其他任何地方都没有提到。这特定于Windows证书管理器,不确定其他操作系统是否遇到类似问题。

我从其他答案中学到的东西

dotnet dev-certs https自变量

我尝试了dotnet dev-certs https--trust--clean --verbose(似乎并没有实际记录任何其他信息)和--check的各种组合(从未找到证书)

certmgr.msc

根据其他答案的建议,我与certmgr.msc一起删除了dotnet dev-certs https --clean受信任的根证书颁发机构\证书下的所有 localhost 证书, / p>

解决方案

最终,我意识到certmgr.msc个人\证书下还显示了许多 localhost 证书。原来,这些也需要删除。

然后一次运行dotnet dev-certs https -t并创建并信任新的开发证书。

我通过调试ASP.NET Core App进行了验证。验证的另一种方法是运行dotnet dev-certs https --check --verbose

答案 4 :(得分:1)

我遇到了类似(但不完全相同)的问题。
使用2.1,您必须配置您的证书。
我现在完全在appsettings.json 中执行此操作。
您可以在这里找到我的帖子:
Configure self hosting Kestrel App with certificate for https (internet web server)

仅查看解决方案...

答案 5 :(得分:0)

我遇到了相同的问题并进行了清理->然后安装证书对我有所帮助(此处还有另一个答案)。您也可以像生产服务器一样issue a certificate。很有帮助。

答案 6 :(得分:0)

我在使用Visual Studio的Windows 10系统上遇到了此问题。问题似乎是GUI中用于清除HTTPS本地证书的命令失败,并出现一条错误消息,我无法再复制该消息。

对我来说,解决方案是为当前Windows帐户打开certmgr并删除所有个人localhost证书。我那里有大约20个证书,因为我尝试过多次重新创建它们。删除所有这些证书后,我再次运行了.Net核心HTTPS API,一切正常!

总而言之,请为当前用户打开certmgr并清除所有个人/本地主机证书。

答案 7 :(得分:0)

不确定这是否对其他人有帮助,但是我的Mac上确实有这个问题。我的项目在Dropbox中,因此可以在所有计算机之间共享,在“第二台”计算机上,我必须进入并手动删除“ obj”和“ bin”文件夹,然后重新运行该应用程序,一切正常

答案 8 :(得分:0)

我遇到了同样的问题。 问题在于该项目使用.net 4.6.1,而不是.net core。

答案 9 :(得分:0)

在Windows中, dotnet dev-certs https --clean对我不起作用,我必须手动删除这些本地证书。

  1. 打开certmgr.msc
  2. 删除“受信任的根证书颁发机构/证书”下的所有localhost证书
  3. 运行dotnet dev-certs https -t

答案 10 :(得分:0)

我在命令提示符下运行它。顺便说一句我正在使用Window 10 dotnet开发人员证书https dotnet dev-certs https -t

答案 11 :(得分:0)

  1. dotnet工具卸载--global dotnet-dev-certs --version(必需版本)
  2. dotnet工具安装--global dotnet-dev-certs
  3. dotnet开发人员证书https --trust

有关更多详细信息,请访问GitHub问题页面here以及官方文档Here

答案 12 :(得分:0)

我在“Startup.cs”文件中评论了以下行,它对我有用。

app.UseHttpsRedirection();

答案 13 :(得分:0)

我遇到了这个问题,我的解决方案是重新启动。当我这样做并重新打开 Visual Studio 2019 时,它要求我接受新的 SSL 证书。之后,我就可以运行我的程序了。

答案 14 :(得分:0)

还有一个细节 - 如果您通常以普通(非管理员)用户身份登录,请不要从管理员命令提示符运行“dotnet dev-certs https”命令如果您有单独的管理员级别身份。在正常登录的正常命令提示符下运行它们。问我怎么知道。 :-P

如果您从提升的命令提示符(使用明显独立的管理员身份)运行这些命令,您将遇到以下情况:

  • "dotnet dev-certs https --trust" 可以正常工作
  • “dotnet dev-certs https --check --verbose”会告诉你一切正常
  • 当您尝试启动调试器时,VS Code 将继续吐出“无法配置 HTTPS 端点...”错误
  • 您将继续从浏览器收到“证书不受信任”警告。

如果您看到这些问题,请从普通命令提示符运行“dotnet dev-certs https”命令。为我修好了。希望这可以帮助某人,而无需花费我在此上所做的时间!

答案 15 :(得分:0)

如果 dotnet dev-certs https --clean 不起作用。

  1. 打开运行并打开 mmc.exe
  2. 在“文件”菜单中的 MMC 内部,单击“添加/删除管理单元”。
  3. 在添加/删除管理单元窗口中,在可用管理单元中查找证书并将其添加到所选中
  4. 选择用户帐户
  5. 在控制台根目录 -> 证书当前用户 -> 个人点击证书
  6. 您将看到为当前用户颁发和安装的证书列表。不要删除或更改任何您不知道的证书,只删除与自签名 localhost ASP.NET Core 相关的证书。