Pular para o conteúdo
IA · Tecnologia · CulturaFoi a IA!

Revista digital de inteligência artificial, tecnologia e cultura

Foi a IA, mas o que é isso?

Segurança em nível de linha (RLS)

Recurso de bancos de dados que limita, linha por linha, quais registros cada usuário pode ver ou alterar numa tabela; do inglês row level security.

Avatar de Zé Androidão

Por Zé Androidão

Repórter de Notícias

Publicado em

RLS vem do inglês row level security, segurança em nível de linha. É um recurso de banco de dados que decide, para cada linha de uma tabela, quem pode ver ou mexer nela.

Imagine a sala de correspondência de um prédio. Todas as cartas ficam no mesmo armário, mas cada morador só pode abrir o próprio escaninho. O porteiro não precisa de um armário por apartamento; basta a regra “cada um vê só o que é seu”. O RLS faz isso dentro de uma tabela: os pedidos de todos os clientes ficam juntos, mas cada cliente só enxerga as linhas que são dele.

Sem RLS, a lógica costuma ser tudo ou nada. A documentação do PostgreSQL, um banco de dados muito usado, explica: por padrão, quem tem permissão para acessar uma tabela vê todas as linhas dela. Com o RLS ligado, cada leitura ou alteração precisa passar por uma regra (a “política”). E, se o RLS for ligado sem nenhuma política escrita, o padrão é negar: ninguém vê nem altera nada, com algumas exceções técnicas, como o dono da tabela, que normalmente não está sujeito a essas regras.

Por que isso aparece tanto nas conversas hoje? Muitos aplicativos, inclusive os feitos com vibe coding, deixam o navegador do usuário conversar direto com o banco por meio de uma API. Nesses casos, a regra “cada um só vê o seu” precisa estar no próprio banco. Esquecer de configurar o RLS pode significar deixar o armário inteiro aberto, com dados de clientes à mostra, um problema de segurança e também de LGPD.

Veja também

Fontes

  1. PostgreSQL Documentation — 5.9. Row Security Policies

← Voltar ao glossário