Sunteți pe pagina 1din 51

UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN

DEPARTAMENTO ACADMICO DE ELETRNICA


ESPECIALIZAO SEMIPRESENCIAL EM CONFIGURAO E
GERENCIAMENTO DE SERVIDORES E EQUIPAMENTOS DE REDES

DANIEL LUCAS DOS SANTOS

CONTROLE DE ACESSO EM SISTEMAS GERENCIADORES DE


BANCO DE DADOS

MONOGRAFIA

CURITIBA
2014
1

DANIEL LUCAS DOS SANTOS

CONTROLE DE ACESSO EM SISTEMAS GERENCIADORES DE


BANCO DE DADOS

Monografia apresentada como requisito


parcial obteno do ttulo de
Especialista em Configurao e
Gerenciamento de Servidores e
Equipamentos de Rede, do Departamento
Acadmico de Eletrnica, da Universidade
Tecnolgica Federal do Paran.

Orientador: Prof. Me. Christian Carlos


Souza Mendes

CURITIBA
2014
2

RESUMO

DOS SANTOS, Daniel L. Controle de acesso em sistemas gerenciadores de


banco de dados. 2014. 50 f. Monografia (Especializao em Configurao e
Gerenciamento de Servidores e Equipamentos de Redes). Universidade Tecnolgica
Federal do Paran. Curitiba, 2014.

A presente monografia descreve uma anlise tcnica sobre como o controle


de acesso em sistemas gerenciadores de banco de dados so implantados, quais
suas vantagens e vulnerabilidades e como atendem s necessidades de uma
poltica de segurana. Este trabalho inicia com o levantamento sobre segurana da
informao, servindo de base e sustentao pesquisa dos principais mecanismos
de controle de acesso disponveis em sistemas gerenciadores de banco de dados.
Em seguida apresenta os detalhes sobre o controle de acesso no banco de dados
Oracle e finaliza com uma anlise sobre os resultados da pesquisa e quais as
perspectivas destes mecanismos atenderem as polticas de segurana.

Palavras-chave: Banco de Dados, Controle de Acesso, Segurana de Dados.


3

ABSTRACT

DOS SANTOS, Daniel L. Control access on database management system. 2014.


50.p. Monograph (Specialization in Configurationand Management of Servers and
Network Equipments) - Federal Technological University of Paran. Curitiba, 2014.

The present monograph describes a technical analysis over how the access
control on data bank's managing systems is implanted, what are their advantages
and vulnerabilities and how they serve the needs of a security policy. This work starts
with the data collection over information security, serving as foundation to the
research of the main access control mechanisms available on data bank managing
systems. Next, it presents the details over control access the database Oracle and
concludes with the analysis of the research results and what are the perspectives of
these mechanisms to attend the security policies.

Keywords: Database, Control Access, Data Security.


4

LISTA DE SIGLAS

API - Interface de Programao de Aplicao


C - Confidencial
DAC Controle de Acesso Discriminatrio
DBA Administrador de Banco de Dados
DDL Linguagem de Definio de Dados
DML Linguagem de Manipulao de Dados
MAC Controle de Acesso Obrigatrio
NPD Domnio de Proteo Nomeada
PII Informaes Pessoalmente Identificveis
PL/SQL Linguagem Procedural/Linguagem de Consulta Estruturada
RBAC Controle de Acesso Baseado em Papis
S - Secreto
SGBD Sistemas Gerenciadores de Banco de Dados
SQL Linguagem de Consulta Estruturada
TI Tecnologia de Informao
TS Altamente Confidencial
U No Classificada
VPD - Banco de Dados Virtual
5

LISTA DE ILUSTRAES

Figura 1 Grfico de concesso de autorizao.......................................................25

Figura 2 Grfico de concesso de privilgio entre si...............................................25

Figura 3 Tentativa de burlar o controle de segurana.............................................26

Figura 4 Sintaxe para criar uma role.......................................................................38

Figura 5 Exemplo de utilizao de papis...............................................................39

Figura 6 Sequncia de verificao DAC..................................................................45

Figura 7 - Como rtulos de dados e usurios trabalham juntos.................................47


6

SUMRIO

1 INTRODUO ......................................................................................................... 8
1.1 TEMA .................................................................................................................... 8
1.2 PROBLEMAS E PREMISSAS ............................................................................... 9
1.3 OBJETIVOS ........................................................................................................ 10
1.3.1 Objetivos Gerais ............................................................................................... 10
1.3.2 Objetivos Especficos ....................................................................................... 10
1.4 JUSTIFICATIVA .................................................................................................. 11
1.5 PROCEDIMENTOS METODOLGICOS ............................................................ 11
1.6 ESTRUTURA ...................................................................................................... 12
2 REFERENCIAIS TERICOS ................................................................................. 13
2.1 INTRODUO .................................................................................................... 13
2.1.1 Conceitos Sobre Segurana em Banco de Dados ........................................... 13
2.1.2 Segurana da Informao ................................................................................ 14
2.2 CONFIDENCIALIDADE ....................................................................................... 15
2.2.1 Privacidade de Comunicao ........................................................................... 15
2.2.2 Armazenamento Seguro de Dados Sensveis .................................................. 16
2.2.3 Autenticao de Usurios................................................................................. 16
2.2.4 Controle de Acesso Granular ........................................................................... 17
2.3 INTEGRIDADE .................................................................................................... 18
2.4 DISPONIBILIDADE ............................................................................................. 18
3 CONTROLE DE ACESSO EM SGBDS ................................................................. 19
3.1 INTRODUO .................................................................................................... 19
3.2 CONTRLE DE DADOS SEMNTICOS ............................................................ 19
3.2.1 Administrador de Banco de Dados ................................................................... 20
3.2.2 Gerenciamento de Vises ................................................................................ 21
3.2.3 Controle de Segurana..................................................................................... 21
3.2.4 Controle de Integridade Semntica .................................................................. 22
3.3 PRIVILGIOS ...................................................................................................... 22
3.3.1 Privilgios de Sistema ...................................................................................... 23
3.3.2 Privilgios de Objeto......................................................................................... 23
3.4 CONCESSO E REVOGAO DE PRIVILGIOS ............................................ 24
3.5 CONTROLE DE ACESSO BASEADO EM PAPIS ............................................ 26
3.6 CONTROLE DE ACESSO DISCRICIONRIO .................................................... 28
7

3.7 CONTROLE DE ACESSO OBRIGATRIO ........................................................ 30


4 CONTROLE DE ACESSO NO SGBD ORACLE ................................................... 33
4.1 ESTUDO DE CASO COM O SGBD ORACLE .................................................... 33
4.2 PRIVILGIOS DE SISTEMAS E OBJETOS ........................................................ 34
4.2.1 Privilgios de Sistema ...................................................................................... 35
4.2.2 Privilgios de Objeto......................................................................................... 36
4.3 USO DE PAPIS PARA ADMINISTRAR PRIVILGIOS ..................................... 38
4.3.1 Papeis de Banco de Dados .............................................................................. 38
4.3.2 Papis de Empreendimentos ........................................................................... 39
4.3.3 Papis Globais ................................................................................................. 40
4.3.4 Papis de Aplicaes Seguras ......................................................................... 40
4.4 USO DE STORED PROCEDURE PARA ADMINISTRAR PRIVILGIOS ........... 41
4.5 USO DE INSTALAES DE REDE PARA ADMINISTRAR PRIVILGIOS ........ 41
4.6 USO DE VISES PARA ADMINISTRAR PRIVILGIOS .................................... 41
4.7 SEGURANA EM NVEL DE REGISTRO .......................................................... 42
4.7.1 Segurana Baseada em Rtulo ........................................................................ 42
4.7.1.1 Conceito de Virtual Private Database (VPD) ............................................. 43
4.7.1.2 Oracle Label Security .................................................................................. 44
4.7.1.3 Rtulos de Dados e Rtulos de Usurios Trabalhando Juntos .............. 46
5 CONSIDERAES FINAIS ................................................................................... 48
REFERNCIAS ......................................................................................................... 49
8

1 INTRODUO

Inicialmente este trabalho tem como objetivo abordar os mecanismos de


segurana em sistemas gerenciadores de banco de dados (SGBD), atravs da
consistncia dos dados e a segurana de acesso.

1.1 TEMA

Pode-se observar que, paralelamente ao avano da tecnologia de informao


(TI), criou-se uma gigantesca quantidade de recursos disponveis tanto para o
processamento como para o armazenamento de dados. Esses recursos por sua vez,
tm como finalidade criar, organizar e manter as informaes das organizaes,
visando garantir a segurana e persistncia das mesmas.
Os SGBDs surgem com a necessidade de armazenar, proteger e
disponibilizar informaes. Para todos os casos, sejam estes dados, registros triviais
como a quantidade de um produto em estoque, ou o contedo sigiloso sobre a conta
bancria de uma pessoa, ou ainda, as informaes estratgicas de uma grande
corporao, o tema segurana de bancos de dados enfrenta os mesmos desafios da
segurana de informao, que garantir a integridade, disponibilidade e
confidencialidade dos dados.
A preocupao em implantar e manter ambientes seguros tem sido uma das
principais, seno a principal ocupao dos administradores de redes e
administradores de banco de dados (DBA). Pesquisas mostram que os ataques
internos, ou seja, aqueles conduzidos por pessoas de dentro da prpria empresa
chegam a 18% dos casos estudados (VERIZON, 2014, p. 14). Profissionais
responsveis pela segurana da informao, esto continuamente criando,
implantando e monitorando mecanismos que possam detectar e ou inibir as
tentativas de acesso no autorizado ou pelo menos diminuir as chances de sucesso
das tentativas de invaso sejam elas externas ou internas. O controle de acesso a
SGBDs busca garantir que apenas usurios autorizados consigam ler, inserir ou
9

alterar dados, de acordo com regras de segurana e privilgios previamente


estabelecidos.

1.2 PROBLEMAS E PREMISSAS

Um sistema de banco de dados uma forma de armazenar dados e gerir


informaes para posterior recuperao ou atualizao dessas informaes por um
usurio. Por consequncia, deve evitar perdas de dados por falhas no sistema,
acessos no autorizados e anomalias de dados (TANENBAUM, 2003, p. 21).

Os avanos tecnolgicos tm proporcionado uma crescente melhora no


gerenciamento da segurana da informao. Concorrente a estes avanos, as
tentativas de acesso indevido aumentam na mesma proporo. O avano da
tecnologia pode, em alguns casos, acabar colocando muitas empresas em situao
delicada. Problemas internos ou externos tm marcado presena no dia a dia das
instituies, principalmente daquelas que no possuem poltica de segurana
implantada e bem definida. Na medida em que o comrcio eletrnico e os aplicativos
na internet continuam crescendo, encontrar o equilbrio entre a disponibilidade e a
proteo dos dados, torna-se um desafio fundamental.

Diante deste contexto, os sistemas gerenciadores de banco de dados,


assumem um papel cada vez mais importante, devendo proporcionar que seus
usurios consigam compartilhar os dados de forma seletiva, com capacidade para
limitar o acesso, fornecendo mecanismos de segurana e proteo.

Proteger dados contra o acesso no autorizado, destruio maliciosa,


alteraes acidentais ou inconsistncias esto entre as principais funes de um
sistema gerenciador de banco de dados. As perdas acidentais de consistncia,
normalmente so causadas por erros do sistema, esse tipo de perda so
normalmente mais fcil de solucionar. J os acessos maliciosos so mais difceis de
serem rastreados, pois podem ser decorrentes de acesso no autorizado e
normalmente causam alteraes ou destruio de dados (PISSINOU, 1994 apud
ACKERMANN, 2003 p. 13).

Diante deste cenrio, onde a informao e o controle de acesso a estas


10

informaes despontam como um dos bens mais valiosos de uma empresa surge o
questionamento: o controle de acesso em sistemas gerenciadores de banco de
dados suficiente para garantir a confidencialidade, integridade e disponibilidade da
informao de acordo com a poltica de segurana? Como so feitos os controles de
acesso em SGBDs? Como implantada e gerenciada a concesso e revogao de
privilgios?

1.3 OBJETIVOS

Nesta sesso sero trabalhados objetivo geral e objetivos especficos.

1.3.1 Objetivos Gerais

Fazer uma anlise tcnica sobre os mecanismos de controle de acesso em


SGBDs e detalhar particularmente como so implantados em um banco de dados
Oracle.

1.3.2 Objetivos Especficos

Descrever os conceitos sobre segurana da informao e traar seus


paralelos com a segurana em Banco de Dados.
Descrever os tipos mais conhecidos de controles de acesso em SGBD, os
modelos de acesso discricionrios e obrigatrios;
Abordar particularmente os itens que fazem referncia ao controle de acesso
no SGBD Oracle, tipos de privilgios disponveis e como podem ser usados;
Verificar como o controle de acesso em SGBDs atende as necessidades de
uma poltica de segurana.
11

1.4 JUSTIFICATIVA

So cada vez maiores as quantidades de informaes armazenadas pelas


empresas. Junto com este crescimento, aumentam tambm as responsabilidades do
DBA. Quanto maiores os volumes de dados, mais complexos se tornam os
mecanismos para garantir a disponibilidade da informao e controle de acesso s
mesmas. O aumento dos nmeros de usurios e a forma de acesso ficam cada vez
mais complexas.
preciso pesquisar e entender as necessidades da segurana de acesso,
para poder criar mecanismos que garantam a qualidade dos dados, direitos de
propriedade intelectual e sobrevivncia do banco de dados (ELMASRI; NAVATHE,
2012, p. 563).

1.5 PROCEDIMENTOS METODOLGICOS

Esta uma pesquisa de carter terico a respeito de segurana no controle


de acesso a SGBD, sendo utilizados como fontes de pesquisa: livros, artigos
cientficos, dissertaes, revistas, normas tcnicas, internet e outros. O mtodo de
estudo, essencialmente bibliogrfico, parte de uma reviso sobre o conceito bsico
de segurana da informao e seus trs pilares de sustentao: a confidencialidade,
a integridade e a disponibilidade (ALBUQUERQUE, 2002). Em seguida levanta os
conceitos sobre o controle de acesso padro de um SGBD, controles semnticos,
privilgios, concesses e revogaes, papis, modelos de controle de acesso
discricionrios e os modelos de controle de acesso obrigatrios (ELMASRI;
NAVATHE, 2012, cap. 24).
12

1.6 ESTRUTURA

A monografia composta por cinco captulos, comeando por este de carter


introdutrio, onde ser apresentado o tema, objetivos pretendidos, a justificativa para
escolha do tema e a disposio do problema. Alm disso, sero apresentados o
procedimento metodolgico adotado e a estrutura da monografia.
O segundo captulo aborda os referenciais tericos, descrevendo os conceitos
bsicos sobre segurana, sua relevncia para a segurana dos dados e tipos de
controles.
O captulo 3 trata dos controles de acesso padres, descrevendo os controles
semnticos, o que so privilgios, quais so os tipos de concesses e o
funcionamento de atribuio e revogao. Apresenta o conceito de controle de
acesso baseado em papis e como so controlados pelos SGBDs. E finalmente
conclui o estudo com a apresentao dos controles de acesso discricionrios e
obrigatrios.

O quarto captulo dedicado ao estudo de controle de acesso em um SGBD


especfico, no caso escolhemos o banco de dados Oracle, por ser considerado um
dos mais completos em termos de controle de acesso a dados. So abordados os
privilgios de sistemas e objetos e segurana em nvel de registro.

No quinto e ltimo captulo relatamos as concluses desta pesquisa,


apontando seus resultados e perspectivas futuras.
13

2 REFERENCIAIS TERICOS

2.1 INTRODUO

Este captulo pretende apresentar os conceitos bsicos sobre a segurana da


informao, suas correlaes com a segurana em SGBDs e ainda, descrever o
desafio e a complexidade dos mecanismos de segurana para manter o equilbrio
entre a necessidade de concesso de privilgios e a proteo de informaes
privadas.

2.1.1 Conceitos Sobre Segurana em Banco de Dados

Quando se fala de segurana em banco de dados, de acordo com


Ramakrishnan e Gehrke (2008 cap. 21), trs objetivos principais devem ser
alcanados: a confidencialidade, a integridade e a disponibilidade. A
confidencialidade diz respeito ao acesso a informao por pessoa no autorizada,
ou quando um usurio no deve ter acesso a dados confidenciais de outro usurio.
A integridade refere-se alterao de dados no autorizada, um cliente pode
consultar seu saldo bancrio, mas no pode alterar os valores deliberadamente. E
por fim, a disponibilidade, trata da garantia que a informao estar disponvel
quando necessria. Para que se obtenha sucesso na busca destes objetivos,
preciso em primeiro lugar desenvolver uma poltica de segurana clara e consistente
capaz de descrever que tipos de aes so de carter obrigatrio.
Uma poltica de segurana consistente deve ser aplicada em diversos nveis,
comeando pela definio dos tipos de dados e qual a sensibilidade deles. Em
seguida preciso delimitar quais so os dados que precisam ser protegidos e quais
usurios tero acesso a qual parte destes dados. Posteriormente so implantados
os procedimentos de segurana do SGBD, do sistema operacional implcito, e
tambm os mtodos que iro garantir a segurana ao acesso fsico dos prdios e
14

equipamentos que armazenam as informaes (RAMAKRISHNAN; GEHRKE, 2008


cap. 21).

Falhas de segurana em sistemas operacionais ou em conexes de rede


podem arruinar com sistemas de segurana de um SGBD. Se uma pessoa no
autorizada obtiver acesso como administrador em um banco de dados, ter todos os
privilgios inerentes a conta de um administrador, podendo causar perda de dados
alteraes e quebras de sigilo irreversveis. Da mesma forma, um funcionrio
autorizado a acessar dados confidenciais, porm mal intencionado, poder por em
riscos a segurana do SGBD. Ou ainda, um usurio que escolhe uma senha fraca
ou no guarda sigilo da mesma, tambm estar causando uma brecha na poltica de
segurana. Erros como esses so responsveis por uma boa porcentagem das
falhas em sistemas de segurana. O foco deste trabalho so os mecanismos de
controle de acesso a SGBD, portando no entraremos nos detalhes dos aspectos de
segurana fsicos, humanos, de redes e sistemas operacionais (RAMAKRISHNAN;
GEHRKE, 2008 cap. 21).

2.1.2 Segurana da Informao

O tema segurana e extremamente vasto e no caberia falar sobre toda sua


abrangncia neste trabalho. Por este motivo o foco ser a segurana da informao.
Quando se pensa em segurana da informao deve-se, ao invs de questionar
quanto se deseja de segurana, perguntar qual nvel de disponibilidade da
informao necessita-se ou quais so os requisitos mnimos de confidencialidade.
Entre os diversos aspectos sobre segurana, pelo menos trs deles so essenciais.
(ALBUQUERQUE, 2002)

Confidencialidade;
Integridade;
Disponibilidade.
15

2.2 CONFIDENCIALIDADE

A confidencialidade lida com a preveno de leitura no autorizada de


informaes (STAMP, 2011, p. 2). a capacidade de um sistema em impedir que
usurios no autorizados tenham acesso a determinadas informaes ao mesmo
tempo em que usurios autorizados possam v-las (ALBUQUERQUE, 2002). A
confidencialidade uma questo chave quando se trata de bancos de dados, por
causa do problema de inferncia, em que um usurio pode acessar dados sensveis
de forma indireta. Inferncia uma forma de obter acesso a dados confidenciais a
partir de dados no confidenciais. O problema de inferncia uma vulnerabilidade
sutil em segurana de banco de dados (PFLEEGER, 2012, p. 17-19).

A maior dificuldade no gerenciamento da confidencialidade ocorre quando


dois usurios possuem o mesmo acesso a determinada informao ou tabela no
SGBD, mas cada um destes s deve acessar uma parte da informao. Um sistema
seguro precisa garantir que a informao privada somente possa ser vista por quem
tem direito. Sendo assim a confidencialidade possui vrias dimenses diferentes
(ACKERMANN, 2003, p. 19).

Privacidade de comunicao

Armazenamento seguro de dados sensveis

Autenticao de usurios

Controle de acesso granular

2.2.1 Privacidade de Comunicao

A comunicao uma das variveis mais importantes dentro de uma


organizao, pois tem a finalidade de ligar as demais variveis umas com as outras.
16

De que maneira pode-se assegurar a privacidade na comunicao de dados? A


privacidade um conceito bastante amplo e tem diferentes visibilidades que variam
de acordo com o tipo de informao e as necessidades da organizao. Para uma
empresa comercial, a privacidade pode estar no segredo comercial sobre produtos e
processos, nas anlises de concorrncia ou ainda nas estratgias de marketing e
vendas. Para uma um instituio governamental, a privacidade exige competncia
para manter em sigilo dados pessoais de milhares de pessoas, alm de proteger
informaes que afetam a segurana do pas.

2.2.2 Armazenamento Seguro de Dados Sensveis

H vrios razes para que dados sejam vistos como sensveis. Assuntos
pessoais e privados, comunicaes, segredos comerciais profissionais, planos da
empresa para o marketing ou finanas, informao militar, ou os planos do governo
para pesquisas, compras ou outras aes.

Dados sensveis so informaes de carter particular que podem causar


discriminao ou censura do seu proprietrio quando for objeto de tratamento no
autorizado, como por exemplo, informaes raciais, tnica, religiosa, filosfica ou
moral. Dados confidenciais devem ter sua integridade e privacidade garantida
quando armazenados em um BD.

2.2.3 Autenticao de Usurios

Como evitar que uma pessoa se passe por outra para obter acesso
privilegiado? A autenticao de usurios consiste na verificao tanto da identidade
do usurio como dos sistemas e ou processos que pretende utilizar.

Os sistemas de autenticao de usurios se dividem em trs categorias


(PFLEEGER, 2012, p. 219):

Baseada no conhecimento (o que se sabe) uso de senhas, chave de


criptografia, nmero de identificao pessoal (personal identificator number -
17

PIN), frases secretas ou nome de solteira da me.

Baseada na propriedade (o que se tem) caracteriza-se por um objeto fsico


que o usurio possui, como um carto inteligente (smart card), uma chave
fsica ou o uniforme de trabalho.

Baseada em caractersticas (o que se ) so autenticadores chamados de


biomtricos e que se baseiam em caractersticas fsicas do usurio, como
impresso digital, os padres de voz de uma pessoa ou um rosto (foto).

2.2.4 Controle de Acesso Granular

A granularidade diz respeito ao nvel de detalhamento, de linha e coluna, com


o qual se deseja permitir o acesso a informao para determinado usurio. O
controle e manuteno do acesso granular aos dados, principalmente para
organizaes que possuem vrios bancos de dados, um problema difcil de
resolver atravs de um mtodo ou soluo nica. O controle de acesso precisa ser
hbil para isolar partes do banco de dados, de forma que o acesso no seja aberto a
todos ou censurado a todos.

Existe uma diferena entre a autenticao a autorizao e o controle de


acesso. Ao autenticarmos um usurio, sua identidade verificada certificando que
ele autorizado a acessar uma determinada aplicao. A autorizao o processo
que far a verificao dos privilgios que este usurio possui para esta aplicao. E
o controle de acesso a maneira como ser limitado o acesso do usurio as
informaes fsicas na aplicao (ACKERMANN, 2003, p. 20).

Quanto maior a granularidade, maior ser o nmero de permisses a serem


definidas. Definir as permisses para um grupo de usurios gerentes, por exemplo,
necessita menos detalhamentos do que se tiver que definir permisses para cada
gerente particularmente. Um gerente pode necessitar acesso a tabela de salrios,
mas no a todos os salrios, somente os dos funcionrios do seu departamento.
18

2.3 INTEGRIDADE

A integridade lida com a preveno, ou pelo menos a deteco de alterao


de dados no autorizada (STAMP, 2011, p. 2). Se o objetivo de um banco de dados
servir como um repositrio central de dados, os usurios devem ser capazes de
poder confiar na preciso dos valores dos dados armazenados (PFLEEGER, 2012, p.
329).
Existem diversos fatores que podem comprometer a integridade dos dados,
esses fatores podem ter cunho intencional ou no, como por exemplo: usurios mal-
intencionados, hackers, erros de software, ao de malware, falhas de hardware,
erro humano, entre outros. Independente da forma ou motivo pela qual os dados
perdem sua integridade, a pergunta que devemos fazer : qual a importncia destes
dados para a empresa e quanto ela ir gastar para recuper-los? No restam
dvidas de que de fundamental importncia para as empresas manter a
integridade dos dados ou pelo menos, caso sejam corrompidos, construir
mecanismos que garantam a sua recuperao o mais rapidamente possvel.

2.4 DISPONIBILIDADE

A disponibilidade de um sistema indicada pela quantidade de vezes que foi


capaz de executar uma tarefa solicitada, sem falhas, dividido pelo nmero de vezes
que a tarefa foi solicitada (ALBUQUERQUE, 2002).

A perda de disponibilidade ocorre quando ela deixa de estar acessvel para


quem dela necessita. Como nos casos onde h perda de conexo com um sistema,
queda de um servidor, falhas internas ou externas de um equipamento. No caso de
ameaas a redes de computadores ou sistemas, essas ameaas podem vir de
agentes maliciosos.
19

3 CONTROLE DE ACESSO EM SGBDS

3.1 INTRODUO

Este captulo ir discutir a maneira como so normalmente implantados,


atravs do uso da linguagem de consulta estruturada (structured query language -
SQL), os controles de acesso nos SGBDs relacionais.

Inicialmente sero demonstradas as funcionalidades do controle de dados


semnticos, como auxiliam no gerenciamento de vises, no controle de segurana e
de integridade semntica e tambm uma breve viso das atribuies e
responsabilidades de um administrador de banco de dados.

Na sequncia ser apresentado o conceito de privilgios e suas duas


ramificaes: os privilgios de sistema e os privilgios de objeto. E em seguida como
so administradas as concesses e revogaes de privilgios.

Finalizando o captulo, sero discutidos os trs principais mecanismos de


controle de acesso em SGBDs: o controle de acesso baseado em papis, o controle
de acesso discricionrio e o controle de acesso obrigatrio.

3.2 CONTRLE DE DADOS SEMNTICOS

O controle semntico dos dados contidos em um SGBD e uma das suas


funcionalidades mais importantes. Ela responsvel pelo devido gerenciamento das
vises, pelo controle de segurana de acesso, pela manuteno da integridade
semntica e tambm pela disponibilidade da informao.

Os modelos semnticos surgiram com a necessidade de aprimorar o nvel de


detalhamento das aplicaes. Os SGBDs comerciais, em geral no oferecem um
nvel adequado e que atenda a todas as necessidades de segurana das aplicaes.
Mesmo assim os mecanismos de controle de dados semnticos so largamente
utilizados como ferramentas auxiliares no desenvolvimento de aplicaes.
20

Segundo zsu e Valduriez (2001, p. 170), a principal funo do controle


semntico de dados garantir que usurios autorizados, ao executarem aes, no
comprometam a integridade do banco de dados. Administrar o controle de dados
semntico faz parte das tarefas de responsabilidade do DBA e abrangem:

Gerenciamento de Vises;

Controle de Segurana;

Controle de Integridade Semntica.

3.2.1 Administrador de Banco de Dados

Um administrador de banco de dados responsvel por vrias funes


referentes ao controle de um SGBD. De acordo com Silberschatz, Korth e
Sudarshan (1999 p. 14) as principais so:

Definio do esquema;

Definio da estrutura de dados e mtodos de acesso;

Esquema e modificaes na organizao fsica;

Fornecer autorizao de acesso ao sistema;

Especificao de regras de integridade.

O DBA tem a importante tarefa de fazer a ligao entre as funcionalidades do


SGBD com os sistemas que o utilizam. Ele deve prover aos analistas de sistemas e
desenvolvedores, as informaes necessrias para o desenvolvimento de
aplicaes de banco de dados (ACKERMANN, 2003 p. 33).
21

3.2.2 Gerenciamento de Vises

Uma viso uma relao virtual, definida como o resultado de uma consulta
sobre relaes bsicas (ou relaes reais) mas no materializadas como uma
relao bsica armazenada no banco de dados (ZSU; VALDURIEZ, 2001, p.
171). Atravs das vises e possvel proteger o acesso direto as tabelas, criando uma
espcie de tabela virtual, onde so selecionados apenas os registros das tabelas
desejadas, ocultando aquilo que no se queira mostrar. O acesso por vises uma
forma simples de manter os dados protegidos, permitindo que o usurio veja as
informaes sem poder manipul-las (ZSU; VALDURIEZ, 2001, p. 171).

Os SGBD so bastante restritivos quanto a atualizaes atravs de vises. As


vises s podem ser atualizadas se for possvel propagar as suas relaes bsicas
sem que haja duplicidades. Para que isso seja possvel a vises dever ser gerada de
relaes nicas. Vises criadas a partir de junes ou unies no podem ser
atualizadas pela viso (ZSU; VALDURIEZ, 2001, p. 174, 175).

3.2.3 Controle de Segurana

O controle de segurana deve proteger os dados, de acesso no autorizado.


Um dos aspectos da segurana est relacionado com a proteo dos dados, que
pode, por exemplo, ser implantada atravs do uso de criptografia. Outro aspecto da
segurana se refere ao controle de autorizao que um processo intimamente
ligado aos SGBD. O controle de autorizao deve garantir que somente pessoas
autorizadas possam executar aes no banco de dados e somente as aes que lhe
forem permitidas. Esse controle implantado de forma centralizada em sistemas de
arquivos onde so especificados subconjuntos de objetos por seus predicados
(ZSU; VALDURIEZ, 2001, p. 176).
22

3.2.4 Controle de Integridade Semntica

A integridade semntica deve garantir que um dado inserido em uma linha da


tabela tenha um valor vlido. E para que este valor seja vlido ele deve ser do
mesmo tipo de dado definido na especificao da coluna na tabela. Por exemplo, um
atributo definido como data, s dever armazenar informaes relativas data. Se
por algum motivo o SGBD permitir que se grave outro tipo de dado diferente do
definido, teremos uma violao da integridade semntica.

Garantir a consistncia em um SGBD uma atividade difcil e importante.


Para seu sucesso necessrio satisfazer um conjunto de regras chamadas de
restries de integridade semntica. Essas regras devem garantir que o controle de
concorrncia dos programas no cause inconsistncias nos dados do SGBD.
Programas que violem as restries de integridade devem ser rejeitados (ZSU;
VALDURIEZ, 2001, p. 188).

3.3 PRIVILGIOS

Os privilgios, tambm chamados de autorizaes, so concesses nicas


feitas a usurios ou grupos de usurios e que define a maneira como dever ser
acessado determinado objeto. Atravs dos privilgios so concedidas as
autorizaes para modificar ou acessar determinados recursos do BD; como por
exemplo, autorizao para consultar uma tabela, permisso para que um usurio se
conecte ao BD, criao de tabelas no prprio escopo, fazer consultas nos registros
de tabelas de outros escopos, ou utilizar procedimentos de outros escopos do BD
(HAZEL, 2001, apud ACKERMANN, 2003 p. 34).

Essas autorizaes tambm so armazenadas nos catlogos dos prprios BD,


visto que os grupos de autoridade j possuem privilgios predefinidos, concedem
implicitamente privilgios a seus membros. Quando um usurio criado ele no
possui nenhum privilgio. Existe uma grande variedade de privilgios que podem ser
23

concedidos. Eles so divididos e dois tipos diferentes:

Privilgios de sistema

Privilgios de objeto

3.3.1 Privilgios de Sistema

Receber privilgios de sistema d ao usurio permisso para criar e


manipular objetos no banco de dados, mas no d acesso aos objetos que j
existem no BD.

Os privilgios de sistema permitem que usurios executem aes especficas


de sistema ou aes particulares de um objeto, como por exemplo, a criao,
alterao e remoo de tabelas, removerem registros de tabelas e executar stored
procedures. Normalmente por serem privilgios muito poderosos, so concedidos
apenas administradores e desenvolvedores (HAZEL, 2001, apud ACKERMANN,
2003 p. 35).

3.3.2 Privilgios de Objeto

Quando um objeto criado no BD (uma tabela, por exemplo), quem cria este
objeto o seu dono. Por padro apenas o dono de um objeto tem permisso para
realizar operaes com este objeto. Para que outros usurios tambm utilizem este
objeto e necessrio que privilgios sejam concedidos. Privilgios de objeto permitem
que uma ao especfica possa ser executada um objeto especfico. Estas aes
podem ser comandos DML (Data Manipulation Language) que permitem a execuo
24

de selees, alteraes, inseres ou delees; ou comandos DDL (Data Dictionary


Language) que permitem a criao de ndices, novas tabelas, adio e remoo de
atributos, remoo de tabelas e criao de chave estrangeira para referenciar
tabelas de outros esquemas ou donos.

Usurios podem receber apenas alguns, todos ou combinaes destes


privilgios. As permisses de comandos DML permitem aes diretamente com os
objetos, e as permisses de comandos DDL do o direito de fazer modificaes no
esquema do banco de dados (SILBERSHATZ; KORTH; SUDARSHAN, 1999, p. 637).

3.4 CONCESSO E REVOGAO DE PRIVILGIOS

Usurios podem receber o direito de repassar os privilgios recebidos para


outros usurios. Este repasse de privilgio deve ser tratado com o devido cuidado
para que seja possvel revog-lo no futuro (SILBERSHATZ; KORTH; SUDARSHAN,
1999, p. 639).

Para poder conceder ou remover privilgios em bases de dados relacionais, a


linguagem SQL padro prope a utilizao dos comandos de concesso (grant) e
revogao (revoke). Esses comandos padres, por sua vez, incluem os privilgios
de selecionar (select), inserir (insert), modificar (alter) e apagar (delete). Estes
privilgios de concesso e revogao so verificados pelo controle de acesso e
representam a principal interface do usurio para controlar o subsistema de
autorizao ou privilgios.

Um privilgio concedido sempre a partir do DBA. Esta passagem de


privilgios de um usurio para outro pode ser entendida como um grfico de
autorizao, onde Ui Uj. Suponhamos uma autorizao de seleo na tabela
aluno do banco de dados do sistema acadmico de uma universidade. O DBA
concede autorizao a trs usurios U1, U2, e U3 que tambm recebem o direito de
repassarem seus privilgios a outros usurios (SILBERSHATZ; KORTH;
SUDARSHAN, 1999, p. 639). Na figura 1 vemos a representao deste grfico.
25

Figura 1 Grfico de concesso de autorizao.


Fonte: Adaptado de Silbershatz, Korth e Sudarshan (1999)

Os nomes na figura representam os usurios e as setas representam de


quem e para quem est sendo concedido o privilgio. Pode-se observar que
Eduardo, Lucia e Carlos recebem privilgios do DBA. Joo recebe privilgios de
Eduardo e Maria recebe privilgios tanto de Eduardo como de Lucia. Se o DBA
revogar os privilgios de Eduardo, Joo e Maria automaticamente perdem os
privilgios que receberam de Eduardo, porm Maria continuar com acesso a tabela
aluno por conta do privilgio recebido de Lucia.

Ateno especial deve ser tomada quando usurios, sem conhecimento ou


mal intencionados, burlam as regras de concesso de privilgios, concedendo
privilgios entre si. Imaginemos que no exemplo anterior, Lucia conceda privilgios a
Carlos e Carlos privilgios a Lucia, como mostra a figura 2.

Figura 2 Grfico de concesso de privilgio entre si.


Fonte: Adaptado de Silbershatz, Korth e Sudarshan (1999)
26

Se o DBA revogar os privilgios concedidos a Lucia e Carlos, as setas que


concedem privilgios mtuos entre Lucia e Carlos no fazem parte do caminho que
inicia com o DBA e ambos mantero os privilgios como mostra a figura 3.

Figura 3 Tentativa de burlar o controle de segurana.


Fonte: Adaptado de Silbershatz, Korth e Sudarshan (1999)

Para que isto no ocorra, o banco de dados exige que as setas de


autorizao faam parte de algum caminho que tenha como origem o administrador
do banco de dados.

3.5 CONTROLE DE ACESSO BASEADO EM PAPIS

O aspecto principal no uso de papeis est na sua capacidade de organizar e


prover um grande nmero de privilgios em objetos, com flexibilidade, diminuindo o
esforo necessrio na administrao de polticas de segurana complexas. Porm,
para os sistemas disponveis atualmente, a granularidade do controle de acesso no
so, sozinhos, suficientes para atender os requisitos de aplicaes particulares. O
controle de acesso em tabelas de banco de dados relacionais, por exemplo, no
pode ser definido a um subconjunto de registros especficos, fazendo-se necessrio
a utilizao de vises do banco de dados para satisfazer as necessidades.

Um papel estabelecido de acordo com o conceito de domnio de proteo


27

nomeado (named protection domain - NPD). Dentro deste modelo, um papel e uma
imagem de um conjunto de privilgios estabelecidos e utilizados pelos
administradores de sistemas de usurios. Em um papel so definidos privilgios e
tambm outros papis e sua sintaxe e representada da seguinte maneira:

r = role (priv1, . . . . . , pirvn, r1, . . . ., rn )

Onde r representa o nome atribudo ao papel priv1, . . . . . , pirvn, so os


privilgios concedidos diretamente ao papel e r1, . . . ., rn, so nomes de sub-papis
concedidos a r.

O conceito bsico do controle de acesso baseado em papeis (role-based


access control - RBAC) se apia numa abordagem para restringir os privilgios de
usurios autorizados e uma alternativa aos sistemas de controle de acesso do tipo
MAC e DAC. O conceito de controle de acesso baseado em papis apareceu junto
com os primeiros sistemas computacionais multiusurios interativos. A idia central
do RBAC fazer a associao de permisses a papis e ento associar estes
papis a usurios. Estes papis podem ser criados de acordo com os diversos
cargos dentro de uma organizao, e assim os usurios so associados aos papis
de acordo com suas funes e responsabilidades. Vrios usurios podem ser
indicados para um mesmo papel. Os atributos de segurana comuns a um papel so
associados ao seu nome, assim qualquer usurio designado para este papel recebe
automaticamente os seus direitos e privilgios (ELMASRI; NAVATHE, 2011, p. 572).

Outra tarefa que os papis podem executar a excluso mtua de papis,


muito til quando h a necessidade de impedir que um usurio realize sozinho o
trabalho que exige o envolvimento de duas ou mais pessoas, impedindo assim a
conivncia. Dois papis so considerados mutuamente exclusivos quando ambos
no puderem ser usados ao mesmo tempo por um usurio. Existem dois tipos de
excluso mtua (ELMASRI; NAVATHE, 2011, p.573):

Esttica - chamada de excluso em tempo de autorizao, onde dois


papis, indicados como mutuamente exclusivos, no podem fazer parte
28

da autorizao de um usurio ao mesmo tempo.

Dinmica chamada de excluso em tempo de execuo, quando dois


papis podem ser autorizados a um usurio desde que no sejam
ativados ao mesmo tempo.

A hierarquia de papis organiza as linhas de autoridade e responsabilidade,


conectando papis de menor autoridade (junior) a papis progressivamente mais
elevados na hierarquia (snior). Desta forma um usurio que tem um papel recebe
automaticamente os papis inferiores na hierarquia (ELMASRI; NAVATHE, 2011, p.
573).

Os modelos RBAC oferecem recursos de flexibilidade, neutralidade poltica e


suporte para administrar a segurana, tornando-se excelentes ferramentas para
serem usadas no desenvolvimento de aplicaes Web seguras. Os modelos MAC e
DAC tradicionais no oferecem os recursos do RBAC, enquanto RBAC inclui as
capacidades dos modelos DAC e MAC e so de fcil implantao pela internet
(ELMASRI; NAVATHE, 2011, p. 573).

3.6 CONTROLE DE ACESSO DISCRICIONRIO

Os controles de acesso discricionrios so baseados na concesso e


revogao de privilgios. Um privilgio permite que um usurio acesse um
determinado objeto de dado e execute aes pr-definidas. O usurio que cria um
objeto no banco de dados tem automaticamente todos os privilgios referentes ao
objeto. Por conseqncia, o SGBD monitora como estes privilgios so concedidos
ou revogados, controlando para que apenas usurios autorizados tenham acesso
aos objetos (RAMAKRISHNAN; GEHRKE, 2008, P. 578). Trata-se de um sistema
que foi inicialmente desenvolvida para a linguagem SQL e posteriormente boa parte
dos SGBDs passaram a utilizar variaes do mesmo (ELMASRI; NAVATHE, 2011, p.
567).
29

O controle de acesso do tipo discricionrio (discretionary access control - DAC)


do SGBD mantm o controle ao acesso de dados em apenas uma direo. O
administrador ir conceder privilgios aos usurios que iro designar as operaes
permitidas por estes, como leitura ou alterao por exemplo. Para o usurio acionar
ou efetuar alguma tarefa dever possuir os privilgios pertinentes para aquela ao
(SANDHU, 1994, p. 145-160).

Existem dois nveis de atribuio de privilgios (ELMASRI; NAVATHE, 2011,


p. 567):

Em nvel de conta especificam quais so os privilgios que a conta de


um usurio tem, independente das relaes desta conta com o BD.

Em nvel de relao (ou tabela) controla individualmente quais as


relaes ou vises podero ser acessadas no BD.

Privilgios em nvel de conta capacitam uma conta a criar schemas (CREATE


SCHEMA), tabelas (CREATE TABLE) e vises (CREATE VIEW). Tambm incluem
os privilgios ALTER, para fazer mudanas no schema, como incluso e excluso
de atributos; DROP, para excluso de relaes ou vises; MODIFY, para inserir,
excluir ou atualizar linhas; e SELECT, para executar consultas no BD. Todos esses
privilgios se aplicam a conta em geral, portanto se uma conta no possuir o
privilgio de CREATE TABLE, outras relaes no podero ser criadas baseadas
nesta conta (ELMASRI; NAVATHE, 2011, p. 567).

Privilgios em nvel de relao aplicam-se as permisses nas tabelas de base


e vises. Elas especificam relaes individuais que cada usurio pode ter com cada
um dos comandos que podem ser aplicados e em alguns casos, tambm sobre os
privilgios de uma coluna. Estas concesses costumam seguir um modelo
conhecido como matriz de acesso. Em uma matriz, usurios, contas e programas
so representados como sujeitos, e as relaes, registros, colunas e vises,
representam objetos. Cada posio na matriz representa o tipo de privilgio que um
sujeito tem sobre um objeto (ELMASRI; NAVATHE, 2011, p. 567).

O mtodo de concesso de privilgios consiste basicamente em dar


30

permisses ou revog-las atravs de declaraes na prpria linguagem de consulta.


A SQL suporta o controle de acesso discricionrio atravs dos comandos GRANT e
REVOKE. O primeiro concede os privilgios a tabelas e vises e tem a seguinte
sintaxe (RAMAKRISHNAN; GEHRKE, 2008, P. 579):

GRANT tipo_de_privilegio ON nome_do_objeto TO nome_do_usuario;

O segundo o comando complementar que permite a retirada de privilgios,


e possui a seguinte sintaxe:

REVOKE tipo_de_privilegio ON nome_do_objeto FROM nome_do_usuario;

3.7 CONTROLE DE ACESSO OBRIGATRIO

De acordo com ELMASRI; NAVATHE (2011, p. 570), as tcnicas de controle


de acesso discricionrio, concedendo e revogando privilgios em relaes, tem sido
a maneira tradicionalmente utilizada como mecanismo de segurana em sistemas de
banco de dados relacional. Trata-se de um mtodo onde voc permite tudo ou no
permite nada. Porm, para muitas aplicaes h a necessidade de se criar uma
poltica de segurana adicional, a fim de classificar dados e usurios com bases em
classes de segurana. A tcnica utilizada conhecida como controle de acesso
obrigatrio (MAC Mandatory Access Control), e normalmente combinada com os
mecanismos de acesso discricionrios. Uma observao importante que na
maioria dos SGBDs comerciais, so oferecidos apenas os mtodos para controle de
acesso discricionrio (ELMASRI; NAVATHE 2011, p. 570).

Muitas organizaes governamentais, militares ou de Inteligncia, assim


como sistemas industriais e corporativos, necessitam de algum tipo de segurana
multinvel. Diante desta necessidade, alguns SGBDs, como a Oracle, por exemplo,
31

implantam verses especiais que incorporam controle de acesso obrigatrio para


uso governamental.

O controle de acesso obrigatrio no se baseia apenas na identidade do


usurio, sendo assim, os privilgios a determinado objeto no estabelecido por sua
identidade. A classificao do sujeito e do objeto dentro do sistema e que ser o
fator responsvel pelo controle.

Cada objeto protegido recebe uma classificao, ou label, que demonstra a


importncia do recurso representado por aquele objeto. O sujeito tambm possui
uma classificao de segurana, ou clearance, que representa a confiana que o
sistema possui neste usurio de que ele no ir repassar as informaes para
pessoas no autorizadas.

Esse tipo de controle de acesso, como foi dito muito utilizado por militares e
agncias governamentais, onde as classes de segurana tpicas so altamente
confidenciais e os nveis de segurana em ordem decrescente de relevncia so:
altamente confidencial (top secret -TS), secreto (secret - S), confidencial (confidential
- C) e no classificada (unclassified - U) (ELMASRI; NAVATHE, 2011, p. 570).
Existem tambm outros sistemas de classificao de segurana mais complexos,
onde as classes de segurana no so organizadas em um retculo, mas para
simplificar usaremos o modelo proposto com quatro nveis.

O mtodo comumente utilizado no controle de acesso obrigatrio conhecido


como modelo de Bell LaPadula (desenvolvido por David Elliott Bell e Leonard J.
LaPadula). Este modelo descrito por objetos (tabelas, vises, linhas, colunas),
sujeitos (usurios, programas), classes de seguranas e liberaes. Cada objeto
recebe uma denominao de segurana (TS > S > C > U) e cada sujeito recebe uma
permisso de acesso a uma classe de segurana. Desta forma, o modelo de Bell-La
Padula impe duas restries em todas as requisies de leitura ou gravaes no
banco (RAMAKRISHNAN; GEHRKE, 2008, P. 587):

Propriedade se segurana simples um sujeito s pode ler um objeto se sua


classificao de permisso for igual ou superior a classificao de segurana
do objeto. Por exemplo, um usurio com permisso S pode ler uma tabela
com permisso C, mas um usurio com permisso C no pode ler uma tabela
32

com permisso S.

Propriedade de segurana estrela um sujeito s pode gravar em um objeto


se sua classificao de permisso for igual ou inferior a classificao de
segurana do objeto. Por exemplo, um usurio com permisso S pode gravar
em uma tabela com permisso TS, mas um usurio com permisso TS no
pode gravar em uma tabela com permisso S.

A primeira regra intuitiva, pois no permite que um sujeito com permisso de


segurana inferior leia em um objeto com classificao de segurana superior. J a
segunda regra um menos intuitiva, pois no permite que um sujeito grave em um
objeto com classificao de segurana inferior. A necessidade desta regra para
evitar que informaes com classificao de segurana superior possam migrar para
objetos com classificao de segurana inferior, violando uma regra de
confidencialidade (ELMASRI; NAVATHE, 2011, p. 571).
33

4 CONTROLE DE ACESSO NO SGBD ORACLE

4.1 ESTUDO DE CASO COM O SGBD ORACLE

Se por um lado, a internet acelerou o desenvolvimento de novas aplicaes


nos diversos aspectos do processamento empresarial, por outro, o controle sobre as
informaes de cunho sigiloso ou confidencial, requerem hoje, administrao e
regulamentaes muito mais rgidas. Surgiram na ltima dcada diversos
regulamentos que demandam controles internos e proteo de PII (personally
identifiable information, informaes pessoalmente identificveis). A maioria das
aplicaes conta com segurana em nvel de aplicao para controlar o acesso a
informaes confidenciais, por isso so necessrios solues de segurana
transparentes, capazes de oferecer controles mais seguros. Conceitos como o de
atribuir privilgio mnimo e need-to-know, so considerados menos importantes do
que a escalabilidade e a alta disponibilidade. A Oracle prope oferecer um SGBD
com complementaes de segurana em nvel de aplicao, de forma a permitir que
as organizaes cumpram com regulamentaes e a disponibilizao de controles
internos mais rgidos (ORACLE, 2008, p. 2).

A SGBD Oracle possui diversos itens de segurana. Como vrios deles no


fazem parte do escopo deste trabalho, neste captulo faremos uma abordagem
somente a tpicos referentes ao controle de acesso aos dados.

O motivo para escolher o banco de dados Oracle como um captulo particular


para esta pesquisa, se deve ao fato deste SGBD ser lder mundial em bancos de
dados corporativos segundo pesquisas da Gartner Group divulgadas em stios da
internet, alm do sitio da prpria Oracle (2008).

De acordo com o instituto de pesquisa de mercado Gartner, a Oracle


o fornecedor lder mundial de software de sistemas de gerenciamento de
bancos de dados relacionais (RDBMS), com base na receita total do software
para 2007.

Participao de mercado: software de sistemas de gerenciamento de


34

bancos de dados relacionais por sistema operacional em todo o mundo,


2007" [1], recente relatrio do Gartner, constata que a Oracle lidera o
segmento de software de RDBMS mundial em 2007, com uma participao
de 48,6% quase 28 pontos percentuais frente do concorrente mais
prximo.

A Oracle lidera o segmento de RDBMS mundial em Linux, com uma


participao de 79% em 2007.

[1] Market Share: Relational Database Management System Software by


Operating System, Worldwide, 2007 Colleen Graham, Bhavish Sood,
Horiuchi Hideaki, Dan Sommer 11 de julho de 2008.

4.2 PRIVILGIOS DE SISTEMAS E OBJETOS

O SGBD Oracle oferece vrios mecanismos para gerenciar segurana de


acesso, controle de recursos e a poltica de senhas para usurios. Utilizando perfis,
possvel controlar de forma transparente o mecanismo de privilgios e atribuies,
permitindo conferir aos usurios, as devidas autorizaes para as tarefas que
necessitam executar.

Privilgios so permisses concedidas a um usurio, por outro usurio com


permisses de administrador para o privilgio a ser concedido. A permisso concede
ao usurio, acesso a objetos de maneira prescrita, por exemplo, para conectar ao
banco de dados (create session), criarem uma tabela no prprio esquema (create
table), examinar uma tabela sua ou de outro usurio, selecionar registros de outra
pessoa ou executar stored procedures de outro usurio (ACKERMANN, 2003, p. 55).

A sintaxe para criao de um usurio a seguinte:

CREATE USER nome_de_usuario IDENTIFIED BY senha_do_usuario

[DEFAULT TABLESPACE nome_da_tablespace]

[TEMPORARY TABLESPACE tablespace_temporaria];


35

Onde:

nome_de_usuario o nome do usurio a ser criado;

senha_de_usuario a senha para usurio a ser criado;

nome_da_tablespace - a tablespace padro onde os objetos do


banco de dados so armazenados. Se essa opo for omitida, o banco
assume a tablespace SYSTEM padro;

tablespace_temporaria a tablespace padro onde so


armazenados os objetos temporrios, como tabelas temporrias por
exemplo. Se essa opo for omitida um tablaspace temporrio TEMP
assumida.

Basicamente, existem duas categorias distintas de privilgios dentro de um


banco de dados (ACKERMANN, 2003, pg. 55):

Privilgios de sistema.

Privilgios de objeto.

4.2.1 Privilgios de Sistema

So os privilgios que permitem ao usurio executar instrues DDL em um


tipo particular de objeto do esquema, como por exemplo: create user, create session,
create sequence, create synonym, create table, create view e muitos outros. Muitos
destes privilgios so concedidos apenas para administradores por se tratarem de
privilgios muito poderosos (LEVINGE, 2002 apud ACKERMANN, 2003, p. 55).

O comando bsico para liberar privilgio de sistema e:


36

GRANT create session,create table,create view TO nome_do_usuario;

No exemplo, foram liberados trs privilgios para o usurio: o de criar uma


sesso de conexo no banco e o de criar tabelas e views. Sempre que
disponibilizamos permisses para um usurio, temos a opo de utilizar a clusula
WITH ADMIM OPTION, essa clusula concede ao usurio permisso para propagar
as permisses recebidas para outros usurios.

GRANT create session,create table,create view TO nome_do_usuario WITH ADMIN OPTION;

Com o uso da clusula WITH ADMIM OPTION, o usurio poder estender


seus privilgios de sistema para outros usurios.

4.2.2 Privilgios de Objeto

Normalmente o controle de acesso a dados e feito em nvel do prprio SGBD


ou por tabela especifica. O privilgio de objeto permite executar instrues DML em
objetos especficos do esquema, como por exemplo, instrues de select, insert,
update, delete entre outros. E tambm privilgios para executar operaes DDL de
alterao, indexao e referncia a uma tabela.

Estes privilgios podem definir permisso para insero ou alterao de


colunas especficas da tabela, ou restringir em nvel de registros, operaes de
seleo, insero, alterao e eliminao de registros, para usurios especficos.

O comando bsico para liberar privilgios de objeto :

GRANT select,update ON nome_do_esquema.nome_da_tabela TO nome_do_usuario;


37

Neste comando foram liberados privilgios de select e update para a tabela


de um esquema especfico, para um usurio especfico. Sempre que estiver
liberando privilgios para objetos de outro usurio, necessrio colocar o nome do
usurio (esquema) antes do nome do objeto, como no exemplo. Da mesma forma
que ocorre na concesso de privilgios de sistema, pode-se acrescentar ao final da
instruo a clusula WITH GRANT OPTION, permitindo que o usurio possa
repassar a outros usurios os privilgios recebidos, como mostra o exemplo a seguir:

GRANT select,update ON nome_do_esquema.nome_da_tabela TO nome_do_usuario WITH


GRANT OPTION;

A clusula REVOKE utilizada para remover os privilgios de um usurio,


sejam eles privilgios de objeto ou de sistema. O exemplo a seguir mostra como
remover o privilgio de sistema CREATE VIEW de um usurio:

REVOKE create view FROM nome_do_usurio;

Para remover um privilgio de objeto de um usurio (INSERT, por exemplo), usa-se


a instruo como no exemplo:

REVOKE insert ON nome_do_esquema.nome_da_tabela FROM nome_do_usuario;

A princpio, os privilgios de objetos s podem ser concedidos pelo dono do


objeto, a no ser que este autorize outro usurio permisso para autorgar
privilgios. Como padro, o administrador possui todos os privilgios para executar
aes em objetos do esquema. O administrador pode repassar esses poderes para
um desenvolvedor de sistema ou para o DBA, com a finalidade de facilitar as tarefas
de configuraes de segurana necessrias (LEVINGE, 2002 apud ACKERMANN,
2003, p. 55).
38

4.3 USO DE PAPIS PARA ADMINISTRAR PRIVILGIOS

Um papel (role) um grupo de privilgios associados a um nome de


identificao. Desta forma, ao invs de atribuir vrios privilgios para um nico
usurio, cria-se um nico papel que recebe vrios privilgios e atribui-se este papel
a quantos usurios forem necessrios. A figura 4 mostra a sintaxe de uma role.

Figura 4 Sintaxe para criar uma role.


Fonte: Oracle Help Center (p. 387)

Existem vrios nveis de papis:

Papis de Banco de Dados;

Papis Globais;

Papis de Empreendimento;

Papis de aplicao seguro.

4.3.1 Papeis de Banco de Dados

Papis de banco de dados permitem alterao de dados no BD. Normalmente


so concedidos privilgios ao papel e no ao usurio, pode-se ento habilitar ou
desabilitar os privilgios de maneira seletiva para cada usurio, facilitando o controle
especfico de privilgios. Existe ainda a opo de proteger um papel com o uso de
39

uma contra-senha. Ao associar uma senha para habilitar o papel em uma aplicao,
o usurio s poder habilit-la se conhecer a contra-senha (LEVINGE, 2002a apud
ACKERMANN, 2003, p. 58).

A figura 5 mostra como possvel usar vrios nveis de papel e privilgios,


pare se alcanar um maior detalhamento no controle de acesso. Lembrando que
quanto menos privilgios o usurio tiver, melhor.

Figura 5 Exemplo de utilizao de papis.


Fonte: Ackermann (2003).

4.3.2 Papis de Empreendimentos

Papis de empreendimento so estruturas de diretrios que contm vrios


papis globais em mltiplos BDs, e que so concedidos a usurios de
empreendimentos.

Com a utilizao de papis de empreendimentos, possvel concentrar a


administrao de informaes e autorizaes de um usurio, atravs do
armazenamento em um servio de diretrio (LDAP - based) (LEVINGE, 2002 apud
ACKERMANN, 2003, p. 60).
40

4.3.3 Papis Globais

Os papis globais so atributos de segurana de usurios de


empreendimentos. Ele se aplica a apenas um BD para o qual esto definidos os
direitos, mas pode ser associado a papis de empreendimentos. Os papis globais
so definidos localmente no BD. A eles so atribudos privilgios e papis, porm
no podem ser associados a nenhum usurio ou outro papel no BD. Quando o
usurio do empreendimento se conectar ao BD, sero verificados quais so os
papis globais associados a este usurio (ACKERMANN, 2003, pg. 59).

4.3.4 Papis de Aplicaes Seguras

Prevenir que usurios burlem a lgica das aplicaes para obter acesso
diretamente aos dados, um problema de segurana de difcil resoluo. Em
aplicaes Web, por exemplo, validar a aplicao que usada para obter acesso
aos dados pode ser um problema. possvel que no se queira que nem mesmos
os usurios conhecidos do BD, tenham acesso direto aos dados, pois um usurio
mal intencionado poderia escrever um programa que se fizesse passar por uma
aplicao aparentemente vlida.

Um papel de aplicao segura um papel implantado por um pacote. Este


pacote executa validaes para assegurar que as permisses apropriadas sejam
conhecidas antes do usurio executar os privilgios concedidos ao papel no BD. Ele
usado por uma aplicao e s por ela habilitado, no sendo necessrio o uso de
contra-senha.

Essa caracterstica do papel de aplicao segura permite, por exemplo,


escrever um papel que s permita que um usurio se conecte a partir de um
determinado IP, ou que s tenha acesso a uma camada intermediaria particular do
banco de dados (LEVINGE, 2002a apud ACKERMANN, 2003, p. 61).
41

4.4 USO DE STORED PROCEDURE PARA ADMINISTRAR PRIVILGIOS

O uso de stored procedure uma forma de limitar as transaes dos usurios


no BD, podendo ser executadas apenas procedimentos e funes com direitos pr-
definidos. Quando um usurio dispara um procedimento, ele executado com os
privilgios do dono do procedimento. Desta forma pode-se conseguir que um usurio
possa fazer atualizaes em uma tabela ao mesmo tempo em que nega o acessa a
tabela propriamente dita (LEVINGE, 2002a apud ACKERMANN, 2003, p. 62)

4.5 USO DE INSTALAES DE REDE PARA ADMINISTRAR PRIVILGIOS

Os papis em banco de dados tambm podem ser escritos para atender


servios externos responsveis por autenticao (grupos de DCE e autorizaes
RADIUS), desta forma podem administrar de forma centralizada todos os privilgios
de uma rede, onde o banco de dados apenas um pedao desta rede (LEVINGE,
2002a apud ACKERMANN, 2003, p. 62).

4.6 USO DE VISES PARA ADMINISTRAR PRIVILGIOS

As vises so tabelas lgicas baseadas em uma ou mais vises ou tabelas.


Vises no contm os dados em si mesmos e podem suportar vises de objetos, ou
uma viso relacional que suporta tipos de objetos e tabelas aninhadas. Uma viso
de objetos uma viso de um tipo definido pelo usurio, onde cada linha contm
objetos, cada objeto com um identificador nico (ORACLE HELP CENTER, p. 471).

Vises adicionam mais dois nveis de segurana: limitando o acesso a


colunas somente selecionadas na tabela base ou usando uma clusula WHERE na
sua definio.

Como as vises apenas necessitam de privilgios para a prpria viso, no se


faz necessrio dar privilgios aos objetos de base das vises para que os usurios
42

possam acess-los, bastando dar direito apenas a viso (ACKERMANN, 2003, p.


62).

4.7 SEGURANA EM NVEL DE REGISTRO

Em casos onde o acesso a registros especficos de uma tabela necessitem


basear-se em alguns argumentos como o departamento a que pertence o usurio,
titulao, ou outros fatores significantes, pode-se usar uma forma mais granular de
acesso, que o acesso em nvel de registro. Existem duas maneiras de atender este
problema: usando um Banco de Dados Privado Virtual (VPD), onde so criadas
implementaes de segurana em nvel de registro, e o controle de acesso rtulo-
base (label-based), onde se personaliza uma poltica de VPD (LEVINGE, 2002a,
apud ACKERMANN, 2003, p 63).

4.7.1 Segurana Baseada em Rtulo

O trabalho para administrar restries de acesso a tabelas e isolar dados


confidenciais em bancos de dados independentes bastante custoso. Para facilitar
esta tarefa, o Oracle disponibiliza no Oracle Database 11g Release (11.1), o Oracle
Label Security, que habilita o controle de acesso em nvel de linha.

Seu funcionamento se baseia em associar a cada tabela ou viso, uma


poltica de segurana, assim, toda vez que uma consulta executada ou uma tabela
alterada, a poltica de segurana e consultada. Desta forma, os desenvolvedores
podem executar diretamente em suas aplicaes para bando de dados Oracle,
controle de acesso baseado em rtulo (ELMASRI; NAVATHE, 2011 pg. 584).
43

4.7.1.1 Conceito de Virtual Private Database (VPD)

H pouco tempo atrs a garantia de segurana em um banco de dados era


garantida com aplicao de restries em seus objetos e controle das operaes
DML bsicas como select, insert, update e delete. Porm, o crescimento cada vez
maior das aplicaes voltadas para ambiente web, gerou a necessidade de um
banco de dados com caractersticas diferentes, como por exemplo, a centralizao
de dados de diversos bancos, em uma nica database, que acabam por gerar
agrupamentos de informaes de vrias organizaes em um nico objeto.

Em bancos de dados voltados para web, a simples aplicao de privilgio no


objeto no suficiente para garantir a confidencialidade dos dados. preciso
especificar no apenas o objeto ao qual o usurio possui permisso, mas tambm
qual parte deste objeto. Ou seja, necessria uma aplicao de segurana em nvel
de linha (Row Level Security). Existe a possibilidade de implantar row level security
no prprio desenvolvimento da aplicao, mas a criao e manuteno das polticas
de segurana se tornam muito complicadas. Alm disso, os objetos s estaro
sujeitos a aplicao das polticas enquanto acessados atravs da aplicao que as
implantou, se um usurio puder acessar o objeto atravs de outra aplicao ou
ferramenta que no esteja sujeito a poltica de segurana (SQL Plus, SQL Developer,
Tod, etc), ter acesso total as informaes.

O Oracle disponibiliza, a partir da verso Enterpraise 8i em diante, recursos


para implantar VPD. Esta funcionalidade insere atributos ao domnio do usurio,
limitando suas permisses de maneira confivel tanto para o usurio como para a
aplicao.

O Oracle oferece nativamente linguagem de programao PL/SQL


(Procedural Language/Structured Query Language). Em forma de uma interface de
programao de aplicao (API), a PL/SQL permite que a manipulao de dados
seja includa em unidades de programas. Desta forma os responsveis pela
administrao de segurana, desenvolvedores e DBAs, podem implantar controle de
acesso baseados em polticas VPD em nvel de objeto ou segurana em nvel de
linha, retirando as regras de segurana da aplicao e concentrado-as no banco de
44

dados (ELMASRI; NAVATHE, 2011 pg. 584).

O conceito bsico do VPD associar uma poltica de segurana a uma tabela,


viso ou sinnimo. Quando uma aplicao solicita uma operao no banco de dados,
a funo associada poltica de segurana daquele objeto consultada. Esta
funo retorna uma condio na forma de uma clusula WHERE que
acrescentada ao script da operao solicitada. Desta maneira, independente da
aplicao ou ferramenta que tente acessar os dados, estar sujeita a poltica de
segurana que foi previamente implantada (ELMASRI; NAVATHE, 2011 pg. 584).

4.7.1.2 Oracle Label Security

O Oracle Label Security est embutido na tecnologia VPD e permite


que as organizaes governamentais ou de defesa, consolidem dados de diferentes
tipos de classificaes, no mesmo BD. O acesso aos dados restrito com base na
classificao dos dados e do certificado de segurana do usurio do aplicativo. Este
recurso permite que requisitos de segurana multinvel possam ser executados
dentro do Oracle (ORACLE, 2013).

A figura 6 demonstra como ocorre a sequncia de verificaes DAC e a


segurana de rtulo. No lado esquerdo da figura temos um usurio enviando uma
requisio SQL atravs de uma aplicao. Primeiro o Oracle faz a verificao de
privilgios do DAC deste usurio para se garantir que ele tem a permisses
necessrias para executar a requisio. Depois, ser verificado se existe alguma
poltica de VPD associada tabela, se houver, uma clusula WHERE
acrescentada ao script SQL e s ento a consulta ser processada (ELSMARI;
NAVATHE, 2011 pg. 585).
45

Figura 6 Sequncia de verificao DAC.


Fonte: ELSMARI e NAVATHE (2011)

O controle de acesso a informaes sensveis motivo de preocupao para


gestores, agentes de informao, DBAs, desenvolvedores de sistemas, e muitos
outros. Controle de acesso seletivo com base no nvel de segurana do usurio
pode garantir confidencialidade sem limitaes muito amplas. Este nvel de controle
de acesso garante que informaes confidenciais no estaro disponveis para
pessoas no autorizadas, mesmo quando os usurios autorizados tenham acesso
s informaes necessrias, s vezes nas mesmas tabelas.

Dados sensveis que permitam ser vistos por pessoas no autorizadas,


podem ser embaraoso, prejudicial ou perigoso para as pessoas, carreiras,
organizaes, agncias, governos ou pases. No entanto, muitas vezes, esses
dados esto misturados com outras informaes menos sensveis, e que so
legitimamente necessrios para diversos usurios. Restringir o acesso a tabelas
inteiras ou segregar dados confidenciais em bancos de dados separados, pode criar
um ambiente de trabalho desajeitado, custoso em termos de hardware, software e
administrao.

O Oracle Label Security elimina a necessidade de tais medidas, permitindo o


46

controle de acesso em nvel de linha, com base na tecnologia de banco de dados


virtual do Oracle Database 11g 1 (11.1) Enterprise Edition. Ele controla o acesso ao
contedo de uma linha comparando o seu rtulo com o rtulo de privilgio do
usurio. Assim, os administradores podem facilmente adicionar polticas linha-
restritiva seletivas para banco de dados existentes por meio de uma interface grfica
fornecida pelo Enterprise Manager (ORACLE HELP CENTER, p. 7-30).

4.7.1.3 Rtulos de Dados e Rtulos de Usurios Trabalhando Juntos

Um rtulo de usurio define quais so as informaes e que tipo de acesso


(leitura ou gravao) este usurio tem direito. Um rtulo de dado define, alm da
propriedade e sensibilidade da informao armazenada, quais so as polticas que
um usurio deve atender para poder acess-lo. Com base no resultado da
comparao entre o rtulo de dados e do rtulo da sesso do usurio, o acesso ser
concedido ou negado.

Os rtulos relacionam os dados compartimentos, todos os dados de um


mesmo projeto podem estar relacionados a um compartimento. Estes
compartimentos so opcionais, de forma que um rtulo pode conter zero ou mais
compartimentos.

Grupos hierrquicos so usados para identificar organizaes como


proprietrias dos dados de rtulos de grupos correspondentes. Um grupo pode, por
exemplo, ser associado a um grupo pai.

Um usurio que possua o nvel mximo de SENSITIVE ter possivelmente


acesso aos dados com nveis de sensibilidade iguais ou menores que a dele, mas
no ter acesso aos dados com nvel HIGHLY_SENSITIVE. A figura 7 mostra como
rtulos de dados e de usurios trabalham juntos.
47

Figura 7 Como rtulos de dados e usurios trabalham juntos.


Fonte: ELSMARI e NAVATHE (2011)

Podemos ver que o primeiro usurio tem nvel de acesso HS (Highly Sensitive) nos
compartimentos FIN (Financeiro) e WR (Western Region), que hierarquicamente
inclui o grupo WR_SAL (WR Sales). Comparando este rtulo com os rtulos dos
dados nas linhas da tabela, este usurio ter acesso s linhas 2, 3 e 4. O segundo
usurio possui nvel de acesso S (Sensitive) nos compartimentos FIN e WR_SAL, o
eu lhe dar acesso apenas aos dados das linhas 3 e 4 (ELMASRI; NAVATHE, 2011
p. 585, 586).
48

5 CONSIDERAES FINAIS

Os sistemas gerenciadores de banco de dados esto em constante evoluo,


impulsionados pelas novas tecnologias, aplicaes e normas. Sua principal funo
garantir o controle das bases de dados, armazenando, protegendo e
disponibilizando informaes de todo o tipo a uma grande variedade de usurios.
Neste contexto, um dos principais mecanismos dos SGBD, seno o principal
atender as polticas de segurana criadas pelas empresas, atravs do controle de
acesso aos dados.
Este trabalho teve como objetivo principal, descrever como so aplicados os
controles de acesso em SGBDs, avaliar as solues disponveis no mercado, suas
vantagens e vulnerabilidades. Para cobrir esses objetivos, foram apresentados os
conceitos bsicos de segurana da informao, uma pesquisa sobre os principais
controles de acesso disponveis nos SGBDs, seguidos de um estudo de caso em um
SGBD comercial especfico, no caso o Oracle Database 11g Release (11.1)
Esta pesquisa trs como contribuio as seguintes concluses: dentre os
mecanismos de controle de acesso disponveis no mercado e pesquisados neste
trabalho, nenhum se mostrou suficiente para atender, sozinho, as necessidades de
segurana. Porm, foi possvel verificar que a utilizao conjunta destas ferramentas
aplicadas a uma poltica de segurana adequada, pode oferecer controle de acesso
com granulao satisfatria para atender as principais necessidades das empresas.
O estudo de caso com o banco de dados Oracle mostrou que este faz
controle de privilgios, tanto de sistema como de objetos, principalmente pela
utilizao de papis de banco de dados, papis globais, papis de empreendimentos
e papis de aplicaes seguras. Para garantir a segurana em nvel de registro, o
Oracle oferece um mecanismo diferenciado atravs da ferramenta de reescrita de
consulta chamada VPD.
O assunto de segurana no controle de acesso a SGBDs bastante vasto e
para atender a proposta desta pesquisa, optou-se por apresentar, um resumo dos
principais procedimentos de segurana em BDs com o melhor detalhamento
possvel para cada um dos tpicos abordados. Com isso, vrios assuntos ficam
abertos como opes para projetos futuros, como exemplo: a centralizao dos
controles de acesso, aperfeioamento dos mecanismos disponveis e utilizao de
interfaces de controle para facilitar a administrao de servios.
49

REFERNCIAS

ACKERMANN, Marcelo A. Aderncia de Controles de Acesso em SGBDs


Relacionais s Polticas de Segurana de Aplicaes. 2003. 117 f. Dissertao
(Mestrado em Cincia da Computao) Programa de Ps-graduao em Cincia
da Computao, Universidade Federal de Santa Catarina, Florianpolis, 2003.
Disponvel em:
<https://repositorio.ufsc.br/bitstream/handle/123456789/85913/203180.pdf?sequence
=1>.

ALBUQUERQUE, Ricardo. Segurana no desenvolvimento de software: como


garantir a segurana de sistemas para seu cliente usando a ISSO/IEC. Rio de
Janeiro: Editora Campus, 2002.

ELMASRI, Ramez; NAVATHE, Shamkant B. Sistemas de banco de dados. 6 ed.


So Paulo: Editora Pearson, 2011.

HAZEL, Lorraina. An overview of oracle database security features. CNE. May 13,
2001.

ORACLE. Solues transparentes para segurana e conformidade com o


Oracle Database 11g. Um artigo tcnico da Oracle. Setembro 2008. Disponvel em:
<http://www.oracle.com/technetwork/pt/database/enterprise-
edition/documentation/seguran%C3%A7a-conformidade-database-11g-432099-
ptb.pdf> Acesso em: 28/09/2014.

ORACLE. Oracle Press Release. Redwood Shores, Califrnia 12-SEP-2008.


Disponvel em: <http://www.oracle.com/br/corporate/press/oracle-lider-banco-dados-
345158-ptb.html> Acesso em: 28/09/2014.

ORACLE. Oracle label security. DATA SHEET. Disponvel em:


<http://www.oracle.com/technetwork/database/security/label-security-ds-12c-
1898878.pdf?ssSourceSiteId=ocombr> Acesso em 28/09/2014.

ORACLE HELP CENTER. Database SQL Reference. p. 471. Disponvel em:


<https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_8004.htm>
Acesso em 28/09/2014.

ORACLE HELP CENTER. Database SQL Reference. p. 387. Disponvel em:


<https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_6012.htm>
Acesso em 28/09/2014.
50

ORACLE HELP CENTER. Label Security Administrator's Guide. Introduction to


Oracle Label Security p. 7 30. Disponvel em:
<https://docs.oracle.com/cd/B28359_01/network.111/b28529/intro.htm> Acesso em
28/09/2014.

ZSU, M. Tamer; VALDURIEZ, Patrick. Princpios de sistemas de banco de


dados distribudos. 2 ed. Rio de Janeiro: Editora Campus, 2001.

PISSINOU, Niki; MAKKI, Kia; PARK, E.K. Towards a framework for integrating
multilevel secure models and temporal data models. ACM Computing Surveys,
1994.

PFLEEGER, Charles P.; PFLEEGER, Shari L. Security in computing. 4 ed.


Massachusetts: Editora Prentice Hall, 2012.

RAMAKRISHNAN, Raghu; GEHRKE, Johannes. Sistema de gerenciamento de


banco de dados. 3 ed. So Paulo: Editora McGraw-Hill, 2008.

SANDHU, Ravi S. Relational database access controls. Handbook of information


security management (1994-95 Yearbook), Auerbach Publishers, 1994. Disponvel
em: <http://www.profsandhu.com/articles/auerbach/a94dac.pdf> Acessado em:
27/07/2014.

SILBERSCHATZ, Abraham; KORTH, Henry F.; SUDARSHAN, S. Sistemas de


banco de dados. 3 ed. So Paulo: Editora Pearson Education do Brasil, 1999.

STAMP, Mark. Information security: principles and practice. 2 ed. New Jersey:
Editora John Wiley & Sons, 2011.

TANENBAUM, Andrew S. Redes de computadores. 4 ed. Rio de Janeiro: Editora


Campus (Elsevier), 2003.

VERIZON, Relatrio de investigaes de violaes de dados (relatrio DBIR) de


2014. Disponvel em:
<http://www.verizonenterprise.com/resources/reports/rp_Verizon-DBIR-2014_pt-
br_xg.pdf> Acesso em: 27/07/2014.

S-ar putea să vă placă și