O que esse script faz no geral?
Ele cria um usuário e concede permissões de leitura (SELECT) no banco gestores, incluindo tabelas já existentes e futuras. Obs: Esse usuário ainda não acessa nada até receber permissões.
1.Conectar ao banco como superusuário (ou um com permissão para criar usuários)
2. Criar o usuário:
CREATE USER (usuario) WITH PASSWORD 'gestores@2023';
3. Dar permissão de conexão ao banco:
GRANT CONNECT ON DATABASE gestores TO (usuario);
4. Dar permissão de uso no esquema público (ou outro esquema que você usa):
GRANT USAGE ON SCHEMA public TO (usuario);
5. Se quiser, dar permissão de leitura em todas as views também (opcional):
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO usuario;
7. Tornar as permissões permanentes para futuras tabelas
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO usuario;
Esse script dá acesso a tudo no banco? Não Ele limita:
- Apenas ao schema
public - Apenas leitura, Se houver outros schemas: precisa liberar manualmente