[firebase-br] Segurança : criar um novo usuário realmente ajuda?

João Dias jdias.bjsoftware em gmail.com
Ter Jun 16 09:25:02 -03 2009


Bom dia Felix

Infelizmente, ainda não há diretiva de segurança para usuários a nível 
de banco de dados, todos os dados de acesso estando no Securtity2.fdb, 
qualquer um que tiver acesso pode, "em tese" ter acesso ao seu banco, 
contudo há algo que se pode fazer a respeito disso

1) -  Se sua intenção é somente proteger Metadata de Triggers e 
Procedures, e não os dados em questão, você pode fazer um script de 
backup da metadata dos objetos e alterar os campos das tabelas de 
sistema RDB$PROCEDURES.RDB$PROCEDURE_SOURCE e o 
RDB$TRIGGERS.RDB$TRIGGER_SOURCE para algo do tipo

begin
    /*Codigo protegido por direitos autorais*/
end

com isso somente a BLR, ou seja, a metadata dos triggers e procedures 
compilados existirão e somente você terá o script para atualizar o 
sources procedures e triggers se necessário

2) Você pode criar diretivas de segurança no SO onde uma partição onde o 
banco esteja tenha permissão de leitura e escrita somente para o seu 
usuário e o processo do FbServer;

3) Se o seu sistema operacional não possui as diretivas de segurança 
necessárias, você pode usar outro SO virtualizado na máquina para que 
ele seja detentor dos direitos de escrita e leitura da base de dados. 
(Backup sempre!)

4) Você pode ler o artigo no http:\\www.firebase.com.br que ensina a 
proteger seu BD com roles e sistema de acessos com o SYSDBA


Espero ter ajudado de alguma forma


-- 
João Dias de Carvalho Neto
jdias.bjsoftware em gmail.com

Quer Artigos de Patterns GOF e Patterns Corporativos com vídeo aula e Fontes Demonstrativos?
vá a http://www.jdiasneto.blogspot.com



Felix escreveu:
> Senhores,
>
> Buscando informações a respeito da segurança do Firebird, li que deveria
> criar a base de dados com um usuário que não fosse o SYSDBA e que o nome
> desse fosse guardado a sete chaves, pois se alguém copiasse o FDB para uma
> máquina onde tivesse uma instalação 'limpa' do Firebird o usuário padrão não
> conseguiria acessar os dados.
>
> Mas durante os testes, pude perceber que ao distribuir a aplicação o <novo
> usuário> deverá ser criado no servidor do Firebird. Dessa maneira, o nome
> desse <novo usuário> então passa a fazer parte do arquivo security2.fdb, que
> poderá ser facilmente acessado, revelando o nome que eu criei - daí bastaria
> duplicá-lo, mesmo que usando uma senha diferente, e o acesso aos dados
> estaria garantido.
>
> Gostaria de confirmar isso e saber se há como proteger a base de dados
> contra xeretas para aplicações distribuídas que venham a rodar em clientes
> com uma só máquina fazendo ao mesmo tempo papel de servidor e cliente do
> Firebird.
>
> Obrigado a todos, Felix.
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>   






Mais detalhes sobre a lista de discussão lista