⚠️ Não alocar ainda - irei ainda especificar estes detalhes
Objetivo
Os voluntários do projeto podem ter vários papeis, como "coletores", "avaliadores", "renovadores"... e o sistema precisa entender que um usuário terá uma ou mais funções.
Adequar rotas para funcionarem de forma a permitir corretamente acesso aos recursos. Cada middleware terá que buscar o usuário do token no banco, obter as funções, para então saber se pode ou não fazer algo.
[ ] Middleware requireAuth que só deixa continuar se o usuário informado no token existir e estiver ativo. Adicionar esse middleware em cada rota.
[ ] Middlware requireManager, só deixa avançar se o usuário autenticado for manager
PUT - /users/me/ ou /users/{id}/ - apenas manager, ou usuário (qualquer nível) editando a sí próprio - esta segunda regra sugiro ter uma função só para este caso mesmo.
GET, DEL, POST - /users/ || /users/{id}/ - apenas manager
⚠️ Não alocar ainda - irei ainda especificar estes detalhes
Objetivo
Os voluntários do projeto podem ter vários papeis, como "coletores", "avaliadores", "renovadores"... e o sistema precisa entender que um usuário terá uma ou mais funções.
Modelo
Rotas e middlewares
Adequar rotas para funcionarem de forma a permitir corretamente acesso aos recursos. Cada middleware terá que buscar o usuário do token no banco, obter as funções, para então saber se pode ou não fazer algo.
requireAuth
que só deixa continuar se o usuário informado no token existir e estiver ativo. Adicionar esse middleware em cada rota.requireManager
, só deixa avançar se o usuário autenticado formanager
PUT
-/users/me/
ou/users/{id}/
- apenas manager, ou usuário (qualquer nível) editando a sí próprio - esta segunda regra sugiro ter uma função só para este caso mesmo.GET
,DEL
,POST
-/users/
||/users/{id}/
- apenas manager