Files
Investidor-V2/docs/implementation/adr/ADR-007-rls.md
T
nala 4f35313d06
tests / ci (push) Canceled after 0s
novas funcionalidades dos formulario
2026-10-02 11:13:37 +02:00

1.4 KiB

ADR-007 — RLS e autorização SQL

  • Estado: Aceite como gate de segurança; activação por tabela bloqueada até matriz de papéis e contexto aprovada.
  • Data: 2026-10-01
  • Contexto: baseline não encontrou ENABLE/FORCE ROW LEVEL SECURITY ou CREATE POLICY; permissões SQL e bypass não foram auditados. Decisões anteriores proíbem inventar roles/tenants.

Decisão

Preservar Policies/Gates da aplicação como autorização obrigatória e não declarar RLS activo. Antes de expor dados protegidos a mais de um actor, aprovar matriz de papéis, fronteiras de isolamento/tenant, contas de runtime/migration e comportamento para jobs. Depois, aplicar RLS em tabelas e operações explicitamente mapeadas, usando papel runtime sem propriedade/BYPASSRLS, políticas USING/WITH CHECK, e FORCE ROW LEVEL SECURITY quando compatível com operações técnicas. Contexto por pedido deve ser transaccional e limpo ao devolver conexão ao pool. Garantir testes permitidos e negados, inclusive acesso SQL directo e papel privilegiado conforme ameaça.

Alternativas e consequências

RLS genérico com tenant inventado é rejeitado; RLS desligado como se fosse controlo é igualmente rejeitado. Até a matriz e auditoria serem aprovadas, a cobertura permanece bloqueada e a aplicação não deve alegar isolamento na camada SQL. Sem alteração funcional nesta Etapa 1.