【问题标题】:.NET 5 Identity provider for Cosmos DBCosmos DB 的 .NET 5 身份提供程序
【发布时间】:2021-12-02 15:44:39
【问题描述】:

谁能指出是否有任何可用于支持 cosmos DB 的 .NET 5 的良好身份提供程序? (EF Core 身份提供程序除外)

我们在 .NET Core 3.1 中构建了几个应用程序,并使用 Cosmos DB Provider for Entity Framework Core 及其 Identity Provider 包。它工作得很好。但随着 .NET 5 的升级,它不再正常工作,并出现多种类型的错误。

是否有任何替代身份提供程序可以与 .NET 5 和 Cosmos 一起使用?我们使用的是原生 cosmos DB SDK。

我们只想使用用户管理和角色管理功能,但不想从头开始编写所有代码。

任何帮助将不胜感激。谢谢。

【问题讨论】:

    标签: c# .net azure-cosmosdb identity


    【解决方案1】:

    这是一个 article,我发现它替换了 Asp.Net Core Identity 的 Entity Framework Core,但提供了 SQL Server 数据库的解决方法。

    我浏览了一些 Microsoft 文档和一些博客,但直到现在还没有成功,因为我还没有找到任何 .Net5 的身份提供者 - 没有 EF 核心的 Cosmos DB,但很少有身份提供者像 Dapper 这也是仅 EF Core 身份提供者的组合。

    一种可用的解决方法是Using Cosmos DB as Identity Provider in ASP .NET Core 5 with EntityFramework Core

    我们只想使用用户管理和角色管理功能,但不想从头开始编写所有代码。

    有一个 Microsoft 文档提供有关 custom storage providers for ASP.NET Core Identity Version 5 的信息,其中提供了用户和角色管理的详细信息和自定义。

    【讨论】:

    • 谢谢。这真的很奇怪。微软将 Cosmos DB 定位为下一件大事,但没有为它构建可靠的身份管理 SDK。我看到了 Piero De Tomi 的文章和代码。他使用自定义存储提供程序方法实现了身份提供程序,但他的实现不完整。我想最好的方法是为身份编写自定义代码或在 Cosmos 上实现一个功能齐全的自定义存储提供程序。
    • @UmerNawab 我正在使用 Piero 的代码并且也为它做出了贡献,但他的实现是基于容器之间的引用数据,这更像是一种关系数据库方法,而不是嵌入式或混合方法。例如需要为 UserRoles 提供单独的容器,而您可以将用户的角色存储为 User.Roles 在单个容器中。我现在正在探索github.com/codekoenig/AspNetCore.Identity.DocumentDb,它似乎比前者更面向文档数据库。也让我知道你的想法。
    • 我想当你编写自己的实现时,你可以指定存储角色的容器。如果我没记错的话,我尝试使用 codekoenig 的实现,该实现与 .net 5 存在一些问题。请随时告知我们它的进展情况。谢谢。
    猜你喜欢
    • 2014-08-25
    • 2021-03-29
    • 1970-01-01
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    • 2020-09-28
    • 2015-08-24
    • 1970-01-01
    相关资源
    最近更新 更多