Firebird Documentation IndexSegurança arquivos e metadados → O Funcionamento em Segundo Plano
Firebird Home Firebird Home Anterior: Segurança arquivos e metadadosFirebird Documentation IndexAcima: Segurança arquivos e metadadosPróxima: O Problema

O Funcionamento em Segundo Plano

Para que uma aplicação (usuário) possa acessar um banco de dados Firebird, ela deve conectar-se a um servidor Firebird que contenha este arquivo. Ao receber uma requisição de conexão, o servidor automaticamente verificará as permissões do usuário definidas no arquivo de segurança (normalmente, isc4.gdb). Se a autenticação for bem sucedida, então o servidor dará à aplicação a permissão de acessar qualquer banco de dados que ela requisitar e então, utilizar os privilégios e roles definidos neste banco de dados para garantir um acesso controlado aos objetos nesse banco de dados.

Em momento algum o usuário que conecta ao banco de dados necessita de acesso diretamente ao arquivo em si. Todo o acesso se dá através do aplicativo servidor, que acessa os arquivos conforme necessário para atender às requisições dos clientes. Fica, portanto, a cargo do servidor restringir o acesso aos usuários logados, conforme as permissões definidas para este usuário naquele banco de dados.

Nota

A versão “embedded” do Firebird funciona de forma diferente e não é apropriada para instalações seguras. O fato de a versão embedded existir não anula os pontos discutidos neste artigo sobre segurança de banco de dados, mas ressalta a importancia de se usar um ambiente de segurança efetivo em instalações seguras. Mais detalhes sobre a versão embedded serão discutidos mais adiante.

Todo servidor Firebird possui um usuário “SYSDBA”, que possui acesso irrestrito a qualquer banco de dados disponível a esse servidor. Os privilégios especificos dos bancos de dados são ignorados quando este é acessado por esse usuário. Quando você copia um banco de dados para dentro de um servidor, você pode utilizar este usuário para determinar os privilégios de acordo com os usuários e as necessidades deste servidor. No entanto, dessa forma, se eu tiver acesso ao arquivo do banco de dados, eu posso copiar esse arquivo para um servidor onde eu saiba a senha do usuário SYSDBA, e obterei acesso irrestrito ao arquivo.

Como você pode notar, a segurança do Firebird presume que seu servidor estará sendo executado em um ambiente de segurança apropriado. O Firebird em si não toma precaução alguma para evitar riscos externos. Se uma pessoa tem acesso físico ao arquivo de banco de dados, não há uma maneira efetiva para prevenir que o usuário leia toda a informação (dados e metadados) contida neste arquivo.

Nota

A segurança “adequada” depende do nível de segurança que é necessário ao ambiente em questão. Este quesito varia muito de instalação para instalação.

Isto significa que, para uma segurança razoável, toda instalação deve manter os arquivos do banco de dados adequadamente seguros. Na maioria dos casos, isto significa que o servidor Firebird deve rodar em um usuário específico no sistema operacional, e apenas esse usuário (e provavelmente o administrador/root) deve ter acesso direto aos arquivos do banco de dados. Estes arquivos não devem ficar em diretórios compartilhados na rede ou que sejam acessíveis por qualquer pessoa que não o pessoal autorizado.

Para uma segurança ainda mais efetiva, é preferível que o computador que será o servidor fique armazenado em um local físico de acesso restrito, de forma a prevenir que alguém tente acessar os arquivos por trás das restrições do sistema operacional.

No entanto, a explicação acima não necessariamente ajuda desenvolvedores que, tendo desenvolvido um banco de dados para distribuição e instalação em locais remotos, desejam proteger as propriedades intelectuais contidas nestes arquivos. Tais preucupações podem incluir desde os metadados (estruturas, relacionamentos, stored procedures e triggers) até os dados em si, incluídos em algumas tabelas. É este o ponto que representa o foco deste artigo.

Anterior: Segurança arquivos e metadadosFirebird Documentation IndexAcima: Segurança arquivos e metadadosPróxima: O Problema
Firebird Documentation IndexSegurança arquivos e metadados → O Funcionamento em Segundo Plano