private static IIdentityServerBuilder AddConfiguration(this IIdentityServerBuilder builder, IdentityServerConfig config) => config.UseConfigurationStore ? builder .AddConfigurationStore(options => { options.ConfigureDbContext = b => b.UseSqlServer(config.ConfigurationStoreConnectionString, sql => sql.MigrationsAssembly(migrationsAssembly)); }) : builder .AddInMemoryClients(Config.Clients) .AddInMemoryApiResources(Config.Apis) .AddInMemoryIdentityResources(Config.Ids);
private static IIdentityServerBuilder AddPersistedGrants(this IIdentityServerBuilder builder, IdentityServerConfig config) => config.UseOperationalStore ? builder .AddOperationalStore(options => { options.ConfigureDbContext = b => b.UseSqlServer(config.OperationalStoreConnectionString, sql => sql.MigrationsAssembly(migrationsAssembly)); }) : builder .AddInMemoryPersistedGrants();
public static IIdentityServerBuilder AddIdentityServer(this IServiceCollection services, IdentityServerConfig config) => services .AddIdentityServer(options => { options.Events.RaiseErrorEvents = true; options.Events.RaiseInformationEvents = true; options.Events.RaiseFailureEvents = true; options.Events.RaiseSuccessEvents = true; }) .AddConfiguration(config) .AddPersistedGrants(config);