diff --git a/applications/KonSoft.AuthServer/KonSoftAuthServerModule.cs b/applications/KonSoft.AuthServer/KonSoftAuthServerModule.cs index f9eb100..3be84b5 100644 --- a/applications/KonSoft.AuthServer/KonSoftAuthServerModule.cs +++ b/applications/KonSoft.AuthServer/KonSoftAuthServerModule.cs @@ -26,6 +26,7 @@ using Volo.Abp.Localization; using Volo.Abp.Modularity; using Volo.Abp.OpenIddict; using Volo.Abp.Security.Claims; +using Volo.Abp.UI.Navigation.Urls; using IPNetwork = Microsoft.AspNetCore.HttpOverrides.IPNetwork; namespace KonSoft; @@ -50,17 +51,20 @@ public class KonSoftAuthServerModule : AbpModule { builder.AddValidation(options => { - options.AddAudiences("KonSoft"); + options.AddAudiences(KonSoftConsts.AuthServerAudience); options.UseLocalServer(); options.UseAspNetCore(); }); }); - context.Services.Configure(options => + PreConfigure(options => { - options.KnownNetworks.Clear(); - options.KnownProxies.Clear(); - options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; + options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | + ForwardedHeaders.XForwardedProto | + ForwardedHeaders.XForwardedHost; + + options.KnownNetworks.Add(new IPNetwork(IPAddress.Parse("::ffff:127.0.0.1"), 104)); + options.KnownProxies.Add(IPAddress.Parse("::ffff:127.0.0.1")); }); if (!hostingEnvironment.IsDevelopment()) @@ -107,6 +111,16 @@ public class KonSoftAuthServerModule : AbpModule options.ApplicationName = "AuthServer"; }); + Configure(options => + { + options.Applications["MVC"].RootUrl = configuration["App:SelfUrl"]; + options.RedirectAllowedUrls.AddRange(configuration["App:RedirectAllowedUrls"]?.Split(',') ?? + Array.Empty()); + + options.Applications["Angular"].RootUrl = configuration["App:ClientUrl"]; + options.Applications["Angular"].Urls[AccountUrlNames.PasswordReset] = "account/reset-password"; + }); + Configure(options => { options.IsJobExecutionEnabled = false; }); context.Services.Configure(options => @@ -139,18 +153,16 @@ public class KonSoftAuthServerModule : AbpModule var app = context.GetApplicationBuilder(); var env = context.GetEnvironment(); - if (!env.IsDevelopment()) + app.UseForwardedHeaders(); + app.Use(async (ctx, next) => { - app.UseErrorPage(); - app.UseForwardedHeaders(); - app.UseHsts(); - } + ctx.Request.Scheme = "https"; + await next(); + }); - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - app.UseForwardedHeaders(); - } + app.UseDeveloperExceptionPage(); + app.UseAbpRequestLocalization(); + app.UseErrorPage(); app.UseAbpRequestLocalization();