Cada usuário pode ver outros bancos de dados e funções listados, mas nunca poderá ver tabelas em outros bancos de dados.
Se você revogar o privilégio CONNECT em todos os bancos de dados, exceto o atribuído, o usuário não poderá acessar o conteúdo de outros bancos de dados.
Funções e nomes de banco de dados são globais e não podem ser bloqueados prontamente. Você pode tentar a sugestão de Frank Heikens de revogações seletivas nas tabelas do sistema, mas você corre o risco de fazer isso. Os desenvolvedores do PostgreSQL nas listas de discussão da usenet desencorajaram a adulteração do acesso aos catálogos do sistema.
O Psql, entre outras ferramentas, assume que elas estarão disponíveis e funcionam mal sem elas.
Por que saber os nomes de outros bancos de dados e funções tão ruim?