Documentação #893
Atualizado por Rodrigo Admin há 12 dias
Gerenciamento de usuários por tenant, convites e controle de acesso baseado em papéis (RBAC).
**Plano Módulo 2 — Painel de Usuários e Permissões**
Sprint 5: Infraestrutura de Convites e Modelagem
- [BD] Criar model UserInvitation (tokenHash, email, role, current_tenant, expiresAt, status).
- [BD] Adicionar campo status (PENDING, ACTIVE, DEACTIVATED) na tabela User.
- [BE] Implementar serviço de envio de e-mails transacionais (Resend/SMTP).
- [BE] Implementar lógica de geração de tokens seguros e expiração automática.
Sprint 6: Regras de Negócio, RBAC e Endpoints (É02.S06)
- [BE] Implementar middleware/guard de RBAC (@Roles()) no NestJS.
- [BE] Criar endpoint POST /users/invite para disparo de convites por Admins/Managers.
- [BE] Criar endpoint POST /users/accept-invitation para registro de senha e ativação do usuário.
- [BE] Implementar CRUD de usuários com isolamento estrito de Tenant.
Sprint 7: Interface Administrativa e Onboarding (É02.S07)
- [FE] Criar UserListView: listagem de membros com busca, filtros de status e ações de convite.
- [FE] Criar InviteUserDialog: modal de seleção de e-mail e papel (Admin/Manager/User).
- [FE] Criar AcceptInvitationView: onboarding para definição de senha por usuários convidados.
- [FE] Implementar guards de rota no GoRouter baseados no UserRole e notificações de acesso negado.