Arquitetura Backend-For-Frontend
O BFF Gateway é responsável por blindar a topologia interna do banco de dados e padronizar contratos:
Responsabilidades do BFF
-
Extração e Mapeamento de Host: Converte o domínio da requisição no
partner_idcorrespondente consultando a tabelaconnect.partner_brandings. -
Injeção Transparente de Contexto: Adiciona os identificadores requeridos nas chamadas às RPCs sem expor essas chaves primárias ao cliente frontend.
-
Mapeamento Sanitizado de Erros (RFC 7807): Captura exceções do PostgreSQL e emite respostas HTTP padronizadas (
application/problem+json), suprimindo nomes de tabelas ou mensagens internas do motor relacional. -
Delegação Estrita de RLS e Zero Bypass: É terminantemente vedado o uso de
adminSupabase(service_rolecom privilégioBYPASSRLS) como mecanismo de fallback para consultas de leitura de recursos operacionais (organizações, unidades, instâncias de WhatsApp). As consultas devem ser submetidas com o JWT da sessão do usuário autenticado (serverSupabaseClient(event)), garantindo que as políticas relacionais de RLS eFORCE ROW LEVEL SECURITYgovernem de modo absoluto o escopo de dados retornado. -
Geração Dinâmica de Cards Open Graph & Blindagem SSRF: Provê a rota
/api/ogpara rasterização em tempo real de cards de link preview multi-tenant via@resvg/resvg-js, empacotamento de fontes Inter e validação defensiva de IP/DNS contra SSRF (ver Geração Dinâmica de Cards Open Graph Multi-Tenant).