Segurança em Bases de Dados Progress – Parte 3

Escrito por Eloi Rene Pscheidt em 9 de outubro de 2008, 10:44h

No post anterior iniciamos a tarefa de restringir o acesso 4GL em bases de dados Progress. Criamos alguns usuários e definimos o papel de administrador para o usuário "adm".

Agora realmente iremos restringir o acesso ao banco de dados. Primeiro vamos proibir o acesso anônimo, aquele no qual qualquer usuário pode acessar as informações do banco mesmo sem informar seu usuário e senha. Para isso utilizamos a ferramenta "Data Administration" e selecionamos a opção "Disallow Blank Userid Access", conforme a figura a seguir:

  

Impedir que usuários anônimos conectem um banco Progress é impossível, porém desabilitando o seu acesso, estes usuários não conseguirão mais acessar as informações contidas no banco de dados. Continuarão a se conectar, porém não conseguirão fazer nada neste banco. Uma simples consulta no conteúdo de uma tabela produzirá o seguinte erro:

** Insufficient access privilege for table <table name>. (234) 

Agora vamos definir o que cada usuário autenticado no banco poderá fazer. Para isso, vamos acessar a opção "Edit Data Security" via ferramenta "Data Administrator", conforme a figura a seguir:

Observe as permissões concedidas para a tabela "customer". De acordo com o que especificamos nesta tela, apenas os usuários "adm" e "joao" poderão incluir, alterar e excluir registros nesta tabela. Observe que em todas as permissões aparece o símbolo de negação na primeira posição, isto porque definimos que nenhum usuário anônimo poderá acessar as informações do banco.
 
Concedemos também permissão de leitura na tabela "customer" para o usuário "maria". Esse usuário apenas poderá consultar dados nesta tabela, sem incluir, alterar ou excluir.
 
Podemos ainda definir permissões específicas para cada campo das tabelas. Isso é possível, nesta mesma tela, selecionando a opção "Permissions for Selected Field", conforme a figura a seguir:
  

 
Em nosso exemplo, definimos que apenas os usuários "adm" e "joao" conseguirão ler e alterar o conteúdo do campo "Credit-Limit" da tabela "customer". O usuário "maria" continuará conseguindo consultar os demais campos desta tabela exceto este. Caso ela tente consultar ou alterar este campo, receberá o seguinte erro:
 
** Insufficient access privilege for Field Credit-Limit. (233) 
 
Nos próximos posts conheceremos algumas situações que podem deixar uma base de dados Progress vulnerável e como evitá-las.

Categorias: Ambiente | Banco de dados | Conectividade | Progress | Segurança

Tags: , , , ,

Comentários (2) -

em 1 de julho de 2010, 16:57h

Boa tarde,

Estou tendo problema, pois já adicionei o usuario a lista de can-dump e mesmo assim quando tento gerar o dump
ele está retornando que eu nao possuo privilegio.
Tenho outro usuario na listagem que consegue gerar dump.
Existe algum outro lugar que devo configurar privilegios?

deste ja muito obrigado!!

Elbert

em 1 de julho de 2010, 18:16h

Olá Elbert,

obrigado pelo contato.
É possível que o seu usuário não tenha permissão de "can-read", ela também é necessária para o dump.

Abraços!
Eloi

eloi

Comentar




biuquote
  • Comentário
  • Pré-visualização
Loading


Acesso LogMeIn

Informe o código PIN: