public IdentityServerHost(IdentityServerHostConfiguration configuration, int port = 6262) { if (configuration == null) { throw new ArgumentNullException(nameof(configuration), IdentityServerHostConfigurationNull); } endpoint = new IPEndPoint(loopbackAddress, port); webHost = new WebHostBuilder() .UseKestrel() .ConfigureServices(services => ConfigureServices(services, configuration)) .Configure(Configure) .UseUrls(BaseAddress.ToString()) .Build(); }
private static void ConfigureServices(IServiceCollection services, IdentityServerHostConfiguration configuration) { var identityServerBuilder = services.AddIdentityServer() .AddInMemoryClients(configuration.Clients) .AddInMemoryIdentityResources(configuration.IdentityResources) .AddInMemoryApiResources(configuration.ApiResources) .AddDefaultSecretParsers() .AddDefaultSecretValidators() .AddDefaultEndpoints(); if (configuration.SigningCredentials != null) { identityServerBuilder.AddSigningCredential(configuration.SigningCredentials); } else { identityServerBuilder.AddDeveloperSigningCredential(); } }