Oi, João! Tudo certo?
Desde já, peço desculpas pela demora em te responder.
Para dar a um usuário acesso somente às views, podemos seguir o passo a passo abaixo:
Acessar o seu pgAdmin;
Clicar sobre o seu servidor e sobre o banco de dados em que você deseja trabalhar;
Clicar no ícone de terminal, referente ao PSQL:
Criar um novo usuário, escrevendo seu nome e digitando sua senha:
CREATE USER novo_usuario WITH PASSWORD 'senha';
Conceder ao usuário criado o acesso a uma view específica, utilizando o comando GRANT
:
GRANT SELECT ON nome_da_view TO novo_usuario;
Feito isso, o usuário criado só conseguirá realizar SELECT
da view especificada, não podendo ter um contato direto com as tabelas do nosso banco de dados!
João, se você quiser fazer testes de consulta com o novo usuário, você pode abrir uma nova Query Tool e clicar sobre a sua conexão atual e escolher a opção "< New Connection...>" (Nova Conexão):
Depois, escolha o seu banco de dados e o usuário que irá acessá-lo, selecionando uma nova opção em "Database" (Banco de Dados) e "User" (Usuário):
Por fim, basta clicar em "Save" (Salvar) e digitar a senha do seu novo usuário!
Espero ter ajudado! No entanto, vale ressaltar que como é um assunto externo ao curso e que não tenho acesso ao seu cenário, outros testes terão de ser feitos a fim de obter o resultado esperado, mas espero que esta resposta seja um bom ponto de partida para a resolução do seu problema.
Abraço!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!