Magna Concursos
3521075 Ano: 2025
Disciplina: TI - Desenvolvimento de Sistemas
Banca: IF-SUL
Orgão: IF-SUL

Em uma aplicação Node.js usando o framework Express, é possível criar middlewares para diferentes propósitos, como autenticação, manipulação de requisições, e registro de logs. Suponha que você tenha a seguinte função de middleware de autenticação que verifica se o usuário tem permissão para acessar uma rota específica com base no papel (role) associado ao usuário.

function authRoleMiddleware(role) {

return (req, res, next) => {

if (req.user.role !== role) {

return res.status(403).send('Access forbidden: Insufficient permissions');

}

next();

}

}

Este middleware é utilizado da seguinte forma para restringir o acesso de rotas a usuários com o papel de “admin”:

var express = require('express');

var app = express();

app.use('/admin', authRoleMiddleware('admin'));

app.get('/admin', (req, res) => {

res.send('Welcome, admin!');

});

app.listen(3000);

Considerando o funcionamento desse middleware, qual seria um problema que poderia surgir ao aplicá-lo em rotas que utilizam diferentes middlewares, e como esse problema pode ser resolvido?

 

Provas

Questão presente nas seguintes provas