我正在开发一个 Multi-Tenancy 解决方案,我想使用最新的 ASP.NET Identity框架特别是Entity Framework执行。
基本上,我需要允许两个用户使用相同的用户名,尽管它在租户中必须是唯一的,但我还想使用外部登录,例如 Twitter、Microsoft、Facebook 和 Google。
据我所知,该框架在设计时并未考虑 Multi-Tenancy ,尽管它似乎允许可扩展性。我更愿意使用尽可能多的现有组件,但目前我认为我将不得不放弃 Entity Framework实现,并自己编写代码。
有没有其他人尝试过这个,他们必须自己编码多少。
最佳答案
我现在已经在 GitHub 存储库中共享了一个有效的解决方案:
https://github.com/JSkimming/AspNet.Identity.EntityFramework.Multitenant
支持 Multi-Tenancy 所需的可扩展性在 Microsoft.AspNet.Identity.EntityFramework 的 1.0.0 版本中是不可能的。 (至少不是没有大量定制工作),但可以通过 Nightly ASP.NET Web Stack NuGet Packages 在当前可用的 1.1 alpha 版本中获得。 .
我决定将我制作的内容作为 NuGet 包发布 AspNet.Identity.EntityFramework.Multitenant ,如前所述,它目前需要 Nightly ASP.NET Web Stack NuGet Packages .
我提供了两个简单的站点,它们使用该包来允许 Multi-Tenancy :
我计划随着 ASP.NET Identity 1.1 版本的发布更新该解决方案。
我希望其他人在我发布的 nuget 包中找到一些用处,非常欢迎任何反馈,请raise any issues you find .
更新
该解决方案现已更新为使用 Microsoft.AspNet.Identity.EntityFramework 的 2.0 版本。 .
关于multi-tenant - 如何使用 ASP.NET Identity 实现 Multi-Tenancy 用户登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20037145/