2017-08-23 50 views
6

我正在尝试将NoSql数据存储集成到Identity Server 4(如Cosmos DB)中。我想知道如果有人在那里做了类似的事情和/或如果可能的话。是否可以使用NoSQL for Identity Server 4?

+2

是的。只需实现你自己的'IClientStore'和'IPersistedGrantStore'等等。如果你看看IdentityServer4.EntityFramework,它应该给你一个关于如何实现你想要的东西的好主意。 – Mardoxx

+0

谢谢。我会研究这一点。看起来我也必须实现配置和操作存储..但它们似乎已经植根于SQL依赖关系。即:.AddConfigurationStore(builder => builder.UseSqlServer ...和.AddOperationalStore(builder =>) builder.UseSqlServer。任何想法?再次感谢! – Dustin

+0

这是配置EntityFramework。(我相信它是设置IQueryableProvider或类似的东西,而不是引用在EF内部引用)你可能不需要担心! – Mardoxx

回答

3

Off- course,可以为IdentityServer4使用NoSQL数据库。为什么不?

这里是在ConfigureServices MongoDB

“初始管道”()在startup.cs方法的例子。

public void ConfigureServices(IServiceCollection services) 
    { 
    ... 
    // --- configure identity server with MONGO Repository for stores, keys, clients and scopes --- 
    services.AddIdentityServer() 
      .AddTemporarySigningCredential() 
      .AddMongoRepository() 
      .AddClients() 
      .AddIdentityApiResources() 
      .AddPersistedGrants() 
      .AddTestUsers(Config.GetUsers()); 
    ... 
    } 

还有一个github上的项目cloudscribe,ASP.NET核心多租户与管理网站,用户,角色,权利要求书和更多的Web应用程序的基础。该项目正在为IdentityServer实施PostgreSQL(ORDBMS)和MySql。在这个项目中,您可以了解如何实现允许在数据库之间切换的系统。

+0

谢谢@MJK!我将以MongoDB实现为例来构建我自己的。 :) – Dustin

+0

@Dustin我很高兴你找到自己的方式,请不要忘记标记为答案,如果有帮助 – MJK

相关问题