Pular para o conteúdo principal

ADR-003: Gestão de Acessos, Credenciais e Repositórios

Título

Adoção do padrão RBAC (Role-Based Access Control) para gerenciamento de acessos a repositórios e plataformas de infraestrutura do projeto.

Status

Aceito

Data

2026-02-27


Contexto

Em projetos acadêmicos e de código aberto, é comum a utilização de credenciais compartilhadas (ex: e-mails genéricos do grupo) para gerenciar repositórios e servidores. Contudo, essa prática fere os princípios de segurança da informação, dificulta a rastreabilidade de alterações e causa bloqueios operacionais relacionados à Autenticação de Dois Fatores (2FA), cujos tokens chegam a um único e-mail ou telefone.


Decisão

A equipe optou por adotar o padrão de mercado RBAC (Role-Based Access Control):

  • Todo o código-fonte será armazenado em repositórios dentro de uma Organização no GitHub criada especificamente para o projeto.
  • O acesso às plataformas de infraestrutura (Neon, Vercel, Railway) será feito exclusivamente por meio de convites direcionados aos e-mails pessoais ou institucionais de cada membro e do professor orientador.
  • Nenhuma credencial genérica ou compartilhada será criada.

A alternativa descartada foi a criação de uma conta genérica com e-mail compartilhado para centralizar os cadastros, prática que, apesar de simples, compromete rastreabilidade e segurança.


Consequências

Positivas:

  • Rastreabilidade: Trilha de auditoria clara sobre quem realizou cada alteração em repositórios e plataformas.
  • Descentralização de dependência: Elimina o gargalo de depender de um único aluno para ações que exijam 2FA.
  • Alinhamento com padrões de mercado: Prepara a equipe para práticas profissionais de controle de acesso.

Negativas:

  • Esforço de configuração inicial: Exige tempo adicional para configurar a organização no GitHub e disparar convites para todos os membros em todas as três plataformas.

Conformidade

  • Nenhum acesso deve ser concedido via conta genérica ou credencial compartilhada.
  • O professor orientador deve receber convite com permissão de leitura em todos os repositórios.
  • Cada desenvolvedor é responsável por não versionar o arquivo .env no GitHub, especialmente a variável DATABASE_URL.
  • Repositórios devem ter regras de proteção de branch ativas na branch principal.

Observações

  • Autor: João Pedro Santos de Brito
  • Versão: 1.0
  • Changelog:
    • 1.0 - 27/02/2026: versão inicial (João Pedro S. de Brito)

Referências: