diff --git a/src/Managing.Application/Shared/AdminConfigurationService.cs b/src/Managing.Application/Shared/AdminConfigurationService.cs index 8e678634..baed4f2d 100644 --- a/src/Managing.Application/Shared/AdminConfigurationService.cs +++ b/src/Managing.Application/Shared/AdminConfigurationService.cs @@ -18,7 +18,7 @@ public class AdminConfigurationService : IAdminConfigurationService private readonly IServiceScopeFactory _serviceScopeFactory; public AdminConfigurationService( - IConfiguration configuration, + IConfiguration configuration, ILogger logger, IServiceScopeFactory serviceScopeFactory) { @@ -37,7 +37,7 @@ public class AdminConfigurationService : IAdminConfigurationService // First check configuration (for backward compatibility) var adminUserNames = GetAdminUserNames(); var isAdminFromConfig = adminUserNames.Contains(userName, StringComparer.OrdinalIgnoreCase); - + if (isAdminFromConfig) { _logger.LogInformation("User {UserName} has admin privileges from configuration", userName); @@ -49,9 +49,12 @@ public class AdminConfigurationService : IAdminConfigurationService { using var scope = _serviceScopeFactory.CreateScope(); var userRepository = scope.ServiceProvider.GetRequiredService(); - + var user = await userRepository.GetUserByNameAsync(userName); - + + _logger.LogInformation("User {UserName} has admin privileges from database isAdmin {isAdmin}", userName, + user.IsAdmin); + if (user != null && user.IsAdmin) { _logger.LogInformation("User {UserName} has admin privileges from database", userName); @@ -63,7 +66,7 @@ public class AdminConfigurationService : IAdminConfigurationService _logger.LogWarning(ex, "Error checking admin status for user {UserName} from database", userName); // If database check fails, fall back to config-only result } - + return false; } @@ -77,8 +80,8 @@ public class AdminConfigurationService : IAdminConfigurationService } return adminUsers.Split(';', StringSplitOptions.RemoveEmptyEntries) - .Select(u => u.Trim()) - .Where(u => !string.IsNullOrEmpty(u)) - .ToList(); + .Select(u => u.Trim()) + .Where(u => !string.IsNullOrEmpty(u)) + .ToList(); } -} +} \ No newline at end of file