Re: [pgbr-geral] controle de acesso

2010-01-10 Por tôpico Leonardo Cezar
2010/1/10 JotaComm jota.c...@gmail.com:

 Por que as pessoas insistem em utilizar tabelas do catálogo ao invés
 de INFORMATION_SCHEMA que  faz parte da especificação padrão SQL e é o
 local onde se deve obter metadados do banco?

 Na minha visão é simples, porque é a maneira mais fácil e rápida. Eu em
 alguns faço uso do pg_catalog, em outros casos faço uso do
 information_schema.  Depende da necessidade.

Mais fácil eu garantiria que não é.

No entanto voce levantou uma questão interessante. Quando voce
utilizou o termo rápida vc se referiu em forma de acesso ou de
construção da própria SQL?

 Concordo. O PgAdmin é um bom exemplo disso.

Eu seria um pouco mais imparcial: o psql também quebra.

Reconheço que o psql busca um número de informações que é impossível
resgatar sem acesso ao catalogo, porém para todos os outros casos
information_schema deveria ser utilizado.

-Leo
-- 
Leonardo Cezar
http://www.aslid.org.br
http://postgreslogia.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-10 Por tôpico Euler Taveira de Oliveira
Leonardo Cezar escreveu:
 2010/1/10 JotaComm jota.c...@gmail.com:

 Concordo. O PgAdmin é um bom exemplo disso.
 
Não. O pgAdmin tenta manter a compatibilidade testando a versão do servidor
PostgreSQL.
 Eu seria um pouco mais imparcial: o psql também quebra.
 
Não quebra mais a partir da versão 8.4 pois ele utiliza a mesma metodologia
adotado pelo pgAdmin.

É claro que é sempre recomendável utilizar a versão mais nova do software pois
ele já tem suporte as versões mais novas do servidor PostgreSQL.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-10 Por tôpico JotaComm
Olá,

2010/1/10 Euler Taveira de Oliveira eu...@timbira.com

 Leonardo Cezar escreveu:
  2010/1/10 JotaComm jota.c...@gmail.com:

  Concordo. O PgAdmin é um bom exemplo disso.
 
 Não. O pgAdmin tenta manter a compatibilidade testando a versão do servidor
 PostgreSQL.


Um exemplo. Logo que surgiu a versão 8.3 do PostgreSQL o PgAdmin apresentava
vários erros, por isso o citei.

  Eu seria um pouco mais imparcial: o psql também quebra.
 
 Não quebra mais a partir da versão 8.4 pois ele utiliza a mesma metodologia
 adotado pelo pgAdmin.

 É claro que é sempre recomendável utilizar a versão mais nova do software
 pois
 ele já tem suporte as versões mais novas do servidor PostgreSQL.


 --
  Euler Taveira de Oliveira
  http://www.timbira.com/
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-10 Por tôpico JotaComm
2010/1/10 Leonardo Cezar lhce...@gmail.com

 2010/1/10 JotaComm jota.c...@gmail.com:

  Por que as pessoas insistem em utilizar tabelas do catálogo ao invés
  de INFORMATION_SCHEMA que  faz parte da especificação padrão SQL e é o
  local onde se deve obter metadados do banco?
 
  Na minha visão é simples, porque é a maneira mais fácil e rápida. Eu em
  alguns faço uso do pg_catalog, em outros casos faço uso do
  information_schema.  Depende da necessidade.

 Mais fácil eu garantiria que não é.

 No entanto voce levantou uma questão interessante. Quando voce
 utilizou o termo rápida vc se referiu em forma de acesso ou de
 construção da própria SQL?


Da construção do SQL. Outro detalhe é que muita gente esquece que existe o
information_schema. Por exemplo, em muitos cursos de PG este assunto não é
abordado, e o pg_catalog sim e em alguns casos todos os exemplos
apresentados fazem uso dele para mostrar como extrair informações do PG.

 Concordo. O PgAdmin é um bom exemplo disso.


 Eu seria um pouco mais imparcial: o psql também quebra.

 Reconheço que o psql busca um número de informações que é impossível
 resgatar sem acesso ao catalogo, porém para todos os outros casos
 information_schema deveria ser utilizado.

 -Leo
 --
 Leonardo Cezar
 http://www.aslid.org.br
 http://postgreslogia.wordpress.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-09 Por tôpico Leonardo Cezar
2010/1/8 JotaComm jota.c...@gmail.com:

 Via catalogo do PostgreSQL você consegue todas estas informações, tudo que
 você precisa de funções tem em pg_proc.
^^^
Por que as pessoas insistem em utilizar tabelas do catálogo ao invés
de INFORMATION_SCHEMA que  faz parte da especificação padrão SQL e é o
local onde se deve obter metadados do banco?

Lembrando que, por ser um padrão, as chances de information_schema
sofrer alterações é mínima.

Não é necessário ir muito longe pra encontrar casos de aplicações que
simplesmente quebram nas atualizações de banco simplesmente porque
acessam tabelas de catálogo (aka pg_catalog).

Abraço!

-Leo
-- 
Leonardo Cezar
http://www.aslid.org.br
http://postgreslogia.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-09 Por tôpico JotaComm
Olá,

2010/1/9 Leonardo Cezar lhce...@gmail.com

 2010/1/8 JotaComm jota.c...@gmail.com:

  Via catalogo do PostgreSQL você consegue todas estas informações, tudo
 que
  você precisa de funções tem em pg_proc.
 ^^^
 Por que as pessoas insistem em utilizar tabelas do catálogo ao invés
 de INFORMATION_SCHEMA que  faz parte da especificação padrão SQL e é o
 local onde se deve obter metadados do banco?


Na minha visão é simples, porque é a maneira mais fácil e rápida. Eu em
alguns faço uso do pg_catalog, em outros casos faço uso do
information_schema.  Depende da necessidade.


 Lembrando que, por ser um padrão, as chances de information_schema
 sofrer alterações é mínima.

 Não é necessário ir muito longe pra encontrar casos de aplicações que
 simplesmente quebram nas atualizações de banco simplesmente porque
 acessam tabelas de catálogo (aka pg_catalog).


Concordo. O PgAdmin é um bom exemplo disso.


 Abraço!

 -Leo
 --
 Leonardo Cezar
 http://www.aslid.org.br
 http://postgreslogia.wordpress.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-08 Por tôpico Jorge Luiz
Obrigado Fabrízio,

E voce tem algo similar para outros tipos de permissoes? Exemplo, 
para a parte de funcoes.

Eu até estava fazendo uma para a parte de funcoes mais Só consegui 
trazer o nome da funcao, parei no momento de trazer os paramentos da 
funcao, nao consegui pegar isso no catalago do postgresql.
Ex: nome_fucao (text,int)

Outra pergunta, só essas funcoes ja seriam suficientes para um 
controle legal de acessos? nao precisaria me preocupar com algum 
problema em outros objetos.

Obrigado.

Fabrízio de Royes Mello escreveu:


 2010/1/7 JotaComm jota.c...@gmail.com mailto:jota.c...@gmail.com

 Olá,


 Uma função pode te ajudar, senão me engano já publiquei uma função
 aqui na lista para esta finalidade. 


 Jota,

 Creio que foi nela mesmo que tomei como base para fazer esta que estou 
 enviando em anexo.

 Pode ser que ajude...

 Cordialmente,
 -- 
 Fabrízio de Royes Mello
  Blog sobre TI: http://fabriziomello.blogspot.com
 

 ___
 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


Re: [pgbr-geral] controle de acesso

2010-01-08 Por tôpico JotaComm
Olá,

2010/1/8 Jorge Luiz jorgesanfel...@gmail.com

 Obrigado Fabrízio,

E voce tem algo similar para outros tipos de permissoes? Exemplo,
 para a parte de funcoes.


Acho que se você comentou que é DBA, poderia quebrar um pouco a cabeça para
fazer isso.


Eu até estava fazendo uma para a parte de funcoes mais Só consegui
 trazer o nome da funcao, parei no momento de trazer os paramentos da
 funcao, nao consegui pegar isso no catalago do postgresql.
Ex: nome_fucao (text,int)


Via catalogo do PostgreSQL você consegue todas estas informações, tudo que
você precisa de funções tem em pg_proc. Tudo tem uma tabela relacionada,
basta você pesquisar um pouquinho e também pode consultar a documentação,
sempre que precisei fiz isso e me ajudou bastante, muita coisa que aprendei
descobri lá.




Outra pergunta, só essas funcoes ja seriam suficientes para um
 controle legal de acessos? nao precisaria me preocupar com algum
 problema em outros objetos.


Depende o que você chama de um controle de acesso legal?


Obrigado.

 Fabrízio de Royes Mello escreveu:
 
 
  2010/1/7 JotaComm jota.c...@gmail.com mailto:jota.c...@gmail.com
 
  Olá,
 
 
  Uma função pode te ajudar, senão me engano já publiquei uma função
  aqui na lista para esta finalidade.
 
 
  Jota,
 
  Creio que foi nela mesmo que tomei como base para fazer esta que estou
  enviando em anexo.
 
  Pode ser que ajude...
 
  Cordialmente,
  --
  Fabrízio de Royes Mello
   Blog sobre TI: http://fabriziomello.blogspot.com
  
 
  ___
  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



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-07 Por tôpico André Pignata
Uma vez precisei disso e crie essa função.. é só alterar para os comandos
que vc quiser. Espero ajudar:

CREATE OR REPLACE FUNCTION public.muda_dono () RETURNS boolean AS
$body$
/* New function body */
declare
   tabela RECORD;
begin

 for tabela in (select tablename from pg_tables where schemaname =
'public') loop
 EXECUTE 'ALTER TABLE '||tabela.tablename||' OWNER TO mbs_convenio';
 EXECUTE 'GRANT ALL ON TABLE '||tabela.tablename||' TO
gmbs_convenio';

 end loop;

 for tabela in (select viewname from pg_views where schemaname =
'public' and viewname not like 'pg_%') loop
 EXECUTE 'ALTER TABLE '||tabela.viewname||' OWNER TO mbs_convenio';
 EXECUTE 'GRANT ALL ON TABLE '||tabela.viewname||' TO
gmbs_convenio';
 end loop;

 return true;

end;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

2010/1/7 Jorge Luiz jorgesanfel...@gmail.com

 Prezados,

   Alguem usa ou conhece alguma ferramenta para controle de acesso do
 postgresql que facilite o nosso trabalho de DBA?

   Preciso implantar alguns controles de acesso a uma base, mas percebi
 que isso poderia ser mais facil com uma ferramenta ou com uma alteracao
 no postgresql.

   EX: Falta algo do tipo.

   Grant all [PRIVILEGES] to { nome_do_usuário | GROUP nome_do_grupo
 | PUBLIC }

   O Fato de ter que especificar objeto por objeto gera muito trabalho
 postgresql.

   Alguem pode ajudar?

   Obrigado.
 --
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
André Luiz Martins Pignata
Integral Convênios Odontológicos
Gerente de TI
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-07 Por tôpico JotaComm
Olá,



2010/1/7 Jorge Luiz jorgesanfel...@gmail.com

 Prezados,

   Alguem usa ou conhece alguma ferramenta para controle de acesso do
 postgresql que facilite o nosso trabalho de DBA?

   Preciso implantar alguns controles de acesso a uma base, mas percebi
 que isso poderia ser mais facil com uma ferramenta ou com uma alteracao
 no postgresql.

   EX: Falta algo do tipo.

   Grant all [PRIVILEGES] to { nome_do_usuário | GROUP nome_do_grupo
 | PUBLIC }

   O Fato de ter que especificar objeto por objeto gera muito trabalho
 postgresql.

   Alguem pode ajudar?


Uma função pode te ajudar, senão me engano já publiquei uma função aqui na
lista para esta finalidade.


   Obrigado.
 --
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



[]s
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-07 Por tôpico Fabrízio de Royes Mello
2010/1/7 JotaComm jota.c...@gmail.com

 Olá,


 Uma função pode te ajudar, senão me engano já publiquei uma função aqui na
 lista para esta finalidade.


Jota,

Creio que foi nela mesmo que tomei como base para fazer esta que estou
enviando em anexo.

Pode ser que ajude...

Cordialmente,
-- 
Fabrízio de Royes Mello
 Blog sobre TI: http://fabriziomello.blogspot.com
-- Funcao para GRANT ou REVOKE
create or replace function fc_grant_revoke(text, text, text, text, text) returns integer as 
$$
declare
  sUsuarioalias for $2;
  sPrivilegio alias for $3; -- [ all | select,insert,update,delete ]
  sEsquemaalias for $4;
  sObjeto alias for $5; -- [ table | view | sequence ]

  sOpcao  text;
  rObjeto record;
  iQtdinteger;

  sPredicado  text;
begin
  iQtd := 0;

  sOpcao := upper($1); -- [ grant | revoke ]

  -- Verifica predicado para Grant nos Schemas
  if position('DELETE' in sOpcao)  0 or
 position('UPDATE' in sOpcao)  0 or
 position('INSERT' in sOpcao)  0 or
 sOpcao = 'ALL' then
sPredicado := ' all ';
  else
sPredicado := ' usage ';
  end if;

  -- Grant/Revoke nos Schemas
  for rObjeto in
select nspname
  from pg_namespace
 where nspname not in ('pg_catalog', 'information_schema', 'pg_toast')
   and nspname !~ '^pg_temp'
   and nspname like sEsquema
  loop
if upper(sOpcao) = 'GRANT' then
  execute 'grant ' || sPredicado || ' on schema ' || rObjeto.nspname || ' to ' || sUsuario;
else
  execute 'revoke ' || sPredicado || ' on schema ' || rObjeto.nspname || ' from ' || sUsuario;
end if;
  end loop;

  -- Grant/Revoke nas Relacoes
  for rObjeto in 
select relname,
   nspname
  from pg_class c
   join pg_namespace ns on (c.relnamespace = ns.oid) 
 where relkind in ('r','v','s') -- Relacao, View, Sequence
   --and nspname not in ('pg_catalog', 'information_schema', 'pg_toast')
   --and nspname !~ '^pg_temp'
   and nspname like sEsquema 
   and relname like sObjeto
  loop
if upper(sOpcao) = 'GRANT' then
  --raise info 'grant % on % to %;', sPrivilegio, rObjeto.relname, sUsuario;
  execute 'grant ' || sPrivilegio || ' on ' || rObjeto.nspname || '.' || rObjeto.relname || ' to ' || sUsuario;
else
  --raise info 'revoke % on % from %;', sPrivilegio, rObjeto.relname, sUsuario;
  execute 'revoke ' || sPrivilegio || ' on ' || rObjeto.nspname || '.' || rObjeto.relname || ' from ' || sUsuario;
end if;
iQtd := iQtd + 1;
  end loop;
  return iQtd;
end;
$$ 
language plpgsql;


create or replace function fc_grant(text, text, text, text) returns integer as 
$$
  select fc_grant_revoke('grant', $1, $2, $3, $4);
$$
language sql;

create or replace function fc_revoke(text, text, text, text) returns integer as 
$$
  select fc_grant_revoke('revoke', $1, $2, $3, $4);
$$
language sql;

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] controle de acesso

2010-01-07 Por tôpico Euler Taveira de Oliveira
Jorge Luiz escreveu:
EX: Falta algo do tipo.
 
Grant all [PRIVILEGES] to { nome_do_usuário | GROUP nome_do_grupo 
 | PUBLIC }
 
Já não falta mais [1] ... Estará na 8.5.

[1] http://developer.postgresql.org/pgdocs/postgres/release-8-5.html


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Controle de acesso por Roles

2008-07-15 Por tôpico jota . comm
Olá,

2008/7/14 Rúben Lício [EMAIL PROTECTED]:

 Boa noite,

 Estava fazendo alguns testes de controle de acesso em um Postgres 8.3
 instalado no Windows XP e me deparei com um comportamente estranho.
 Utilizando-me do pgAdminIII criei uma role nova sem privilégio algum.
 Criei uma conexão nova e me loguei utilizando essa nova role e para
 milhar surpresa consegui listar todos os bancos da base, todas as
 tabelas de todos os bancos e também consegui visualizar o código de
 todas as SP's.

 Há alguma forma de impedir que um usuário liste todos os bancos de
 dados inclusive os que ele não tem acesso?
 É possível uma role não ver o código que ela não tem permissão?


O motivo pode ser pelo fato de que o seu arquivo pg_hba.conf tenha a
seguinte linha,  se você não alterou ela, pois esta linha é padrão na
instalação do PostgreSQL no Windows.
local   all all   md5

Essa linha significa que qualquer base pode ser acessada por qualquer
usuário a partir de uma senha md5. Para você conseguir restringir o acesso
ao banco você precisa alterar esta linha e colocar os bancos de dados e
também informando quais usuários podem acessar quais bancos de dados, por
exemplo:

#para conexão da própria máquina local
local banco1 usuario1 md5
local banco2 usuario2,usuario3 md5

#para conexão via tcp/ip
host banco1 usuario1 ip mascara md5
host banco2 usuario2,usuario3 ip mascara md5

Além desta forma de restrição, você pode tratar com o grant e revoke as
permissões a objetos como select, insert, delete, update dentre outros
privilégios que você pode conceder (grant) ou remover (revoke).



 O problema é que tenho um servidor que será utilizado para alguns
 clientes, eu queria disponibilizar acesso a algumas SP's para um
 cliente fazer uma interface de acesso para algumas partes do sistema,
 mas esse cliente de forma alguma poderia ter acesso aos outros bancos.

 Obrigado.


 --
 Rúben Lício Reis
 Cybernet Latino América
 www.cybernetla.com

 Linux user #433535
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Espero ter ajudado.

[]s

-- 
João Paulo
www.dextra.com.br/postgres
PostgreSQL
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Controle de acesso por Roles [RESOLVIDO]

2008-07-15 Por tôpico Rúben Lício
Muito obrigado as duas resposta me ajudaram a achar o caminho.
Eu estava procurando na documentação da ROLE, mas isso realmente é
restringido no pg_hba.conf como o sugerido nas respostas.

Agora vou organizar a bagunça que está o controle de acesso aqui, mais
uma vez obrigado.

Rúben

2008/7/15 jota. comm [EMAIL PROTECTED]:

 Olá,

 2008/7/14 Rúben Lício [EMAIL PROTECTED]:

 Boa noite,

 Estava fazendo alguns testes de controle de acesso em um Postgres 8.3
 instalado no Windows XP e me deparei com um comportamente estranho.
 Utilizando-me do pgAdminIII criei uma role nova sem privilégio algum.
 Criei uma conexão nova e me loguei utilizando essa nova role e para
 milhar surpresa consegui listar todos os bancos da base, todas as
 tabelas de todos os bancos e também consegui visualizar o código de
 todas as SP's.

 Há alguma forma de impedir que um usuário liste todos os bancos de
 dados inclusive os que ele não tem acesso?
 É possível uma role não ver o código que ela não tem permissão?

 O motivo pode ser pelo fato de que o seu arquivo pg_hba.conf tenha a
 seguinte linha,  se você não alterou ela, pois esta linha é padrão na
 instalação do PostgreSQL no Windows.
 local   all all   md5

 Essa linha significa que qualquer base pode ser acessada por qualquer
 usuário a partir de uma senha md5. Para você conseguir restringir o acesso
 ao banco você precisa alterar esta linha e colocar os bancos de dados e
 também informando quais usuários podem acessar quais bancos de dados, por
 exemplo:

 #para conexão da própria máquina local
 local banco1 usuario1 md5
 local banco2 usuario2,usuario3 md5

 #para conexão via tcp/ip
 host banco1 usuario1 ip mascara md5
 host banco2 usuario2,usuario3 ip mascara md5

 Além desta forma de restrição, você pode tratar com o grant e revoke as
 permissões a objetos como select, insert, delete, update dentre outros
 privilégios que você pode conceder (grant) ou remover (revoke).



 O problema é que tenho um servidor que será utilizado para alguns
 clientes, eu queria disponibilizar acesso a algumas SP's para um
 cliente fazer uma interface de acesso para algumas partes do sistema,
 mas esse cliente de forma alguma poderia ter acesso aos outros bancos.

 Obrigado.


 --
 Rúben Lício Reis
 Cybernet Latino América
 www.cybernetla.com

 Linux user #433535
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

 Espero ter ajudado.

 []s

 --
 João Paulo
 www.dextra.com.br/postgres
 PostgreSQL
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral





-- 
Rúben Lício Reis
Cybernet Latino América
www.cybernetla.com

Linux user #433535
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Controle de acesso por Roles

2008-07-14 Por tôpico Aluisio Gouveia

Em Seg, Julho 14, 2008 18:56, Rúben Lício escreveu:
 Boa noite,

 Estava fazendo alguns testes de controle de acesso em um Postgres 8.3
 instalado no Windows XP e me deparei com um comportamente estranho.
 Utilizando-me do pgAdminIII criei uma role nova sem privilégio algum.
 Criei uma conexão nova e me loguei utilizando essa nova role e para
 milhar surpresa consegui listar todos os bancos da base, todas as
 tabelas de todos os bancos e também consegui visualizar o código de
 todas as SP's.

 Há alguma forma de impedir que um usuário liste todos os bancos de
 dados inclusive os que ele não tem acesso?
 É possível uma role não ver o código que ela não tem permissão?

 O problema é que tenho um servidor que será utilizado para alguns
 clientes, eu queria disponibilizar acesso a algumas SP's para um
 cliente fazer uma interface de acesso para algumas partes do sistema,
 mas esse cliente de forma alguma poderia ter acesso aos outros bancos.

 Obrigado.


 --
 Rúben Lício Reis
 Cybernet Latino América
 www.cybernetla.com

 Linux user #433535

Acredito que se vc retirar o acesso ALL no pg_hba ja é um começo, configure os
acessos individualmente por cliente, por exemplo:


# TYPEDATABASE USER  CIDR-ADDRESS   METHOD
host  database1user1   200.115.98.1/32   md5
host  database2user2   201.67.123.2/32   md5

Se seu pg_hba conter esta linha:

host   all all  0/0 
md5

Apague! é possivel que seja por isso que vc consegui ter acesso a todos os
bancos de dados do servidor.

Desta forma  vc não impede que os bancos sejam listados, mas dificulta um pouco
e faz com que apenas o user1 possa accessar o database1 e o user2 apenas o
database2.


Espero ter contribuido.


Cordialmente,

Aluisio Gouveia.




___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Controle de acesso (usuários)

2007-07-18 Por tôpico Leandro Guimarães Faria Corcete DUTRA
RFC 1855

Em Qua, 2007-07-18 às 16:20 -0300, Daniel Robert Costa escreveu:
 Estou redesenvolvendo o banco de dados da empresa em que trabalho.

Que privilégio!


 Estamos iniciando os trabalhos com o PostgreSQL 8.2
 Nosso servidor será Suse ES 10 ou provavelmente RedHat ES4.

Para quê isso?  Debian ou BSD…

 
 Gostaria de saber se há vantagens de ao invés de uma tabela para os
 usuários e tabelas auxiliares de permissões, eu criar em meu banco de
 dados um usuário para cada pessoa que for utilizar o sistema.

Sim, claro, principalmente se já houver um sistema de diretório.


 Hoje tenho cerca de 200 registros na tabela de usuários, ou seja, eu
 passaria a ter 200 usuários no meu banco de dados. E o controle de
 permissões eu faria através da criação de grupos de usuários no banco
 de dados.
  
 Há vantagens nesta ação?

Sim, vide o artigo do Telles recentemente aqui publicado.


-- 
Leandro Guimarães Faria Corcete DUTRA  [EMAIL PROTECTED]
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral