ROB*_*SON 5 .net https asp.net-core
我正在阅读 Adam Freeman 的书“Pro ASP.Net Core 3”。我已经了解了 https 的介绍。他指示我们使用 Powershell 并运行命令“dotnet dev-certs https --clean”,然后运行“dotnet dev-certs https --trust”。当我运行 clean 命令时,我收到一条消息“HTTPS 开发证书已成功从机器中删除”。但是当我运行 trust 命令时,我得到:
“未找到具有可跨安全分区访问的密钥的有效 HTTPS 证书。将运行以下命令来修复它:'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9' 此命令将使证书密钥可跨安全分区访问,并可能提示您输入密码。有关详细信息,请参阅: https //aka.ms/aspnetcore/2.1/troubleshootcertissues 未找到具有跨安全分区可访问密钥的有效 HTTPS 证书。将运行以下命令来修复它:'sudo security set-key-partition-list -D localhost -S unsigned:,teamid:UBF8T346G9' 此命令将使证书密钥跨安全分区访问,并可能提示您输入密码。对于更多信息见:https://aka.ms/aspnetcore/3.1/troubleshootcertissues 请求信任 HTTPS 开发证书。如果以前不信任该证书,则会显示确认提示。在提示上单击“是”以信任证书。信任 HTTPS 开发人员证书时出错。”
如果我只是尝试运行“dotnet dev-certs https”,我会得到“一个有效的 HTTPS 证书已经存在”。
我尝试以管理员身份运行 powershell,但我遇到了同样的错误。
这本书说我可能会得到几个对话框,但我没有得到它们。
dotnet --version 给了我 3.1.200。
我需要做什么才能使证书生效?
gra*_*der 37
好的...我在下面的 github 链接中找到了 MAC 超级提示。
(它〜可能会转化为PC端......但我无法测试)
https://github.com/dotnet/sdk/issues/10422
在 macOS 上遇到了同样的问题。作为解决方案,在钥匙串中,删除“系统”下的旧本地主机证书,然后通过文档中描述的 dotnet 命令重新创建它。它将被放置在“登录”下。
因此,为了更好地描述上面的引用,我在这里添加了一个屏幕截图(下图带有洋红色/紫红色/粉红色圆圈),以提供“这是它在 Mac 上的位置”......上面的文字描述了..
所以我的步骤是:
dotnet dev-certs https --clean
dotnet dev-certs https --check
// (DO THE MANUAL keychain-old-localhost removal NOW (image below)
// (before running the below terminal commands)
dotnet dev-certs https --check
dotnet dev-certs https
dotnet dev-certs https --trust
Run Code Online (Sandbox Code Playgroud)
我需要做什么才能获得工作证书?
dotnet dev-certs https --trust由于某种原因,当我们使用命令信任 HTTPS 开发证书时,dotnet CLI 可能会抛出异常。
作为解决方法,我们可以尝试执行以下步骤来手动信任证书。
运行dotnet dev-certs https命令生成HTTPS证书(如果没有生成)
通过从证书管理器 UI 中的“当前用户”>“个人”>“证书”复制到“当前用户”>“受信任的根证书颁发机构”>“证书” ,复制具有ASP.NET Core HTTPS 开发证书友好名称的证书,如下所示。
| 归档时间: |
|
| 查看次数: |
4605 次 |
| 最近记录: |