gpt4 book ai didi

c# - 失败 : Microsoft. AspNetCore.Antiforgery.Internal.DefaultAntiforgery

转载 作者:行者123 更新时间:2023-12-04 12:58:39 24 4
gpt4 key购买 nike

我在 yml 文件中有 4 个 docker 容器。

  • 数据库容器
  • 身份服务器容器(带有身份服务器的 asp.net 核心应用程序)
  • Api Server(asp.net核心应用)
  • 客户端(Angular 9 应用程序)

  • 一切都在开发 Windows 机器上运行良好,我将它部署在他的 Windows 服务器上的一个客户端上,我在 IIS 上托管了所有应用程序,在 IIS 上有 3 个不同的站点和一个单独的数据库。

    现在,我想要的是将它部署在 linux docker 容器上,整体配置运行良好,虽然需要改进(我可以做到)但我遇到了以下错误,并且在 Identity 服务器容器上使用 docker 日志显示以下错误

    fail: Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery[7] An exception was thrown while deserializing the token. Microsoft.AspNetCore.Antiforgery.AntiforgeryValidationException: The antiforgery token could not be decrypted. ---> System.Security.Cryptography.CryptographicException: The key {d7972341-6e64-467d-af09-124f5ba3e3a8} was not found in the key ring. at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData, Boolean allowOperationsOnRevokedKeys, UnprotectStatus& status) at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.DangerousUnprotect(Byte[] protectedData, Boolean ignoreRevocationErrors, Boolean& requiresMigration, Boolean& wasRevoked) at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.Unprotect(Byte[] protectedData) at Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) --- End of inner exception stack trace --- at Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgeryTokenSerializer.Deserialize(String serializedToken) at Microsoft.AspNetCore.Antiforgery.Internal.DefaultAntiforgery.GetCookieTokenDoesNotThrow(HttpContext httpContext)



    请记住,我在 Identity Server 容器上使用 pfx 文件作为证书。

    我只是不明白这个关键问题在哪里以及在 key 圈中找不到这个 key 的地方?

    任何帮助或讨论将不胜感激。

    成功后,我想在Digital Ocean上部署它

    最佳答案

    再次通过研究和不同的解决方案后,得到一个解决方案似乎有些工作。
    这篇文章的解决方案
    https://github.com/dotnet/aspnetcore/issues/3540
    作者:StefanoChiodino 到目前为止效果很好。

    我所做的只是重新创建具有所有不同端口绑定(bind)的所有容器,是的,它可以工作并生成可以由 Identity Server 解密的正确 key 。

    关于c# - 失败 : Microsoft. AspNetCore.Antiforgery.Internal.DefaultAntiforgery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62355304/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com