Usuários e Permissões
A administração de usuários e o sistema de permissões controlam quem pode acessar quais páginas e ações dentro da plataforma HSBR.
Como acessar
Rota: /usuarios — exige permissão administracao.usuarios e privilégio de administrador.
Modelo de permissões
As permissões são organizadas em uma estrutura hierárquica de grupo → ação:
type Permissions = Record<string, boolean | Record<string, boolean>>;
Cada grupo representa um módulo (produto, movimentacao, administracao, etc.) e cada ação representa uma operação dentro do módulo. Quando o valor é diretamente boolean, o módulo inteiro é controlado por uma única flag.
Tipos de usuário
- Administrador (
admin: true) — acesso total a todas as páginas e ações, ignorando o mapa de permissões. - Usuário comum — acesso restrito ao que está marcado como
trueem seu mapapermissoes. - Usuário device (gerado por seed
db:seeduser) — usado por leitores fixos. Recebe permissões e hierarquia atribuídas no gerenciador.
Mapa de permissões disponíveis
Cada página da aplicação declara a permissão necessária via <ProtectedPage requiredPermission="...">. Abaixo o mapa atual extraído do código.
Página inicial e dashboards
inicio—/inicio
Etiquetas e Impressão (Tier Impressão)
etiquetas—/etiquetasimpressao—/impressao(grade de impressão)produto.cadastro_produto—/cadastro-produtoproduto.gerar_ativos—/gerar-ativos
Ativos e Associações
ativos—/ativosproduto.associar_epc—/associar-epcproduto.associar_beacon—/associar-beacon
Inventários
inventarios—/inventarios
Movimentação
movimentacao.movimentar—/movimentacaomovimentacao.registros—/movimentacao/registrosmovimentacao.movimentacao-temporeal—/movimentacoes-temporealmovimentacao.mapa—/mapa
Separação de Ativos
separacao_ativos.ordem_separacao—/ordem-separacaoseparacao_ativos.relatorios_separacao—/relatorios-separacao
Outros módulos
pacotes—/pacotes(requer feature flagpacotes)niveis_organizacionais—/niveis-organizacionais
Administração
administracao.usuarios—/usuarios(requer admin)administracao.configuracao—/configuracao(feature flags)administracao.configuracao_cores—/configuracao-coresadministracao.logs—/logs
Como usar a tela de Usuários
- Acesse
/usuarios(apenas administradores). - Clique em Criar usuário para abrir o formulário.
- Preencha nome, e-mail, senha inicial e — se aplicável — marque Administrador (substitui o mapa de permissões).
- No bloco de permissões, marque/desmarque cada ação por grupo.
- Use o botão Padrão para aplicar o template
useDefaultPermissions(consulta/user/default-permissionsno backend). - Use Limpar tudo para zerar.
- Use o botão Padrão para aplicar o template
- Atribua a hierarquia organizacional (locais a que o usuário tem acesso) na aba correspondente.
- Clique em Salvar.
Boas práticas
- Princípio do menor privilégio: comece com o template padrão e adicione permissões só conforme necessário.
- Admins escassos: marque
admin: trueapenas para operadores de TI/responsáveis pelo sistema. - Usuários device: ao criar um ponto de leitura para dispositivo fixo, atribua a hierarquia de locais ao usuário device e dê permissão somente ao local correspondente.
- Auditoria: alterações em usuários ficam registradas em Logs do Sistema.