Olá pessoal ..salve, salveee !
Bem, neste artigo abordarei um tema que é recorrente nos editais de concursos para cargos em TI: Segurança em Banco de Dados.
Geralmente este conteúdo vem junto com outros tópicos relacionados a Administração de Banco de Dados nos editais.
Então, vem comigo nessa primeira etapa sobre este assunto ! Simbora! 😉
Com o crescimento do uso de recursos de TI no mundo, principalmente em relação ao uso de aplicativos e sistemas, falar em segurança de dados passou praticamente regra nos dias de hoje.
No tocante a segurança aplicada em banco de dados, o foco é controlar acessos que sejam maliciosos, sendo eles intencionais ou não, ou até os não maliciosos, que podem ocorrer por erro operacional ou técnico e que podem prejudicar o conteúdo armazenado, como por exemplo, ocasionar a perda de dados ou prejudicar a sua consistência.
Neste cenário, para fins de tentar coibir estes tipos de ações, a segurança em SGBDs (Sistemas Gerenciadores de Banco de Dados) é feita através de controles de forma de acesso, onde os perfis dos usuários precisam ser definidos, afim de delimitar suas permissões. Mitigar possíveis ataques também é outra medida, avaliando e planejando quais serão as formas de contenção e prevenção destes ataques, como por exemplo, se valendo do uso de certificados digitais e/ou criptografia. A privacidade da informação é outro aspecto que precisa também ser levado em consideração no rol de ações em prol da segurança em banco de dados.
A segurança em banco de dados precisa atuar de forma a proteger os pilares da segurança da informação, o CID – Confidencialidade, Integridade e Disponibilidade. Vou comentar sobre cada um deles:
- Confidencialidade: Este pilar garante que as informações sejam acessadas apenas por pessoas autorizadas.
- Integridade: Esse princípio garante que as informações, tanto em sistemas subjacentes quanto em bancos de dados, estejam em um formato verdadeiro e correto para seus propósitos originais. Logo, o receptor da informação detém as mesmas informações que o seu criador.
- Disponibilidade: O foco deste pilar é garantir que as informações e os recursos estejam disponíveis para aqueles que precisam deles, 24 horas por dia, sete dias por semana (salvo, em casos de indisponibilidade planejada).
Vejamos a partir de agora alguns Mecanismos de Segurança em Banco de Dados:
A maioria dos fabricantes de SGBDs incluem um subsistema de segurança e autorização de banco de dados, com a finalidade de garantir a segurança de partes de um banco de dados contra acesso não autorizado.
Neste contexto, os autores abordam em sua literatura dois tipos de mecanismos de segurança em banco de dados: Mecanismos de Segurança Obrigatórios e os Mecanismos de Segurança Discricionários. Vem comigo!
- Mecanismos de Segurança Obrigatórios:
- São usados para impor a segurança multinível pela classificação de dados e usuários em várias classes (ou níveis) de segurança e depois pela implementação da política de segurança apropriada da organização, não se limitando apenas em conceder privilégios, mas em levar em consideração uma política adicional de segurança através dos controles de acesso baseado em papéis e em nível de linha. Vejamos abaixo.
-
-
- Controle de acesso baseado em papéis:
- Os privilégios e outras permissões são associados a papéis organizacionais, em vez de usuários individuais. Tais usuários recebem papéis apropriados.
- Controle de acesso baseado em papéis:
-
-
-
- Controle de acesso em nível de linha:
- São regras sofisticadas, capazes de controlar o acesso por linha de dados. Neste tipo de controle, cada linha recebe um rótulo, que é usado para armazenar informações sobre a sensibilidade dos dados. Os rótulos são usados para impedir que usuários não autorizados vejam ou alterem certos dados. Um usuário com baixo nível de autorização tem acesso negado aos dados com número de nível alto. Este tipo de controle também é chamado de controle multinível, sendo o modelo mais conhecido chamado de modelo de Bell-LaPadula. Trago abaixo um trecho do livro do Navathe, onde ele descreve de forma resumida este modelo:
- Controle de acesso em nível de linha:
-
“..o modelo Bell-LaPadula classifica cada sujeito (usuário, conta, programa) e objeto (relação, tupla, coluna, visão, operação) em uma das classificações de segurança TS(top secret), S(secret), C(confidencial) e U(unclassified), onde TS >= S >= C >= U…”
“…Vamos nos referir à autorização (classificação) de um sujeito S como classe (S) e à classificação de um objeto O como classe (O). Duas restrições são impostas no acesso aos dados com base nas classificações de sujeito/objeto:
-
-
-
-
- Um sujeito S não tem permissão de acesso de leitura a um objeto O a menos que a classe(S) >= classe(O). Isso é conhecido por propriedade de segurança simples.
- Um sujeito S não tem permissão de escrita sobre um objeto O a menos que a classe(S) <= classe(O). Isso é conhecido como propriedade estrela.
-
-
-
A primeira restrição é intuitiva e impõe a regra óbvia de que nenhum sujeito pode ler um objeto cuja classificação de segurança é maior do que a autorização de segurança do sujeito. A segunda restrição é menos intuitiva. Ela proíbe um sujeito de gravar um objeto em uma classificação de segurança inferior do que a autorização de segurança do sujeito. A violação dessa regra permitiria que a informação fluísse de classificações mais altas para mais baixas, o que viola um princípio básico da segurança multinível…”
- Mecanismos de Segurança Discricionários: Estes são usados para conceder privilégios aos usuários, incluindo a capacidade de acessar arquivos de dados, registros ou campos específicos em um modo personalizado, como por exemplo, para leitura, inserção, exclusão ou atualização.
Por enquanto é isso, no próximo artigo vamos explorar melhor os Mecanismos de Segurança Discricionários, pois são os mais recorrentes em questões de concursos.
Referências: Sistemas de Banco de Dados – 6ª Ed. – Elmasri, Ramez; Navathe.
Um forte abraço, bons estudos e até o próximo artigo !
=======================
Prof. Luis Octavio Lima