应用程序始终给出异常:反序列化令牌时引发异常.无法解密防伪令牌



我正在使用 asp.net 核心2.2.1

我在 IIS 上发布了我的代码。每当我第一次运行我的应用程序时,它都会给出如下所示的异常:

Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery|错误|一 反序列化令牌时引发异常。防伪 令牌无法解密。

我试图从最近5天解决此问题,参考了许多链接但没有结果。我也尝试跟随禁用AntiForgery但没有结果。

services.AddDataProtection().DisableAutomaticKeyGeneration();

这是禁用Antiforgery或任何其他解决方案来解决相同问题的方法。

很可能令牌之前已使用密钥加密,该密钥不是您的服务器在发出此异常时使用的密钥。您能否尝试将密钥保留在某个地方,以便在重新启动时始终使用相同的密钥,例如使用 https://learn.microsoft.com/en-us/aspnet/core/security/data-protection/configuration/overview?view=aspnetcore-3.1#persistkeystofilesystem ?

您还应该检查日志,因为您的应用程序将记录的第一件事是关于密钥的。例如,如果你不坚持它,你可以得到一些日志,比如:"Using an in-memory repository. Keys will not be persisted to storage."所以,请检查一下。

相关内容

最新更新