The key was not found in the key ring. Unable to validate token(钥匙环里找不到钥匙。无法验证令牌)
问题描述
在我的应用程序前面添加了NGNIX代理后,我在标识服务器4上收到奇怪的错误。
我的.Net核心身份服务器在端口8080上的Docker Container上运行
Ngnix代理(使用https://github.com/nginx-proxy/nginx-proxy)配置为将443路由到停靠容器8080
在回调终结点上成功进行身份验证后,无法验证伪造令牌。
奇怪的是,当.Net核心应用程序启动时,我播种的整个场景对用户有效。但通过我的API创建新的失败。
任何想法或教导都值得赞赏。
推荐答案
由ASP.NET核心发布的会话Cookie使用数据保护API进行加密。
用于签署Cookie的密钥存储在密钥环中。如果您现在重新部署应用程序,并且没有正确配置它,则将在新密钥环中颁发新的加密密钥。
如果找不到用于加密Cookie的密钥,则这意味着无法再解密所有客户端浏览器中的现有会话Cookie。
请参阅article关于该接口的介绍和article如何配置该接口的介绍。
这既适用于您的身份服务器应用程序,也适用于您的客户端应用程序,因为两者都使用数据保护API,因此两者都需要有一个永久的密钥环。当您重新部署容器时,密钥环将丢失,除非您已将密钥环放置在文件系统上的某个永久卷中或以其他方式将其持久化。该接口支持多种位置存储密钥环,包括数据库、Redis、Azure密钥库..这篇关于钥匙环里找不到钥匙。无法验证令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:钥匙环里找不到钥匙。无法验证令牌
基础教程推荐
- 如果有人提交恶意软件Nuget包怎么办? 2022-01-01
- 我应该在后面的代码中直接使用 Linq To SQL 还是使 2022-01-01
- WPF 模态进度窗口 2022-01-01
- 如何使用 .Net 检查 Active Directory 服务器是否已启动并正在运行? 2022-01-01
- 当值可以是对象或空数组时反序列化 JSON 2022-01-01
- .NET SerialPort DataReceived 事件未触发 2022-01-01
- 禁止输入少量字符,例如'<'、'&a 2022-01-01
- C# 从 List<List<int>> 中删除重 2022-01-01
- Azure Functions:CosmosDBTrigger 未在 Visual Studio 中触发 2022-01-01
- Moq It.Is<>不匹配 2022-01-01
