Proteger banco de dados
Receita de bolo para proteger meta-dados do seu banco de dados Interbase/Firebird dos olheiros de plantão. Este artigo tem particular importância à aqueles que desenvolvem softwares para terceiros, pois permitirá à estes que possam distribuir livremente seus softwares baseados em banco de dados Firebird sem preocupar-se com aquelas pessoas que aproveitam código de terceiros e promovem seus sistemas baseando-se nos códigos obtidos, isto é o que chamamos de pirataria indústrial.
Entendendo o Problema
O administrador de um servidor Interbase/FireBird, o tal “SYSDBA” tem privilégios especiais para acessar todos os objetos deste servidor, inclusive obter o código fonte de cada um deles, esse código fonte é chamado de script DML ou Metadados. O típico administrador de sistemas, recorre ao script meta-dados para muitas utilidades : alterar regras estabelecidas, criar novos objetos a partir de outro objeto, ver furos de segurança dentre muitas outras cosas. Esse é um ótimo recurso do Firebird, porém cria um problema para aqueles que desenvolvem programas para terceiros. Uma empresa pode investir muito tempo e esforço de desenvolvimento usando o Firebird e quando for distribui-lo à seus clientes, estará distribuindo também o codigo fonte de seu banco de dados, então todo o "know-how" tecnológico por trás de sua base de dados podem ser recuperados por quem tiver acesso à ele. Imagine a situação de seu banco de dados cair na mão de seu concorrente, já pensou? Seu concorrente absorveria todo o seu "know-how", descobriria todos os segredos de sua base de dados, a saber : ! as triggers que harmoniosamente disparam procedimentos automaticamente, como por exemplo requisições de compra de material, cancelamento de débitos, etc...; ! as views que juntam tabelas diferentes produzindo uma visão única de um ou vários processos; ! as stored procedures que guardam procedimentos para serem executados no lado do servidor, aumentando