Skip to content

Commit

Permalink
Configurable Logout URI (#16)
Browse files Browse the repository at this point in the history
* Try loading logout URI from environment variable

* Assign logout URI to variable before using

* Workaround URI checking

* Cast URI

* Use env var convenience function
  • Loading branch information
ivan-c authored Feb 5, 2025
1 parent 9f3e624 commit d117b23
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/server/API/Options/StartupExtensions.Options.cs
Original file line number Diff line number Diff line change
Expand Up @@ -483,14 +483,15 @@ static IServiceCollection ConfigureCompilerOptions(this IServiceCollection servi
static IServiceCollection ConfigureAuthenticationOptions(this IServiceCollection services, IConfiguration config)
{
var auth = GetAuthenticationOptions(config);
var LogoutUri = config.GetByProxy(Config.Authentication.Logout.URI);

services.Configure<AuthenticationOptions>(opts =>
{
opts.Mechanism = auth.Mechanism;
opts.SessionTimeoutMinutes = auth.SessionTimeoutMinutes;
opts.InactiveTimeoutMinutes = auth.InactiveTimeoutMinutes;
opts.Logout.Enabled = auth.Logout.Enabled;
opts.Logout.URI = auth.Logout.URI;
opts.Logout.URI = new Uri(LogoutUri);
});

switch (auth.Mechanism)
Expand Down Expand Up @@ -537,7 +538,7 @@ static AuthenticationOptions GetAuthenticationOptions(IConfiguration config)
}
auth.SessionTimeoutMinutes = session;

if (!config.TryGetValue<string>(Config.Authentication.Logout.URI, out var logout))
if (!config.TryGetByProxy(Config.Authentication.Logout.URI, out var logout))
{
if (!auth.IsUnsecured)
{
Expand Down

0 comments on commit d117b23

Please sign in to comment.