Further admin api work

This commit is contained in:
Emma [it/its]@Rory&
2025-10-05 21:34:42 +02:00
parent abb1b570a4
commit e1483e9f90
17 changed files with 642 additions and 20 deletions
@@ -7,7 +7,7 @@ using Spacebar.Db.Models;
namespace Spacebar.AdminAPI.Services;
public class AuthenticationService(SpacebarDbContext db) {
public class AuthenticationService(SpacebarDbContext db, Configuration config) {
private static Dictionary<string, User> _userCache = new();
private static Dictionary<string, DateTime> _userCacheExpiry = new();
@@ -37,6 +37,6 @@ public class AuthenticationService(SpacebarDbContext db) {
throw new UnauthorizedAccessException();
}
return await db.Users.FindAsync(res.ClaimsIdentity.Claims.First(x => x.Type == "id").Value) ?? throw new InvalidOperationException();
return await db.Users.FindAsync(config.OverrideUid ?? res.ClaimsIdentity.Claims.First(x => x.Type == "id").Value) ?? throw new InvalidOperationException();
}
}
@@ -4,4 +4,6 @@ public class Configuration {
public Configuration(IConfiguration configuration) {
configuration.GetRequiredSection("SpacebarAdminApi").Bind(this);
}
public string? OverrideUid { get; set; }
}