Sobes.tech
Junior — Middle

Tem experiência com filtros de autorização em aplicações?

sobes.tech IA

Resposta da IA

Em C#, os filtros de autorização são frequentemente utilizados no ASP.NET Core para controlar o acesso aos recursos da aplicação. Eles permitem verificar se o utilizador possui os direitos necessários antes de executar uma ação do controlador.

Exemplo de um filtro de autorização simples:

public class CustomAuthorizationFilter : IAuthorizationFilter
{
    public void OnAuthorization(AuthorizationFilterContext context)
    {
        var user = context.HttpContext.User;
        if (!user.Identity.IsAuthenticated)
        {
            context.Result = new UnauthorizedResult();
        }
        // Verificações adicionais de papéis ou direitos podem ser adicionadas aqui
    }
}

Este filtro pode ser aplicado a um controlador ou ação através de um atributo:

[ServiceFilter(typeof(CustomAuthorizationFilter))]
public class MyController : Controller
{
    // Ações
}

Assim, os filtros de autorização permitem gerir o acesso de forma centralizada e facilitam a manutenção da segurança na aplicação.