首页 > 解决方案 > 在 .Net Core 5.0 和 .Net Framework 4.6.1 项目之间共享 .Net Identity

问题描述

处理需要共享同一用户身份存储库的多个项目的最佳方法是什么?

例如,我们有几个 4.6.1 框架 Web 项目(一个是 OAuth 2.0 API 项目,另一个是 ASP/MVC/Razor 报告项目),它们都在 SQL 数据库中共享相同的 (AspNetXXX) 身份表,并且这些都被填充使用我们客户的凭据。

我们正在着手开展一个新项目,该项目将通过 ChilliCream/HotChocolate 实现 GraphGL,因此,我们认为最好将其作为 .Net Core 5.0 项目启动,因为我们希望它有一些寿命。创建项目时,我们选择了“个人帐户”身份验证类型选项,该选项将身份添加到项目中。

这是一个遥远的目标,希望这三个项目能够共存——正如我们预期的那样,身份的 .Net 核心实现不再向后兼容 4.6.1 项目。我们发现任何登录到 .Net Core 项目的用户都无法再登录到旧项目,因为他们帐户上的 Password Hash 字段已作为登录的一部分进行了更新。

一种选择是将旧项目更新为 .Net Core,但我们目前没有时间这样做。

所以......(对不起,很长的问题)有没有更好的方法让用户能够对所有三个应用程序进行身份验证?

标签: c#.net.net-coreasp.net-identityidentity

解决方案


推荐阅读