Add log on check if admin

This commit is contained in:
2025-11-08 02:21:44 +07:00
parent ca705d5b76
commit 60cd0816f4

View File

@@ -18,7 +18,7 @@ public class AdminConfigurationService : IAdminConfigurationService
private readonly IServiceScopeFactory _serviceScopeFactory; private readonly IServiceScopeFactory _serviceScopeFactory;
public AdminConfigurationService( public AdminConfigurationService(
IConfiguration configuration, IConfiguration configuration,
ILogger<AdminConfigurationService> logger, ILogger<AdminConfigurationService> logger,
IServiceScopeFactory serviceScopeFactory) IServiceScopeFactory serviceScopeFactory)
{ {
@@ -37,7 +37,7 @@ public class AdminConfigurationService : IAdminConfigurationService
// First check configuration (for backward compatibility) // First check configuration (for backward compatibility)
var adminUserNames = GetAdminUserNames(); var adminUserNames = GetAdminUserNames();
var isAdminFromConfig = adminUserNames.Contains(userName, StringComparer.OrdinalIgnoreCase); var isAdminFromConfig = adminUserNames.Contains(userName, StringComparer.OrdinalIgnoreCase);
if (isAdminFromConfig) if (isAdminFromConfig)
{ {
_logger.LogInformation("User {UserName} has admin privileges from configuration", userName); _logger.LogInformation("User {UserName} has admin privileges from configuration", userName);
@@ -49,9 +49,12 @@ public class AdminConfigurationService : IAdminConfigurationService
{ {
using var scope = _serviceScopeFactory.CreateScope(); using var scope = _serviceScopeFactory.CreateScope();
var userRepository = scope.ServiceProvider.GetRequiredService<IUserRepository>(); var userRepository = scope.ServiceProvider.GetRequiredService<IUserRepository>();
var user = await userRepository.GetUserByNameAsync(userName); 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) if (user != null && user.IsAdmin)
{ {
_logger.LogInformation("User {UserName} has admin privileges from database", userName); _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); _logger.LogWarning(ex, "Error checking admin status for user {UserName} from database", userName);
// If database check fails, fall back to config-only result // If database check fails, fall back to config-only result
} }
return false; return false;
} }
@@ -77,8 +80,8 @@ public class AdminConfigurationService : IAdminConfigurationService
} }
return adminUsers.Split(';', StringSplitOptions.RemoveEmptyEntries) return adminUsers.Split(';', StringSplitOptions.RemoveEmptyEntries)
.Select(u => u.Trim()) .Select(u => u.Trim())
.Where(u => !string.IsNullOrEmpty(u)) .Where(u => !string.IsNullOrEmpty(u))
.ToList(); .ToList();
} }
} }