Back to questions
Junior — Middle
71
Имел ли опыт работы с фильтрами авторизации в приложениях?
Answer from AI
sobes.tech AI
В C# фильтры авторизации часто используются в ASP.NET Core для контроля доступа к ресурсам приложения. Они позволяют проверить, имеет ли пользователь необходимые права, прежде чем выполнить действие контроллера.
Пример простого фильтра авторизации:
public class CustomAuthorizationFilter : IAuthorizationFilter
{
public void OnAuthorization(AuthorizationFilterContext context)
{
var user = context.HttpContext.User;
if (!user.Identity.IsAuthenticated)
{
context.Result = new UnauthorizedResult();
}
// Дополнительные проверки ролей или прав можно добавить здесь
}
}
Этот фильтр можно применить к контроллеру или действию через атрибут:
[ServiceFilter(typeof(CustomAuthorizationFilter))]
public class MyController : Controller
{
// Действия
}
Таким образом, фильтры авторизации позволяют централизованно управлять доступом и упрощают поддержку безопасности в приложении.