Sistema de Permissões
O sistema Trevo utiliza um sistema de permissões baseado em tiers (níveis) que controla o acesso a funcionalidades específicas.
Visão Geral
O sistema de permissões é implementado no arquivo services/permissions.ts no frontend e verifica permissões baseadas no tipo de usuário logado.
Como Funciona
Verificação de Permissões
- Cada ação no sistema verifica se o usuário tem a permissão necessária
- Permissões são verificadas através da função
tier(user) - Retorna um objeto com flags booleanas para cada permissão
Tipos de Usuário
O sistema possui 6 tipos de usuários:
- administrador
- rad admin
- rad fisico
- rad laudos
- cliente MN
- cliente
Níveis de Permissão (Tiers)
CLIENTE
- Cliente ou Cliente MN
- Acesso limitado
ALL
- Todos os usuários autenticados
- Exceto undefined/null
GUEST
- Usuários não autenticados
- Acesso muito limitado
RAD
- RAD Laudos, RAD Físico, RAD Admin, Administrador
- Acesso a funcionalidades RAD
USER
- Todos os usuários autenticados
- Acesso básico ao sistema
ADMIN
- Apenas Administrador
- Acesso total
Permissões Específicas
USER_MANAGEMENT_BASIC
Gerenciamento básico de usuários (criar, editar clientes):
- administrador
- rad admin
- rad fisico
- rad laudos
FACILITY_MANAGEMENT_FULL
Gerenciamento completo de instalações:
- administrador
- rad admin
- rad fisico
- rad laudos
DOCUMENT_MANAGEMENT_CORE
Gerenciamento básico de documentos (upload, visualização):
- administrador
- rad admin
- rad fisico
- rad laudos
DOCUMENT_SIGN_ACCESS
Permissão para assinar documentos:
- administrador
- rad fisico
- rad admin
DOCUMENT_LIBERATE_ACCESS
Permissão para liberar documentos:
- administrador
- rad admin
- rad fisico
TEST_MANAGEMENT_ACCESS
Gerenciamento de testes:
- administrador
- rad laudos
- cliente MN
- rad fisico
- rad admin
Próximos Passos
- Papéis de Usuário - Detalhes de cada tipo de usuário
- Matriz de Permissões - Tabela completa de permissões