Pular para o conteúdo

Entender por que um painel, gráfico ou trilha recusou a consulta

Leitura de 5 minutos

Painéis, gráficos, trilhas de IA e o filtro avançado montam consultas SQL. Elas rodam com as permissões de quem está usando, e não com as de quem as criou. Por isso uma consulta que funciona para o administrador pode ser recusada para outro usuário, com uma destas mensagens.

Para cada tabela que o SQL cita, o usuário precisa da permissão Consultar nela. Quem tem acesso à tela do painel, mas não à tabela de onde os dados saem, recebe a recusa.

Onde Mensagem
Filtro avançado “Sem permissão de consulta em TABELA.”
Filtro avançado, sem tabela identificável “Sem permissão de consulta: não foi possível identificar as tabelas do SQL.”
Assistente de gráfico “Sem permissão de consulta em X.”
Configurar o coletor de uma trilha “Sem permissão de consulta em X para configurar coletor de trilha.”
Trilha já configurada “Sem permissão de consulta na tabela de origem desta trilha.”

Peça ao administrador a permissão Consultar na tabela citada, na tela de acessos do seu usuário.

A conferência vale para todas as tabelas lidas no SQL, e não só para a primeira: junções, subconsultas e consultas em etapas (WITH) entram. O nome de uma etapa do WITH e um texto entre aspas não pedem permissão. O usuário master não passa por essa conferência.

Uma trilha de IA não lê qualquer tabela. Para as vedadas, a mensagem é “Esta tabela não pode ser lida por uma trilha de IA.” Nesse caso a permissão não resolve: escolha outra origem. Para o que são as trilhas, veja conhecer as trilhas de IA.

Alguns campos são marcados como sensíveis no cadastro de campos. Quem não é master e não tem a permissão Visualiza Conteúdo Sensível não os vê em consulta nenhuma: nem num painel, nem na prévia do gráfico, nem na lista de opções de um parâmetro, nem no assistente de gráfico. O assistente de gráfico também não envia valores sensíveis à IA.

A consulta é recusada com “A consulta cita ou compõe um campo sensível que você não pode ver.” Isso acontece quando o SQL:

  • cita o campo (“Campo sensível não pode ser consultado por SQL: COLUNA”);
  • devolve a linha inteira da tabela (“…não pode referenciar a linha inteira de uma tabela ou alias”), por to_jsonb, conversão para texto, row ou agregação de texto;
  • renomeia as colunas na lista do apelido, como AS apelido(a, b);
  • usa UNION, INTERSECT ou EXCEPT com colunas sem nome, como *.

A saída é listar as colunas que você precisa, sem as sensíveis. A mensagem não mostra o SQL.

O sistema não conseguiu conferir a permissão dos registros

Seção intitulada “O sistema não conseguiu conferir a permissão dos registros”

Em módulos em que cada usuário só vê os próprios registros (filtro de dono), o sistema lê a configuração do módulo antes de rodar a consulta. Se essa leitura falha, por exemplo numa indisponibilidade momentânea do banco, a consulta é recusada em vez de seguir sem o filtro e mostrar os registros de todos. Antes, a falha fazia a consulta seguir sem o filtro por até 30 segundos.

A mensagem depende de onde você está:

Onde Mensagem
Chat de IA, ao consultar dados “Não foi possível conferir a permissão dos registros. Tente de novo em instantes.”
Chat de IA, ao conferir os campos protegidos (sensíveis) “Não foi possível conferir os campos protegidos. Tente de novo em instantes.”
Prévia do gráfico, assistente de gráfico do chat e abertura de painel salvo “Sem permissão de consulta: SQL sobre tabela com filtro de dono.”

O erro do banco não aparece na mensagem.

No chat de IA, o aviso de progresso quando uma ferramenta falha mostra o texto padrão “A ferramenta não concluiu; o agente vai tentar outro caminho.” Esse aviso não traz a mensagem do erro de filtro de dono. O texto original do erro segue para o modelo, como resultado da ferramenta.

Nos gráficos, a recusa vale na prévia (na tela, a mensagem é repassada), no assistente de gráfico do chat (o gráfico não é criado nem editado por esse caminho) e na abertura de painel salvo (nos painéis V2 e V3, vale para cada fonte de dados SQL e interrompe a abertura).

A falha não fica guardada: assim que o banco responde de novo, a consulta seguinte já aplica o filtro. Não há nada a configurar; repita a consulta em instantes.

Master e gerente do módulo não passam por essa conferência e seguem como antes. Tabelas fora de módulo com filtro de dono também não são afetadas. Os detalhes do filtro estão em quais registros um gráfico mostra a quem o abre.

A prévia roda a consulta antes de salvar o gráfico, e só quem pode editar gráficos a executa. Quem não pode recebe “Usuário sem permissão para editar/criar gráficos.” Peça a permissão Permite Editar Gráfico.

O filtro avançado só aceita um comando de leitura:

  • “SQL deve iniciar com SELECT ou WITH.”
  • “Não use ponto-e-vírgula no SQL.”
  • “Comandos DML/DDL não são permitidos.”

O painel funciona para o administrador e vem vazio ou com erro para mim. Compare as permissões nas tabelas que o painel usa.

O gráfico pede campo sensível e preciso dele. Quem decide é o administrador: a permissão Visualiza Conteúdo Sensível abre o campo para o usuário.

Apareceu “Não foi possível conferir a permissão dos registros. Tente de novo em instantes.” Foi uma falha passageira na leitura da configuração do módulo. Repita a consulta em instantes; não é preciso pedir nenhuma permissão.