Em 23 de junho de 2016 16:33, Fabio Takashi Muratani <
ftaka...@touchhealth.com.br> escreveu:

> Mesmo se eu criar um novo esquema e um usuário nesse novo esquema eu vou
> conseguir conectar em qualquer banco e executar um \d?
>

Me corrijam se eu estiver falando bobagem povo, mas pelo que sei você
conecta no banco default "postgres", para conectar nos demais, você precisa
de *GRAN CONNECT ON DATABASE <db>; *
Passei por um problema semelhante na empresa onde trabalho. No nosso caso
aqui, temos um database XPTO com N esquemas de vários clientes. Ocorre que
necessitamos criar um acesso para utilização de uma ferramente de BI (Qlik
Sense) no esquema de determinado cliente, o fato é que o cara ao conectar
no db XPTO visualizava toda estrutura de esquemas e tabelas dos demais
clientes, mesmo sem acesso de leitura, o cara conseguia visualizar os nomes
das tabelas e esquemas. Eu tentei fazer tirando o acesso ao pg_catalog, do
public e dando grant a grant, mas a parada não funfou. O Euler não
recomendou a prática, é um cara que entende bastante. No caso aqui, optamos
por manter estruturas de database por cliente. Resolveu para nós.

Abraço


> ---
> *Fábio Takashi Muratani*
> *Ambiente de Produção*
>
> <http://www.touchtecnologia.com.br/>
> <http://www.touchhealth.com.br/>
> <http://www.touchtecnologia.com.br/>
>
> *E-mail:* ftaka...@touchhealth.com.br <ftaka...@touchtec.com.br>
> *Tel:* 55 11 3846-5555 Ramal: 1209
>
> Em 23 de junho de 2016 15:41, Maycon Pimentel de Freitas <
> maycon.pimen...@gmail.com> escreveu:
>
>> On 23-06-2016 11:42, Fabio Takashi Muratani wrote:
>> >>Tenho um banco dentro do schema public, criei um usuário também no
>> >> schema public com apenas permissão de select em uma tabela, porém, ao
>> >> conectar com esse usuário eu consigo ver o nome de todas as tabelas do
>> >> banco, inclusive suas colunas com o "\d", existe uma maneira de
>> bloquear
>> >> isso?
>> >>
>> >Não. O acesso ao catálogo é liberado por padrão. Não, não é uma boa
>> >retirar as permissões [1] porque você vai "quebrar" algumas aplicações.
>> >
>> >
>> >[1] https://wiki.postgresql.org/wiki/Shared_Database_Hosting
>> >
>> >
>> >PS> não é um banco ou usuário dentro do esquema. Banco e usuário são
>> >globais. Além disso, um banco contém um ou mais esquemas.
>>
>> Fabio,
>> Você pode alterar o search_path do usuário removendo o public. Contudo,
>> toda e qualquer operação na tabela, deverá ser explicitado o schema.
>>  -- Alterando o search_path do usuário
>> ALTER USER <nome_user> SET search_path="$user";
>> -- Exemplo de consulta a tabela
>> SELECT * FROM public.<tabela>;
>>
>> Mas se o usuário tiver o um pouco de conhecimento, ele mesmo pode
>> reverter essa configuração.
>>
>>
>> Maycon Pimentel de Freitas
>> maycon.pimen...@gmail.com
>>
>> Em 23 de junho de 2016 12:16, Euler Taveira <eu...@timbira.com.br>
>> escreveu:
>>
>>> On 23-06-2016 11:42, Fabio Takashi Muratani wrote:
>>> > Tenho um banco dentro do schema public, criei um usuário também no
>>> > schema public com apenas permissão de select em uma tabela, porém, ao
>>> > conectar com esse usuário eu consigo ver o nome de todas as tabelas do
>>> > banco, inclusive suas colunas com o "\d", existe uma maneira de
>>> bloquear
>>> > isso?
>>> >
>>> Não. O acesso ao catálogo é liberado por padrão. Não, não é uma boa
>>> retirar as permissões [1] porque você vai "quebrar" algumas aplicações.
>>>
>>>
>>> [1] https://wiki.postgresql.org/wiki/Shared_Database_Hosting
>>>
>>>
>>> PS> não é um banco ou usuário dentro do esquema. Banco e usuário são
>>> globais. Além disso, um banco contém um ou mais esquemas.
>>>
>>>
>>> --
>>>    Euler Taveira                   Timbira - http://www.timbira.com.br/
>>>    PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
>>> _______________________________________________
>>> pgbr-geral mailing list
>>> pgbr-geral@listas.postgresql.org.br
>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> pgbr-geral@listas.postgresql.org.br
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>
>
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>



-- 
*Raphael Coutinho*
Skype r.coutosilva
(21) 96465-9823
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a