This commit is contained in:
2025-11-01 18:11:16 +08:00

View File

@ -26,6 +26,7 @@ using Volo.Abp.Localization;
using Volo.Abp.Modularity; using Volo.Abp.Modularity;
using Volo.Abp.OpenIddict; using Volo.Abp.OpenIddict;
using Volo.Abp.Security.Claims; using Volo.Abp.Security.Claims;
using Volo.Abp.UI.Navigation.Urls;
using IPNetwork = Microsoft.AspNetCore.HttpOverrides.IPNetwork; using IPNetwork = Microsoft.AspNetCore.HttpOverrides.IPNetwork;
namespace KonSoft; namespace KonSoft;
@ -50,17 +51,20 @@ public class KonSoftAuthServerModule : AbpModule
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("KonSoft"); options.AddAudiences(KonSoftConsts.AuthServerAudience);
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
}); });
context.Services.Configure<ForwardedHeadersOptions>(options => PreConfigure<ForwardedHeadersOptions>(options =>
{ {
options.KnownNetworks.Clear(); options.ForwardedHeaders = ForwardedHeaders.XForwardedFor |
options.KnownProxies.Clear(); 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()) if (!hostingEnvironment.IsDevelopment())
@ -107,6 +111,16 @@ public class KonSoftAuthServerModule : AbpModule
options.ApplicationName = "AuthServer"; options.ApplicationName = "AuthServer";
}); });
Configure<AppUrlOptions>(options =>
{
options.Applications["MVC"].RootUrl = configuration["App:SelfUrl"];
options.RedirectAllowedUrls.AddRange(configuration["App:RedirectAllowedUrls"]?.Split(',') ??
Array.Empty<string>());
options.Applications["Angular"].RootUrl = configuration["App:ClientUrl"];
options.Applications["Angular"].Urls[AccountUrlNames.PasswordReset] = "account/reset-password";
});
Configure<AbpBackgroundJobOptions>(options => { options.IsJobExecutionEnabled = false; }); Configure<AbpBackgroundJobOptions>(options => { options.IsJobExecutionEnabled = false; });
context.Services.Configure<AbpClaimsPrincipalFactoryOptions>(options => context.Services.Configure<AbpClaimsPrincipalFactoryOptions>(options =>
@ -139,18 +153,16 @@ public class KonSoftAuthServerModule : AbpModule
var app = context.GetApplicationBuilder(); var app = context.GetApplicationBuilder();
var env = context.GetEnvironment(); var env = context.GetEnvironment();
if (!env.IsDevelopment()) app.UseForwardedHeaders();
app.Use(async (ctx, next) =>
{ {
app.UseErrorPage(); ctx.Request.Scheme = "https";
app.UseForwardedHeaders(); await next();
app.UseHsts(); });
}
if (env.IsDevelopment()) app.UseDeveloperExceptionPage();
{ app.UseAbpRequestLocalization();
app.UseDeveloperExceptionPage(); app.UseErrorPage();
app.UseForwardedHeaders();
}
app.UseAbpRequestLocalization(); app.UseAbpRequestLocalization();