Decouple SGU authentication from profile pages

This commit is contained in:
2026-09-01 14:43:57 -06:00
parent fd3eb537a1
commit 0391320a3e
8 changed files with 221 additions and 96 deletions
+9 -2
View File
@@ -31,7 +31,9 @@ public sealed class BrokerOptions
throw new InvalidOperationException("The NTLM endpoint host must be present in AllowedRedirectHosts.");
}
if (Ntlm.TimeoutSeconds is < 2 or > 60 || Ntlm.MaxRedirects is < 0 or > 10)
if (Ntlm.TimeoutSeconds is < 2 or > 60 ||
Ntlm.ProfileTimeoutSeconds is < 2 or > 30 ||
Ntlm.MaxRedirects is < 0 or > 10)
{
throw new InvalidOperationException("NTLM timeout or redirect limits are outside the supported range.");
}
@@ -43,6 +45,7 @@ public sealed class BrokerOptions
foreach (string profilePath in new[]
{
Ntlm.AuthenticationPath,
Ntlm.AdministrativeProfilePath,
Ntlm.StudentProfilePath,
Ntlm.MenuProfilePath
@@ -117,10 +120,14 @@ public sealed class NtlmOptions
public string Domain { get; init; } = string.Empty;
public int TimeoutSeconds { get; init; } = 30;
public int TimeoutSeconds { get; init; } = 20;
public int ProfileTimeoutSeconds { get; init; } = 10;
public int MaxRedirects { get; init; } = 5;
public string AuthenticationPath { get; init; } = "/psulsa/";
public string AdministrativeProfilePath { get; init; } =
"/psulsa/gadmon/capitalhumano/controlincidencias/incidencias.aspx";