Caros colegas... uma das coisas que tem me intrigado na função de DBA
é como as aplicações autenticam seus usuários no SGDB.

Em aplicações Web, tudo é muito simples... basta um usuário utilizado
para a aplicação. Todas as conexões são abertas a partir do servidor
Web como o Apache ou Tomcat. Você cria uma tabela no Banco de Dados
com o nome e senha (devidamente criptografada) e pronto. A aplicação
fica responsável por determinar onde o usuário poderá acessar cada
coisa. Um cuidado importante é deixar as senhas num arquivo que não
seja acessado via Web.

Em aplicações GUI Cliente-Servidor a coisa é um pouco diferente. Já me
deparei com uma aplicação enorme onde cada usuáro da aplicação tem um
usuário criado (com um CREATE ROLE) no SGDB. O resultado disso é uma
falha de segurança onde as centenas de usuários podem se conectar
diretamente no banco de dados usando suas senhas utilizadas na
aplicação. Além disso, o trabalho do DBA torna-se insano.

A alternativa é fazer como nas aplicações Web: criar um usuário que
será utilizado em todas as conexões. Mas isto gera um problema. Se eu
quiser trocar a senha deste usuário s periodicamente, eu terei que
alterar a senha em todos os computadores onde a aplicação estará
instalada. Além disto, muitos acabam colocando a senha compilada
dentro do código fonte da aplicação.

Quando converso sobre estas dificuldades com os fornecedores de
aplicações Cliente-Servidor, surgem as mais mirabolantes soluções.
Alguém tem sugestões de como resolver este problema (sem reeescrever a
aplicação para plataforma Web, claro!)???

Aguardo sugestões.

[]s
Fábio Telles
-- 
site: http://www.midstorm.org/~telles/
e-mail: [EMAIL PROTECTED]
jabber: [EMAIL PROTECTED]
sip:[EMAIL PROTECTED]
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a