Pular para conteúdo

ADR 0005 — Papéis de usuário

Status: Proposta (aguarda confirmação) · Data: 09/11/2026

Contexto

A equipe que usa o sistema tem perfis distintos: quem administra (usuários, OLTs, configurações), quem trabalha na rede (técnicos de campo e NOC) e quem só consulta (atendimento, comercial).

Decisão

Três papéis, mais o superusuário do Django:

Papel Pode
Superusuário Tudo, inclusive a administração técnica (/admin/)
Administrador Tudo no sistema: usuários, OLTs, configurações, alertas
Técnico Consultar e alterar a rede; autorizar e vincular ONUs
Visualizador Só consultar

Nas views da API: VisualizadorLe (todos leem, técnico e administrador alteram) e SomenteAdministrador.

Alternativas consideradas

  • Permissões finas do Django (por modelo e ação): mais flexível, mas complexo de manter para uma equipe pequena. Pode ser adotado depois sem quebrar os papéis.

Consequências

Na importação de usuários de sistemas anteriores, cada perfil de origem é mapeado para um destes papéis.