fix(api): отменил исключения авторизации для контейнера.

This commit is contained in:
Mikhail Trubnikov
2025-11-21 12:37:46 +10:00
parent 89c128641e
commit ba99e74ea6

View File

@@ -37,17 +37,7 @@ namespace PARR.API.Authentication
if (userIsBlocked) if (userIsBlocked)
return AuthenticateResult.Fail($"IP address is on the blocking list. IP: {ipClient}"); return AuthenticateResult.Fail($"IP address is on the blocking list. IP: {ipClient}");
// если зашли с IP 127.0.0.1, то это скорей всего опрос состояния контейнера
// если этот пользователь не заведен в БД, то разрешаем ему вход, но роли не даем (он получит доступ как аноним)
// если он есть в БД, то применятся правила из БД
var user = await authService.GetUserAsync(ipClient); var user = await authService.GetUserAsync(ipClient);
if (user == null && ipClient == "127.0.0.1")
{
// это опрос состояния контейнера, возвращаем что ок, без ролей
return CreateLocalAuth(ipClient);
}
if (user == null) if (user == null)
return AuthenticateResult.Fail($"IP address not defined. IP: {ipClient}"); return AuthenticateResult.Fail($"IP address not defined. IP: {ipClient}");
@@ -69,19 +59,19 @@ namespace PARR.API.Authentication
} }
private AuthenticateResult CreateLocalAuth(string ipClient) //private AuthenticateResult CreateLocalAuth(string ipClient)
{ //{
// Когда контейнер запрашивает health статус, // // Когда контейнер запрашивает health статус,
var claims = new List<Claim> { // var claims = new List<Claim> {
new Claim(ClaimTypes.Name, ipClient) // new Claim(ClaimTypes.Name, ipClient)
}; // };
var claimsIdentity = new ClaimsIdentity(claims, Scheme.Name); // var claimsIdentity = new ClaimsIdentity(claims, Scheme.Name);
var claimsPrincipal = new ClaimsPrincipal(claimsIdentity); // var claimsPrincipal = new ClaimsPrincipal(claimsIdentity);
return AuthenticateResult.Success(new AuthenticationTicket(claimsPrincipal, Scheme.Name)); // return AuthenticateResult.Success(new AuthenticationTicket(claimsPrincipal, Scheme.Name));
} //}
} }