千家信息网

如何进行IdentityServer4 RSA 证书加密

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,如何进行IdentityServer4 RSA 证书加密,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。IdentityServer4 默
千家信息网最后更新 2026年11月02日如何进行IdentityServer4 RSA 证书加密

如何进行IdentityServer4 RSA 证书加密,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

IdentityServer4 默认提供了两种证书加密配置:

services.AddIdentityServer()    .AddDeveloperSigningCredential()    .AddTemporarySigningCredential();

这两种证书加密方式,都是临时使用,每次重启项目的时候,都会重新生成一个新的证书,这时候就会导致一个问题,重启之前生成的access_token,在重启之后,就不适用了,因为证书改变了,对应的加密方式也改变了,所以,就会出现下面这个问题:

错误信息:

Www-Authenticate:Bearer error="invalid_token", error_description="The signature key was not found"

解决方式,就是始终使用一个证书,我们先这样配置:

services.AddIdentityServer()    .AddDeveloperSigningCredential();

可以查看下AddDeveloperSigningCredential实现源码,启动项目,IdentityServer4 会在项目目录中生成一个tempkey.rsa证书文件:

{    "KeyId": "4e1765de45ef639261115198826dfea7",    "Parameters": {        "D": "FnB7kIinBgoZDaRqIrRQHEF45FBF9amOrTn8oFdmsxPqJbh21bHeCw11AtCCC4p1mm750onDXeP+yoBHymr/wNn40VmGdhR4hnObHhhw5pyQKECIS41DFDatCZif9uhDgHsOvYHMRVNSapDFoDUvbTE6t7rv4prn2fDt5mzRD9AqdT2HyTcwa/H1haaZNwmy3UevYYy8ya4kKXvjRo6+O7BMBh+yBvHgezQ57Ye/NfZfDMITs4djbqELrYVXCTMltNsWWhQtS62cqvKboxoiXfSm67u/li5Fdusc5Z2zsyt5rE/V8h/ffBvS9N9v0VoDTdFqLYkuul0DvTZ/pqXtMQ==",        "DP": "XQDf46csbwu/xX+jwo5VQQ8sKVlVBLuxSNTAbNS6O/aCg9eEjZ58EJ712JgqqORcDMg5JRejN3Zxxoij4roJogyvvw6QSws/H+UTmtuuudgT59OB1TyNGihMVSTLXaw4Kgdj8D8IK8v0okdFEpYugzIIFe1yl0lSzR7fkF+NKC0=",        "DQ": "4TvT9ujJ38sTluz0dUSIUD3NCWJOMDKOB/cL3RaDyMf/MTSxNFfWDuuW55F2P8mncHhqLuANcg2l3h8xom+1ucn+ve45JNoWja4fpWQ16rmijPc5yKRe0uAGEaXJiTAEvIxXG18zvNA8Fab+L2X1h+1r35ZLZFYj+EyhkqQ7u5k=",        "Exponent": "AQAB",        "InverseQ": "nTAEt8v+DlAn6h7Z1Ey1x4Z56OfOmCvY01nte4f3OuSmBXoEaTSoGsXScweAMoSGb0aOG1qpvErtY+JykREeLJxvm4P3DAHL5lJWvDKPvCWJOD9jfzhBUyIhCoqQ8EIHjFxBNKyNefAsVuKdH6R+ApuhpF8XVhR59zLawUQWLEg=",        "Modulus": "43j4tvNZy7IxuiDwZzWv9KiS5kSYIeBqEvQ7zkQmRT3IEsseiTv698iQx8qn+de8FeGFEa8O6igFU2VXqFyWJilTuPmeBPJxIMCqfxdxF+96giVSpN4rOFaH/V+IPNTQoYCLFwcUR2saFywUeKWpsRFhQCymsFIk3AlWu7jcqgKHrELsJpn5KVmedb6JZcVKMIfTrcY6hWQz2JNEhTOEI10ZVZ7ueEp2Q2+1/udvp47wPMhzriXJTFP7Y4ozU2THbuwIqCXM5DNBGUpEug0vlCAhwn6nvAo8e9fT0lpUzTd2T8wWzwuHkAgyjB0XTzSYR1fMJIKH1zDs25RqmlepgQ==",        "P": "9lGtQw9yXz4nbepESFDxAMfDlmiI9Gj3Q3FecKIgGVVi9WVr19lzBcszhsVybA8n1OyPXHdOyuSWOiVp69ibo5OOXLL4iWzY1VOouXeZrYimxNPvVKlRf8AsVcv3n/0/FEhwY9gnQm4PZYUGwQ96WZ5Z/CWJ9xTORg54Wh79hk0=",        "Q": "7Gmr/h43bM+9W4Ygh+tNh4/etECuT/RQ1LMS5uBXxXdvUl6wSm2+ec/CBRobxVHG2pDXdr0pegn0Yz4MprsLtS5KvFg6yopI3Y3TptTGNZPtbd1O7P4i6b+RNOYCq0Y99mkGofqAlAMnDG+SA2EJN2ugPjLelC7GWtfzNG5NMgU="    }}

AddDeveloperSigningCredential中代码执行,会先判断tempkey.rsa证书文件是否存在,如果不存在的话,就创建一个新的tempkey.rsa证书文件,如果存在的话,就使用此证书文件。

所以,我们配置的时候,传递一个tempkey.rsa证书文件名,就可以了:

services.AddIdentityServer()    .AddDeveloperSigningCredential("tempkey.rsa");

当然,你也可以对tempkey.rsa证书文件,进行重命名操作。

看完上述内容,你们掌握如何进行IdentityServer4 RSA 证书加密的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

证书 文件 加密 问题 方式 项目 配置 内容 方法 时候 更多 生成 束手无策 为此 信息 原因 对此 就是 技能 文件名 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 咖啡网 互联网科技公司 美国互联网科技巨头监管 互联网科技集团 西安互联网科技 长亮科技互联网金融 湖南洣水互联网科技有限公司扣款 卫星互联网科技股票 哈尔滨新华互联网科技学院 互联网科技教育视频 河南住房之家互联网科技 互联网金融科技名词解释 国大互联网教育科技有限公司薪资 四川互联网展示科技馆设计 江苏互联网智能科技软件 云鲸互联网络科技有限公司 艺电能源互联网科技有限公司招聘 互联网金融运营模式中的金融科技 北京互联网科技类企业分布 恒生互联网科技趋势 互联网医疗科技 科技类的互联网平台 华中科技有哪些互联网大佬 互联网金融科技展 本届互联网博览会上的黑科技 河南住房之家互联网科技 互联网数据科技专业 互联网金融科技公司的优势 广州千川互联网科技有限公司 陕西彩京云互联网科技有限公司
0