Agente de IA deve acessar o banco de dados diretamente?
Entenda quando um agente de IA pode consultar banco de dados, quando usar API ou camada semântica e quais controles evitam vazamento e escrita indevida.
Uma consulta simples pode atravessar fronteiras invisíveis
A liderança pergunta quais clientes reduziram compras nos últimos noventa dias. Um agente recebe uma credencial de leitura e gera SQL sobre o banco da aplicação. A resposta sai em segundos.
Na consulta seguinte, o modelo combina tabelas sem considerar cancelamentos, usa a data errada para reconhecer receita e lê registros de uma unidade que o solicitante não poderia acessar. O banco respondeu corretamente. A decisão foi construída sobre um significado e um escopo incorretos.
A pergunta “agente de IA deve acessar o banco de dados diretamente?” precisa ser respondida pelo tipo de trabalho, pela autoridade do dado, pelo risco da ação e pelos controles disponíveis. Acesso técnico não equivale a permissão operacional nem a entendimento do negócio.
Em alguns casos, uma conexão somente leitura, estreita e observável pode ser útil. Em outros, o caminho adequado passa por API de domínio, camada semântica, réplica analítica, consulta aprovada ou ferramenta especializada. Escrita direta no banco exige um limiar muito mais alto e raramente deveria ser a primeira arquitetura.
O que significa acesso direto
A expressão pode esconder desenhos muito diferentes.
Credencial ampla sobre produção
O agente ou sua ferramenta recebe acesso a várias tabelas do banco principal e pode montar consultas livres. Esse caminho oferece velocidade inicial e grande superfície de risco.
Usuário somente leitura com escopo limitado
A credencial consulta views, schemas ou linhas delimitadas. Não pode alterar dados. Ainda precisa de controle sobre custo, privacidade, significado e isolamento.
Consulta por ferramenta parametrizada
O agente escolhe uma operação conhecida, como “buscar pedidos vencidos por carteira”, e fornece poucos argumentos. A ferramenta contém a consulta, aplica filtros e devolve estrutura definida.
Camada semântica ou serviço de métricas
Indicadores, dimensões, filtros e regras de cálculo ficam definidos fora do modelo. O agente seleciona perguntas dentro desse vocabulário e recebe resultados reproduzíveis.
Réplica ou ambiente analítico
A consulta ocorre fora do banco transacional, com atraso conhecido, dados reduzidos e limites próprios. Protege a operação principal, mas introduz decisões sobre atualização e validade.
API de domínio
Uma aplicação expõe operações alinhadas ao processo, como consultar oportunidade ativa, listar faturas elegíveis ou registrar uma próxima ação. Regras, identidade e invariantes permanecem no serviço responsável.
A decisão raramente é binária. A empresa escolhe qual caminho atende cada responsabilidade com o menor alcance necessário.
O banco conhece registros, mas pode não conhecer o significado vigente
Tabelas armazenam estados e eventos. A interpretação empresarial costuma depender de regras adicionais.
“Receita” pode significar pedido criado, nota emitida, pagamento confirmado ou competência reconhecida. “Cliente ativo” pode considerar contrato, compra recente, inadimplência ou produto. “Oportunidade parada” depende de estágio, última interação, próxima ação e janela definida pela operação.
Uma consulta sintaticamente correta pode usar:
- tabela derivada desatualizada;
- campo legado ainda preenchido;
- data de criação em vez de confirmação;
- status técnico que não representa o estado comercial;
- valor bruto sem cancelamento;
- registros de teste;
- timezone inadequado;
- join que duplica linhas;
- filtro que exclui exceções relevantes.
A fonte da verdade para agentes de IA define qual sistema, campo e evento possui autoridade. O acesso ao banco precisa preservar essa definição, e não contorná-la.
Quando a consulta direta pode fazer sentido
Um acesso direto de leitura pode ser aceitável quando várias condições estão presentes.
O caso é analítico ou investigativo
A saída apoia exploração, relatório ou preparação. Ela não produz consequência automática e pode passar por conferência antes de orientar uma decisão relevante.
O escopo está tecnicamente restrito
A credencial alcança somente schemas, views, colunas, linhas, clientes e períodos necessários. O filtro não depende apenas da instrução enviada ao modelo.
As definições estão documentadas
Tabelas, relações, métricas, status e datas possuem significado conhecido. Consultas aprovadas e exemplos ajudam a reduzir interpretação improvisada.
O ambiente tolera a carga
A consulta usa réplica, warehouse ou limites capazes de impedir que análise concorra com transações críticas.
A trilha é suficiente
A empresa registra solicitante, agente, consulta, parâmetros, objetos lidos, volume, duração, custo e resultado entregue.
Existe revisão proporcional ao risco
Perguntas novas, dados sensíveis, resultados atípicos e decisões materiais seguem para uma pessoa capaz de conferir definição e fonte.
Mesmo nesse cenário, o agente deveria receber acesso por uma ferramenta governada, com identidade própria e limites, em vez de guardar uma senha de banco dentro do prompt ou do ambiente genérico.
Quando evitar acesso direto
Use outro caminho quando houver:
- escrita em sistema oficial;
- dados de vários clientes sem isolamento forte;
- informação pessoal, financeira, médica ou estratégica;
- schema instável ou sem documentação;
- regras de negócio concentradas na aplicação;
- necessidade de aprovação por alçada;
- banco transacional sensível a carga;
- consultas livres sem limite de custo;
- identidade compartilhada;
- ausência de logs por solicitação;
- risco de inferência sobre campos bloqueados;
- dificuldade para revogar o acesso;
- métricas cujo cálculo muda com frequência;
- obrigação de confirmar cada efeito.
Uma prova de conceito pode começar com uma base fictícia ou anonimizada. Conectar o protótipo ao banco oficial apenas porque a consulta funcionou localmente transforma velocidade de demonstração em dívida de segurança.
Escrita direta merece uma resposta mais conservadora
Permitir INSERT, UPDATE ou DELETE dá ao agente uma rota capaz de contornar validações da aplicação, eventos, permissões e efeitos laterais.
Uma atualização de CRM pode precisar:
- validar estágio permitido;
- confirmar responsável;
- preservar histórico;
- disparar evento;
- atualizar busca e cache;
- notificar outra área;
- impedir duplicidade;
- respeitar alçada;
- gerar auditoria;
- acionar regra de SLA.
Escrever diretamente na tabela pode alterar o campo e deixar o processo inconsistente.
Prefira uma API ou ferramenta de domínio que aplique invariantes e confirme o efeito. O catálogo de ferramentas para agentes de IA mostra como transformar acessos genéricos em operações delimitadas por verbo, objeto e consequência.
Se um sistema legado só permite escrita por banco, trate a integração como uma exceção de alto risco. Use procedure restrita, transação, validação, identidade própria, idempotência, aprovação, limite de volume, confirmação e reconciliação. O agente não deveria receber SQL livre para mutar produção.
Compare cinco caminhos de acesso
| Caminho | Melhor uso | Principal vantagem | Principal risco | |---|---|---|---| | SQL livre de leitura | investigação controlada | flexibilidade | significado e escopo variáveis | | view ou consulta parametrizada | perguntas recorrentes | previsibilidade | catálogo limitado ou desatualizado | | camada semântica | métricas e análise gerencial | definição reproduzível | esforço de governança | | API de domínio | consulta e ação operacional | regras e invariantes preservadas | depende da qualidade da API | | réplica analítica | volume e exploração | protege o transacional | dado pode estar atrasado |
Uma arquitetura pode combinar todos. O erro está em escolher SQL livre como atalho universal para qualquer pergunta e qualquer consequência.
Use a decisão que será tomada como ponto de partida
Antes de conectar o agente, responda:
- qual pergunta ou ação ele precisa resolver;
- quem consumirá a saída;
- qual dado possui autoridade;
- quão atual o dado precisa estar;
- que erro seria tolerável;
- que erro seria impeditivo;
- se o resultado apenas informa ou altera o processo;
- quais filtros precisam ser obrigatórios;
- que evidência será exigida;
- qual caminho permite revogar e limitar a capacidade.
Uma consulta para explorar causas de queda no faturamento aceita interação e revisão. Uma rotina que bloqueia pedidos por risco exige definições, regras e autoridade muito mais estreitas.
A arquitetura deve acompanhar a consequência, não o entusiasmo com a facilidade de gerar SQL.
Separe descoberta, consulta aprovada e ação
Um fluxo seguro pode ter três níveis.
Descoberta
O agente interpreta a pergunta, identifica métricas, campos, período e ambiguidades. Pode propor uma consulta ou pedir esclarecimento. Ainda não acessa dado restrito.
Consulta aprovada
Uma ferramenta executa SQL parametrizado, view ou métrica conhecida sob identidade e escopo. O retorno inclui fonte, data de atualização, filtros e limitações.
Ação
Se o resultado exigir alteração, uma operação de domínio separada valida estado atual, política, permissão e aprovação. Depois confirma o efeito no sistema oficial.
Essa separação impede que uma conversa analítica ganhe autoridade de escrita por conveniência. Também permite usar modelos diferentes ou regras determinísticas em cada etapa.
Crie uma camada de ferramentas de dados
Em vez de publicar o banco inteiro, exponha capacidades reconhecíveis.
Exemplos:
consultar_pipeline_por_periodo;listar_oportunidades_sem_proxima_acao;calcular_receita_confirmada;buscar_pedidos_com_divergencia;consultar_capacidade_por_equipe;obter_historico_cliente_autorizado;comparar_indicador_com_meta_vigente.
Cada ferramenta deve declarar:
- pergunta atendida;
- fontes;
- definição;
- parâmetros;
- filtros obrigatórios;
- nível de atualização;
- público autorizado;
- volume máximo;
- formato de saída;
- evidência;
- dono;
- versão.
O agente continua flexível na interpretação da linguagem. A empresa preserva a execução das consultas que carregam significado operacional.
Se usar text-to-SQL, coloque o modelo dentro de uma fronteira
Text-to-SQL converte perguntas em consultas. A capacidade pode acelerar análise, mas a geração não deveria chegar ao banco sem controles.
Uma fronteira mínima inclui:
Schema reduzido
Mostre somente tabelas, views e colunas necessárias ao caso. Expor o catálogo inteiro aumenta seleção incorreta e revela informação desnecessária.
Dicionário semântico
Descreva significado, relacionamento, status, datas, unidades, campos obsoletos e métricas aprovadas.
Parser e validador
Bloqueie comandos de escrita, múltiplas instruções, funções perigosas, acesso a schemas proibidos e padrões que escapem da política.
Reescrita de escopo
A camada técnica injeta filtros obrigatórios de tenant, unidade, período e finalidade. O modelo não controla a fronteira de autorização.
Planejamento de custo
Analise a consulta antes da execução. Limite linhas, tempo, memória, joins, varredura e concorrência.
Execução somente leitura
Use credencial restrita, transação protegida e réplica quando possível.
Verificação de resultado
Confira volume, nulos, duplicidade, distribuição e coerência antes de apresentar a conclusão.
Evidência
Preserve pergunta, SQL aprovado, parâmetros, fonte, horário, quantidade de linhas, versão e transformação aplicada.
Revisão para perguntas novas
Consultas fora do catálogo ou com alto impacto podem exigir aprovação de analista ou dono do dado antes da execução.
O modelo propõe. A infraestrutura controla a consulta que realmente alcança os dados.
Proteja o isolamento entre clientes e unidades
Filtros escritos no prompt são frágeis. O agente pode esquecer a condição, usar alias inadequado ou consultar uma tabela sem a coluna esperada.
A proteção deve existir em camadas:
- identidade por aplicação ou processo;
- autorização por solicitante;
- views por escopo;
- row-level security;
- schemas ou bancos separados quando necessário;
- filtros injetados pelo serviço;
- bloqueio de joins que atravessem fronteiras;
- mascaramento de colunas;
- limites de exportação;
- testes de vazamento entre tenants.
O guia sobre isolamento de clientes em agentes de IA detalha como preservar a fronteira em recuperação, memória, cache, ferramentas e observabilidade.
Mesmo resultados agregados podem vazar informação. Uma consulta sobre um grupo muito pequeno pode permitir inferir desempenho, preço ou comportamento de uma única conta. Defina limiar mínimo e regras de supressão quando o contexto exigir.
Controle custo e impacto da consulta
Um agente pode gerar uma consulta válida e cara. Joins amplos, ausência de filtro temporal, funções sobre colunas e repetição podem pressionar o banco.
Defina:
- timeout;
- limite de linhas;
- período máximo;
- bytes ou partições processadas;
- concorrência;
- frequência por usuário e agente;
- cache para perguntas repetidas;
- horário para consultas pesadas;
- prioridade;
- cancelamento;
- orçamento por execução;
- alerta de varredura fora do padrão.
O planejamento de capacidade para agentes de IA ajuda a dimensionar demanda, dependências e filas. A consulta analítica não deveria degradar o serviço usado para registrar vendas, pedidos ou atendimento.
Trate atualização como parte da resposta
Uma réplica, warehouse, índice ou cache pode oferecer dados de cinco minutos, uma hora ou um dia atrás. A utilidade depende da decisão.
A saída deve informar:
- fonte;
- último evento processado;
- horário de atualização;
- período consultado;
- timezone;
- atraso conhecido;
- filtros;
- registros excluídos;
- versão da definição;
- limitações.
O artigo sobre freshness de dados para agentes de IA mostra como transformar atualidade em regra operacional. Um relatório mensal pode aceitar atraso conhecido. Uma decisão sobre estoque disponível ou reunião agendada pode perder valor em minutos.
Valide significado antes de gerar narrativa
O agente não deveria produzir uma explicação convincente sobre um resultado ainda não validado.
Antes da síntese:
- confirme a definição da métrica;
- valide período e timezone;
- verifique filtros e escopo;
- procure duplicidade causada por joins;
- compare totais com uma referência conhecida;
- identifique nulos e categorias inesperadas;
- registre atraso da fonte;
- separe fato, hipótese e interpretação;
- marque limitações;
- peça revisão quando o resultado for material ou atípico.
Um agente pode ajudar a explicar variações. Cálculo e regras críticas devem permanecer reproduzíveis fora da narrativa.
Teste a arquitetura com casos difíceis
Inclua:
- pergunta ambígua sobre receita;
- solicitação de outra unidade;
- tentativa de acessar coluna restrita;
- join que multiplica registros;
- tabela obsoleta com nome atraente;
- data sem timezone;
- consulta sem filtro temporal;
- resultado vazio;
- volume acima do limite;
- banco lento;
- credencial expirada;
- réplica atrasada;
- schema alterado;
- instrução maliciosa dentro de dado textual;
- tentativa de escrita disfarçada;
- inferência sobre grupo pequeno;
- duas fontes com valores diferentes.
O red team para agentes de IA amplia a avaliação para identidade, rede, ferramentas, dados e consequência.
Teste também revogação. Quando o acesso for removido, sessões, pools, caches, notebooks, filas e processos filhos precisam perder a capacidade.
Métricas para governar o acesso a dados
Acompanhe:
- consultas por agente, usuário e finalidade;
- tabelas, views e colunas acessadas;
- linhas e volume processado;
- latência e timeout;
- consultas bloqueadas;
- tentativas fora do escopo;
- custo por pergunta válida;
- uso de tabelas obsoletas;
- resultados sem fonte ou atualização;
- correções humanas de definição;
- divergências entre consultas equivalentes;
- incidentes de isolamento;
- consultas novas enviadas para revisão;
- acessos sem uso recente;
- tempo até revogação total;
- decisões tomadas sobre dados vencidos.
Volume de consultas mostra adoção. Qualidade aparece quando a resposta usa a definição correta, respeita o escopo e encurta uma decisão sem criar outra base de verdade.
Erros comuns
Entregar a senha ao modelo
Credenciais podem aparecer em contexto, log ou ferramenta de depuração. Injete o acesso no runtime depois da autorização.
Confiar no modo somente leitura como controle completo
Leitura pode expor dados, pressionar produção, permitir inferência e orientar decisão errada. Escopo, custo e significado continuam necessários.
Usar o banco para contornar uma API ruim
O atalho evita validações e eventos. Corrija ou crie uma operação de domínio para responsabilidades recorrentes.
Publicar todo o schema
Mais tabelas aumentam ambiguidade e superfície de acesso. Exponha apenas o necessário para a tarefa.
Deixar o modelo aplicar o filtro de cliente
Autorização precisa existir na identidade, view, política ou serviço. Texto não sustenta isolamento.
Permitir escrita livre
SQL gerado pode violar invariantes e produzir efeitos sem confirmação. Ações devem passar por ferramentas estreitas e governadas.
Esconder o atraso da réplica
A resposta parece atual e orienta uma ação sobre estado antigo. Mostre freshness e bloqueie usos incompatíveis.
Checklist para decidir o caminho de acesso
- [ ] A pergunta ou ação está ligada a uma unidade de trabalho?
- [ ] A fonte autorizada foi definida por dado ou evento?
- [ ] Leitura e escrita estão separadas?
- [ ] Existe alternativa por API, view ou camada semântica?
- [ ] O acesso técnico está limitado ao menor schema e escopo?
- [ ] Filtros de cliente e unidade são impostos pela infraestrutura?
- [ ] Dados sensíveis possuem finalidade e proteção?
- [ ] A credencial fica fora do contexto do modelo?
- [ ] Consultas possuem limite de tempo, volume, custo e concorrência?
- [ ] A atualização da fonte aparece na resposta?
- [ ] Métricas críticas possuem definição reproduzível?
- [ ] Consultas novas ou materiais passam por revisão?
- [ ] Escritas usam operação de domínio com validação e confirmação?
- [ ] Logs ligam solicitante, agente, consulta, fonte e resultado?
- [ ] Revogação foi testada?
- [ ] Casos de isolamento, ambiguidade e schema alterado fazem parte da regressão?
Acesso ao dado precisa preservar a arquitetura da decisão
Conectar um agente ao banco pode reduzir o tempo entre pergunta e análise. A decisão fica frágil quando essa conexão ignora autoridade, significado, isolamento, custo e consequência.
Use acesso direto apenas dentro de uma fronteira clara, geralmente de leitura, com schema reduzido, identidade própria, filtros técnicos, limites, atualização visível e revisão proporcional ao impacto. Para métricas recorrentes, prefira definições semânticas. Para ações operacionais, prefira APIs e ferramentas de domínio que preservem regras e confirmem efeitos.
O melhor caminho entrega informação suficiente para o trabalho sem conceder ao agente uma autoridade maior do que a empresa consegue explicar, monitorar e revogar.