Professional Documents
Culture Documents
Distribuídos
Material Teórico
Segurança em Banco de Dados Distribuídos
Revisão Textual:
Prof.ª Dr.ª Selma Aparecida Cesarin
Segurança em Banco de Dados Distribuídos
• Privilégios de Acesso;
• Armazenamento Distribuído dos Dados;
• Processamento de Consultas Distribuídas;
• Segurança de Dados.
OBJETIVO DE APRENDIZADO
• Compreender a importância dos estudos dos conceitos sobre a distribuição de Da-
dos, privilégios de acesso aos usuários do Banco de Dados, criptografia dos Dados
nas transações e processo de backup existente nas Bases de Dados.
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem
aproveitado e haja maior aplicabilidade na sua
formação acadêmica e atuação profissional, siga
algumas recomendações básicas:
Conserve seu
material e local de
estudos sempre
organizados.
Aproveite as
Procure manter indicações
contato com seus de Material
colegas e tutores Complementar.
para trocar ideias!
Determine um Isso amplia a
horário fixo aprendizagem.
para estudar.
Mantenha o foco!
Evite se distrair com
as redes sociais.
Seja original!
Nunca plagie
trabalhos.
Não se esqueça
de se alimentar
Assim: e de se manter
Organize seus estudos de maneira que passem a fazer parte hidratado.
da sua rotina. Por exemplo, você poderá determinar um dia e
horário fixos como seu “momento do estudo”;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos e
sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão
sua interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e
de aprendizagem.
UNIDADE Segurança em Banco de Dados Distribuídos
Privilégios de Acesso
Já vimos diversos conceitos e exemplos sobre os Bancos de Dados Distribuídos
e ainda aprendemos que existem configurações e ambientes que devem ser estu-
dados e preparados para que se consiga o máximo de desempenho com relação à
estrutura de armazenamento e consulta de Dados.
Agora vamos desviar nossa atenção a segurança dos Dados e como permitir que
eles sejam acessados e por quem.
8
• Fragmentação: a relação é particionada em vários fragmentos, em que cada
fragmento é armazenado num site diferente;
• Replicação e fragmentação: a relação é particionada em vários segmentos e
o Sistema mantém diversas réplicas de cada fragmento;
• Replicação de Dados: trabalhar com a replicação de Dados consiste que
um determinado objeto de Dados lógico pode possuir diversos representantes
armazenados em nós. O grau de suporte para a replicação é um pré-requisito
para atingir o verdadeiro potencial de um Sistema distribuído;
• Fragmentação de Dados: realizar a divisão de uma relação é separá-la em
partes ou fragmentos, em que cada fragmento contém uma parte dessa infor-
mação suficiente para permitir a reconstrução da relação original;
Figura 1
Fonte: iStock/Getty Images
9
9
UNIDADE Segurança em Banco de Dados Distribuídos
Ela pode ser implementada por meio de mecanismos que tenham como objetivo
garantir a proteção deles contra uma variedade de ameaças.
Uma ameaça aos Bancos de Dados é qualquer ação que resulte em perdas ou
degradação de parte ou da totalidade da integridade, confiabilidade e disponibilida-
de dos Dados.
Perder integridade significa que foram efetuadas mudanças não autorizadas nos
Dados resultantes de ações intencionais ou acidentais, que podem ter como conse-
quência decisões imprecisas, fraudulentas ou errôneas.
10
Figura 2
Para tentar evitar ao máximo essas perdas, devem ser adotadas medidas de controle
no gerenciamento de Sistemas de Banco de Dados. Como, por exemplo, algumas bem
comuns: controle de acesso, controle de inferência, controle de fluxo e criptografia.
Segurança de Dados
A utilização da Tecnologia que envolve Armazenamento e Recuperação de Da-
dos, seja num Ambiente Tradicional, seja num Distribuído, precisa ser monitorado.
O controle de autorização, por sua vez, deve garantir que apenas usuários auto-
rizados executem operações que foram designadas ou, ainda, que tem a permissão
sobre o Banco de Dados para tal processamento.
11
11
UNIDADE Segurança em Banco de Dados Distribuídos
Algumas questões são levantadas para tentar prover uma solução para a segurança:
• Questões legais e éticas relacionadas ao direito de acessar determinadas informações;
• Questões políticas em nível governamental, institucional ou corporativo relati-
vas a informações que devem ter sua confidencialidade mantida;
• Questões de Sistema, envolvidos com níveis de Sistema, como a definição da
forma de tratamento da segurança, se esta será tratada no nível de hardware,
no nível de sistema operacional ou no nível de SGBD.
Controle de Acesso
O conceito que é mais utilizado para a criação e imposição do controle de aces-
so tem como objetivo a concessão e a revogação de privilégios.
• Nível de conta – O DA especifica os privilégios individuais de cada conta exis-
tente no Banco de Dados, independente de suas relações nele. Podem incluir
privilégios como CREATE TABLE, CREATE VIEW, ALTER, DROP, MODIFY
e SELECT;
12
• Nível de relação – O DBA pode controlar o privilégio para acessar cada rela-
ção ou visão individual no Banco de Dados. Tais privilégios especificam para
cada usuário as relações individuais sobre as quais cada tipo de comando pode
ser aplicado.
Observação
Para criar uma visão (view), o usuário precisa ter o privilégio SELECT em todas
as relações envolvidas na definição dela.
Criptografia de Dados
A preocupação com os Dados não se restringe apenas ao seu armazenamento;
enviar e receber Dados ou informações sigilosas é uma necessidade e não é uma
novidade, há tempos isso acontece, ou seja, existe há centenas de anos.
Figura 3
Fonte: iStock/Getty Images
13
13
UNIDADE Segurança em Banco de Dados Distribuídos
Esse modelo permite que um conjunto de bits baseado num determinado algo-
ritmo tenha capacidade de codificar e de decodificar informações.
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXX
Figura 4
14
Desse jeito, bastava apenas que o receptor da informação conhecesse esse al-
goritmo para poder extraí-la. O problema seria se um alguém que conseguisse
interceptar a informação, um intruso, tivesse posse desse algoritmo: ele poderia
efetuar um processo de contrário ao decriptografar a decifragem, caso capturasse
os Dados criptografados.
Mas não era apenas isso. Existia outro problema.
Pense na situação: imagine que a pessoa emissora tivesse de enviar uma infor-
mação criptografada à pessoa receptora 1; para que conseguisse decifrar, ela teria
de conhecer o algoritmo usado.
Agora pense que outra pessoa receptora (2) também precisasse receber uma
informação da pessoa emissora, mas esta pessoa não poderia descobrir qual é a
informação a ser enviada à pessoa receptora 1.
Se essa pessoa capturasse a informação enviada à pessoa receptora 1, também
conseguiria decifrá-la, pois quando a pessoa emissora enviou sua informação, a
pessoa receptora 2 também teve de conhecer o algoritmo usado.
Para a pessoa emissora evitar esse problema, ela deveria utilizar um algoritmo
diferente para cada receptor.
Isso demonstra que, com o uso de chaves, um emissor pode usar o mesmo algo-
ritmo (o mesmo método) para vários receptores. O método faz com que cada um
receba uma chave diferente e ainda prevê que se um receptor perder ou expuser
determinada chave, é possível trocá-la, mantendo-se o mesmo algoritmo.
Na computação e sua evolução, as máquinas conseguem, por meio de sua con-
figuração, tratar um conjunto cada vez maior com mais velocidade. Por isso, na
criptografia, também temos o termo bits e seu tamanho, como, por exemplo, os
termos chave de 64 bits, chave de 128 bits.
Esses números indicam o tamanho de uma determinada chave, ou seja, quanto
mais bits forem utilizados, mais segura será a criptografia.
O exemplo a seguir serve para melhorar o conceito sobre o termo e o tamanho
da chave: algoritmo com chaves de 8 bits = 256 chaves que poderão ser usadas
na decodificação, pois 2 elevado a 8 é 256. Nos dias atuais, 8 bits é inseguro, pois
até uma pessoa é capaz de gerar as 256 combinações
Vamos utilizar agora 128 ou mais bits para chaves (2 elevado a 128); agora sim,
será gerada uma quantidade extremamente grande de combinações, deixando a
informação criptografada bem mais segura.
Essa técnica de criptografia de Dados consiste em transformar um texto simples
em algo ilegível. Para se realizar a decodificação, somente os indivíduos autorizados
possuirão os recursos e as chaves necessárias para conseguir reverter o processo e
recuperar o texto inicial.
A utilização da criptografia é recomendada para Empresas de todos os tama-
nhos e segmentos, que tem como objetivo proteger Dados restritos e confidenciais
de serem lidos por indivíduos não autorizados ou da maneira não autorizada.
15
15
UNIDADE Segurança em Banco de Dados Distribuídos
Isso traz à tona o uso legal da informação nos Empreendimentos, algumas Em-
presas tentam melhorar seus processos de TI, visando a proteger seus Dados, es-
pecialmente, os mais críticos, de possíveis acessos não autorizados, tanto internos,
quanto externos.
Uma regulação que pode ser mais comum no nosso país é a PCI (Payment
Card Industry), já que são normas implementadas em websites, que disponibilizam
a opção de compras com cartão de crédito.
16
implementada a criptografia, pode haver problemas de performance, já que agora
foi incluído um novo fator na leitura e na escrita dos Dados no Banco de Dados.
Outro fator a ser considerado é a Rede por onde os Dados irão trafegar. Muitas
vezes, a criptografia é implementada no Banco de Dados; porém, esses Dados
serão transmitidos por uma rede sem criptografia.
Por essa razão, é necessário que os Dados também estejam protegidos enquanto
estiverem sendo transferidos pela Rede. Isso pode ser um grave problema, princi-
palmente, se a informação for trafegar através de uma rede pública.
Muito bem, agora que já vimos uma série de conceitos e exemplos sobre traba-
lhar no ambiente de Bases ou Banco de Dados Distribuído, vamos conversar sobre
o que fazer com os Dados armazenados, fazer backup.
Figura 5
Fonte: iStock/Getty Images
Trabalhar com Banco de Dados significa criar toda uma estrutura que vai da par-
te de armazenamento, seus pontos de relacionamento, suas regras de segurança,
sua administração e guardar seus Dados para eventuais soluções de problemas, e
não apenas deixá-los no Sistema para que todo dia possam ser consultados, mas
de uma maneira que, se houver algum tipo de problema, teremos certeza que, por
algum método, podemos recuperá-los – backup.
Como evitar?
17
17
UNIDADE Segurança em Banco de Dados Distribuídos
o Banco de Dados. Nessa situação, você pode utilizar o seu último backup, retor-
nando só os Dados para a situação em que o Banco se encontrava no momento
desse backup.
Analisando alguns casos mais próximos da realidade nas Empresas que utili-
zam plataformas de Banco de Dados, tais como SQL Server, Oracle e MySQL,
18
independente de se ter uma estrutura centralizada ou distribuída e que utiliza, por
exemplo, aplicações como Sistemas ERP e CRM, entre outros, existem alguns re-
quisitos na hora de fazer o backup de Banco de Dados.
Trabalhar a segurança e as cópias de segurança pode não ser algo que elimine
problemas com os Dados; uma solução completa deve incluir backup de Banco de
19
19
UNIDADE Segurança em Banco de Dados Distribuídos
Esse backup feito na nuvem é uma forma automatizada e digital para facilitar a
localização da informação e o acesso dos arquivos e informações de qualquer lugar
em que haja conexão com a Internet.
Figura 6
Fonte: iStock/Getty Images
20
• Servidor diferente: no momento em que a recuperação é realizada por um
servidor diferente ou localizado numa rede diferente e fisicamente distante da
Sede da Empresa, é possível fazer migrações com mais facilidade e minimizar
o risco de perda de Dados;
• Tamanho reduzido: eliminar arquivos duplicados. Fique atento para não criar
cópias de backups já feitos anteriormente e que não sofreram alterações;
• Backup de aplicações: as soluções de backup devem abranger não somente
Dados e Informações, como também as aplicações;
• Tempo otimizado: os usuários estão alterando arquivos da Rede e criando
arquivos o tempo todo; não deixe grandes janelas de backup. Conte com
rotinas de backups capazes de salvar Dados continuamente, assegurando
backups atualizados;
• Controle periódico: relatórios diários para a equipe responsável pelo serviço
de armazenamento;
• Conexão direta: o agente de backup não tem capacidade de interpretar os
Bancos de Dados, estabelecer uma conexão direta ao Banco de Dados para
garantir a capacidade de interpretação e ação localizada onde o backup de
Banco de Dados corrompeu;
• Configuração facilitada: busque soluções que ofereçam automação e facili-
dade para evitar gastos excessivos de tempo e dinheiro com as configurações
de rotinas de backup toda a vez que o Banco de Dados for alterado ou forem
criando novos Bancos;
• Criptografia dos Dados: a criptografia dos Dados que estão sendo armazena-
dos impede o acesso de pessoas não autorizadas, protegendo as informações
caso elas sejam interceptadas durante o tráfego;
• Plano de restore: facilidade de configurar e realizar rotinas de backup deve
valer também para recuperar Banco de Dados perdidos, corrompidos ou for-
matados. Faça testes no seu ambiente para buscar formas de atuação em caso
de imprevistos.
21
21
UNIDADE Segurança em Banco de Dados Distribuídos
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
Livros
Introdução a Sistemas de Banco de Dados
DATE, C. J. 1941. Introdução a Sistemas de Banco de Dados. Tradução de Daniel
Vieira. Rio de Janeiro: Elsevier, 2003.
Sistemas distribuídos princípios e paradigmas
TANENBAUM, A. S.; STEEN, M. V. Sistemas distribuídos princípios e paradigmas.
3.ed. São Paulo: Pearson, 2009. (e-book).
Leitura
Artigo SQL Magazine 44 - Técnicas de backup e recuperação de dados em MySQL
https://goo.gl/1d2yPW
Como fazer e restaurar backup de bancos de dados SQL em locais remotos
https://goo.gl/4VRqom
22
Referências
DATE, C. J. 1941 – Introdução a Sistemas de Banco de Dados. Tradução de
Daniel Vieira. Rio de Janeiro: Elsevier, 2003
23
23