如何在 .NET Core 中存储机器密钥以加密/解密 auth cookie

How to store machine key in .NET Core for encrypting / decrypting auth cookie

我有一个 MVC5 应用程序,它通过创建一个可以被其他 MVC 应用程序读取的 cookie 作为门户上的单点登录。这很好用,因为我已经对齐了机器密钥并设置了 cookie 域。

我现在需要添加一个 .NET Core 应用程序,它也需要能够读取身份验证 cookie。

我了解到机器密钥不再存储在 .NET Core 应用程序的 Web 配置中,而是存储在文件系统的目录中。

我遵循了 Microsoft 关于如何执行此操作的教程,但它似乎没有解释应如何存储密钥。

有人知道如何实际存储机器密钥值以便 DataProtectionProvider 可以访问它吗?

谢谢

所以我误以为你自己将密钥文件添加到传递给 DataProtectionProvider.Create 的文件系统位置。

事实证明,cookie加密密钥在我们使用时被应用程序自动放置在该目录中。所以我猜测通过将两个应用程序指向相同的位置(可能有一点摆弄)然后他们应该能够共享身份验证 cookie。