ASP.NET核心继续使用过期证书 [英] Asp.net core keep using the expired certificate

查看:56
本文介绍了ASP.NET核心继续使用过期证书的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

最近,我的localhost证书已过期,我已转到";sertmgr.msc";删除所有localhost证书并重新启动VS,然后向Windows添加新的localhost证书。 但是当我再次运行我的应用程序时,仍然使用旧的过期证书而不是新的证书,有人知道如何修复这个问题吗? 我已经运行了下面的命令show。

dotnet dev-certs https --clean
dotnet dev-certs https --trust

Expired Cert Cert In Cert Manage

推荐答案

我设法绕过了这个问题:

  1. 在执行任何操作之前,请清除旧证书并生成新的受信任证书。

    dotnet dev-certs https --clean
    dotnet dev-certs https --trust
    
  2. 如果上述过程失败,请在重试CLEAN/TRUST命令之前manually remove the certificates

  3. 获取您遇到问题的Web应用程序的用户机密ID。在项目文件夹中搜索UserSecrets.UserSecretsIdAttribute(&Quot;并获取GUID。

  4. 转到%APPDATA%MicrosoftUserSecrets,打开包含您正在处理的问题项目的GUID的文件夹,并将其保留为打开状态。

  5. 新建Asp.Net Core项目,获取其secretsGUID,转到对应的秘密文件夹(%APPDATA%MicrosoftUserSecretsGUID),打开文件secrets.json。您应该看到如下所示

    {
      "Kestrel:Certificates:Development:Password": "8353f2ec-3cc0-4052-9776-9585b6abd346"
    }
    
  6. 从新创建项目secrets.json复制设置,并使用它覆盖损坏项目的secrets.json上的开发密码

通过这种方式,我已经设法让我的旧项目使用新生成的证书。它很老套,但很管用

这篇关于ASP.NET核心继续使用过期证书的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆