1.
2.
3.
4.
Introdução
Controle de acesso discricionário
Controle de acesso mandatário
Controle de acesso baseado em papéis
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
Copyleft
Administração de usuários, grupos,
papéis níveis de segurança
Negado
Permitido
Pedido de
Acesso
Autenticação
Política de
Segurança
Subsistema de
Autorização
Requer
modificação
no pedido
Regras
de acesso
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
2



Os mecanismos de controle de acesso são
usados para implementar as políticas de
autorização.
Define quem pode fazer o que em um sistema
Se refere a sistemas grandes (S.O, bancos de
dados, prontuários de pacientes
emdeum
Matriz
Três modelos de
Acesso
hospital)
controle de acesso
Sujeitos
Monitor de
Referência
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
Objetos
3
Discretionary Access Control (DAC)
Os direitos de acesso a cada informação são
manipulados livremente pelo responsável da
informação, à sua discrição = sobre controle do
usuário – muito comum em sistemas operacionais
 Não especifica o que são direitos. Os mais comuns
(em S.O.) são :


 direito de ler o dado/ arquivo (afeta o requisito de
confidencialidade)
 direito de escrever o dado/ arquivo (afeta os requisitos
de integridade e disponibilidade).
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
4
Pedido de
Acesso
O pedido satisfaz as
regras de autorização
Regras de
autorização
SIM
NÃO
Acesso Permitido
Acesso Negado
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
5

DAC em BD: baseado em conceder e revogar
privilégios (linguagem, ex: SQL)
 DBA concede aos usuários privilégios
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
6

Em SQL:
grant <lista de privilégios>
on <nome da tabela ou visao>
to <lista de usuário/conta>
Ex: grant select on agencia to U1, U2, U3
revoke <lista de privilégios>
on <nome da tabela ou visao>
from <lista de usuário/conta> [restrict | cascade]
Ex: revoke select on agencia to U1, U2, U3
cascade
DAC: Limitações - vazamentos de informações!!!
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
7
Daniella
não
confia
confia
Faz uma copia
do arquivo A de
Daniella
Confiança não
é transitiva! Fabio
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
Rodrigo
Concede o
acesso de
leitura ao
arquivo A para
Fabio
8

Cavalo de Tróia
 Programas que fazem algo útil e roubam




informação, por baixo do pano
Programas baixados da rede (Windows)
Mesmo sendo confiável, Maria pode ser a fonte de
um vazamento (involuntariamente)
Maria é dona do arquivo CUSTO, ao qual não deu
direito de leitura para ninguém.
Maria roda o programa MUSICA+ ROUBA que toca
musicas MP3 e, baixo do pano, copia CUSTO para
a área de João (ou manda por e-mail)
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
9
Mandatory Access Control (MAC)
Administração Centralizada
Impõem regras incontornáveis que se acrescentam às regras
discricionárias
 Usuários e objetos (recursos do sistema) são etiquetados
 Um usuário será autorizado a manipular uma informação do
sistema se o direito de leitura é posicionado sob a informação
para ele (controle discricionário) e se ele está habilitado a
manipulá-la.



Usuários
Níveis de Habilitação
Comparação
Objetos
Classificação
10
Pedido de
Acesso
Habilitação
dos usuários
O pedido satisfaz as
regras de autorização
Classes dos
objetos
SIM
NÃO
Acesso Permitido
Acesso Negado
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
11

A regra básica do MAC é:
 Não leia para cima
 Não escreva para baixo
Comparação
Níveis de Habilitação
Ultra-secreto
Secreto
Limitado
Público
Classificação
Ultra-secreto
Secreto
Limitado
Público
Uma pessoa que se logou com nível de secreto não pode ler dados
de alto secreto. Da mesma forma, se uma pessoa se logou com
nível de secreto não pode escrever um arquivo com nível limitado
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
12

Controle mandatário elimina o problema
de Cavalos de Tróia:
 Maria se loga com nível secreto.
 Ela pode acessar o dado CUSTO que
também tem nível secreto.
 Ela roda o programa MUSICA+ ROUBA, que
tenta copiar CUSTO para a área de João.
 João tem nível de segurança limitado, e
portanto a regra “não escreva para baixo” se
aplica: alguém com nível secreto não pode
escrever para alguém com nível limitado.
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
13

Controle de acesso obrigatório tem uma inconveniência:
 As pessoas precisam definir com que nível de acesso elas se
“logam” no sistema.
 P. ex., como Maria (com nível segredo), pode mandar um mail para
João (com nível limitado) para marcar um almoço? (não pode
escrever para baixo!)
 Para falar com João, Maria precisa se logar com nível igual ao de
João, neste caso limitado. Porém, quando ela se loga com nível
limitado, passa a não ter acesso aos seus dados de nível segredo!

Controle de acesso obrigatório não tem o problema de
transitividade de confiança. A empresa é que decide que
João, depois de provar sua confiabilidade, passa a ter
acesso de nível secreto (não há vazamento de informação)
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
14





MAC – muito rígido
DAC- Muito pouco protegido
Alternativa – RBAC (Role Based Access Control)
Requer que direitos de acesso sejam atribuídos a papéis e não
a usuários
Modelo
 Existem pessoas (usuários).
 Existem papéis ou funções (médico, programador, analista de
credito)
 Existem direitos (acessar o dado A, rodar o programa X, escrever
na tabela Y do banco de dados Z).
 Existe uma tabela que relaciona usuários com os papéis que eles
podem assumir
 Existe uma tabela que relaciona os direitos que cada papel tem.
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
15


Uma pessoa pode assumir mais que um papel. João é
programador em C, programador em Java, administrador
de rede, e funcionário do depto. de sistemas.
Papéis estão organizados em hierarquias de herança
(mais específico herda do mais geral) para facilitar.
Médico tem vários direitos, cardiologista herda osdireitos
de médico e acrescenta mais alguns (ordenar teste
ergonométrico, ordenar cardio- Doppler, etc).
 Um papel normalmente tem vários direitos: programadores em C
podem usar vários compiladores, podem escrever nos diretórios g:/
projetos/ C/, qualquer funcionário pode ler e- mail, etc.

As pessoas se identificam para o sistema e decidem que
papel elas executarão.
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
16

Para o administrador definir o papel (define):
 Grupo de operações ou privilégios
 Grupo de objetos que o papel terá acesso
 Grupo de usuários ou papéis que farão parte deste papel específico

Para criar o papel, o usuário deve ter o privilégio.
 grant create role to <usuário>
 create role <nome do papel> [identified by <senha>]
 create role lancamento_contabil
 create role libera_pagamento identified by senhadificil
 grant privilegio(s) on tabela(s) to rolename
 grant select, insert, delete, update on lancamentos to lancamentos_contabeis
 grant lancamentos_contábeis to Paulo
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
17





Como no obrigatório, é a organização que decide que
direitos cada papel tem, e quem pode assumir que papéis
Uma vez definidas as tabelas, o gerenciamento é fácil.
Um funcionário foi contratado, crie seu usuário e liste os
papéis dele. Um funcionário foi promovido, acrescente
novos papéis ao usuário dele na tabela
RBAC está sendo considerado como uma inovação
importante em segurança e administração.
O NIST organiza a padronização desta tecnologia.
http://csrc.nist.gov/rbac/
Windows NT já tem componentes de RBAC, bancos de
dados também
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
18
Gerente de Agência
Ger. Pessoa Física
Caixa
Contas
P. Física
Caixa
Poupança
P. Física
ver_saldo (P.Fis)
depositar (P.Fis)
transferencia (P.Fis)
Tudo o que Ger. Pessoa Física e
Ger. Pessoa Jurídica podem fazer
Ger. Pessoa Jurídica
Caixa
Contas
P. Jurídica
ver_saldo (P.Jur)
depositar (P.Jur.)
transferencia(P.Jur.)
abrir_conta (P.Jur.)
Caixa
Poupança
P. Jurídica
ver_saldo (P.Jur)
depositar (P.Jur.)
transferencia (P.Jur.)
Segurança de Banco de Dados - Prof. Msc Rodrigo Santos
19
Download

P.Jur - Yimg