2017-02-21 10 views
1

Ich versuche, IdentityServer4 mit persistenter Datenbank zu verwenden. Ich habe eine Oracle db. Ich plane, die ConfigurationDbContext und PersistedGrantDbContext zu erweitern, um einige Oracle-spezifische Anpassung zu tun.IdentityServer4 mit persistenter Datenbank

PersistedGrantDbContext

public class IdentityPersistedGrantDbContext : PersistedGrantDbContext { 
    public IdentityPersistedGrantDbContext(DbContextOptions<PersistedGrantDbContext> options, OperationalStoreOptions storeOptions) 
     : base(options, storeOptions) { 
    } 
} 

ConfigurationDbContext

public class IdentityConfigurationDbContext : ConfigurationDbContext { 
    public IdentityConfigurationDbContext(DbContextOptions<ConfigurationDbContext> options, ConfigurationStoreOptions storeOptions) 
     : base(options, storeOptions) { 
    } 
} 

In der Startklasse, ich sagen, dass ich die IdentityServer die benutzerdefinierten Klassen verwenden?

Antwort

2

Gerät IPersistedGrantStore wie gesehen here. Und fügen Sie es der ASP.NET Core ServiceCollection (auch als DI-Container bezeichnet) hinzu.

zB:

services.AddTransient<IPersistedGrantStore, MyPersistedGrantStore> 

wo MyPersistedGrantStore verwendet, dass DbContext diese CRUD-Operationen zu tun, wie in der Schnittstelle/Vertrag definiert.

+0

Wie kann ich einen Benutzer mit Userame und PWD validieren. – User

0

Es befindet sich in IdentityServer4.EntityFramework. Fügen Sie eine using-Anweisung für IdentityServer4.EntityFramework.DbContexts hinzu