1 / 16

Sumário Exploração de bases de dados Segurança Integridade

Sumário Exploração de bases de dados Segurança Integridade. Gabriel David FEUP - Rua dos Bragas, 4050-123 Porto - PORTUGAL Tel. 351-222041842 - Fax: 351-222000808. Email: gtd@fe.up.pt URL: http://www.fe.up.pt. Segurança e integridade. Protecção dos dados direito à privacidade

sirius
Download Presentation

Sumário Exploração de bases de dados Segurança Integridade

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sumário Exploração de bases de dados Segurança Integridade Gabriel David FEUP - Rua dos Bragas, 4050-123 Porto - PORTUGAL Tel. 351-222041842 - Fax: 351-222000808 Email: gtd@fe.up.pt URL: http://www.fe.up.pt

  2. Segurança e integridade • Protecção dos dados • direito à privacidade • direito de propriedade • direito à informação • Segurança • protecção da BD contra a consulta, alteração ou destruição não autorizadas • ilegalidade • Integridade • manutenção da correcção dos dados, quer sob o aspecto da validade quer da consistência • coerência

  3. Segurança - sobre o utilizador • Normas de acesso ao centro de computação, arquivos de dados e terminais • Código de identificação e password • Num grande SGBD o processo das autorizações deve ser mais selectivo e flexível

  4. Exemplo de acesso • Dados na BD de uma empresa • EMPREGADO( nr, nome, morada, dept, salário, avaliação) • Tipos de acesso desejáveis • acesso livre a toda a relação, para todas as operações • acesso apenas à própria informação, sendo permitida a alteração de apenas alguns valores • acesso interdito • acesso aos atributos nr, nome e salário, podendo alterar salário, mas apenas entre as 9H e as 17H, num terminal do Serviço de Pessoal • possibilidade de aplicação de operadores estatísticos ao atributo salário, mas com interdição de consulta de registos individuais • autorização de consulta a toda a relação, mas com possibilidade de alteração apenas do atributo avaliação dos empregados que pertençam ao departamento de que o utilizador é director

  5. Perfis • Excesso de restrições de acesso implica sobrecarga no SGBD • verificação de autorização afecta todos os acessos • Habitualmente definem-se perfis de utilização aos quais se associam os utilizadores • fundamental o recurso a vistas que funcionam como tabelas virtuais e fornecem um nível de independência dos dados • possibilidade de definição de procedimentos de autorização ou de restrições específicos para um utilizador que se combinem com os genéricos e permitam controlo fino sobre o acesso • para além da segurança, criar um ambiente agradável ao utilizador, filtrando o irrelevante • uso de sinónimos (CREATE SYNONYM x FOR user.tabela)

  6. Instrução SQL GRANT • Esta instrução define o tipo de acesso dos utilizadores aos objectos da BD que não criaram • o criador de um objecto tem habitualmente todos os direitos sobre ele

  7. Privilégios de objectos • Exemplo • GRANT UPDATE (telefone, salario) ON intranet.tabEmpregados TO chefePessoal WITH GRANT OPTION

  8. Papéis • Os papéis funcionam como conjuntos de privilégios de objectos ou de sistema que se podem conceder em bloco a um utilizador • estruturam a definição dos perfis • podem conceder-se (sub)papéis a papéis

  9. Privilégios de sistema • Exemplos de privilégios • CREATE SESSION - ligar à BD • ALTER SESSION - mudar parâmetros da sessão • CREATE ANY TABLE - criar tabelas • DELETE ANY TABLE • DROP ANY TABLE • CREATE USER • CREATE VIEW • privilégio pode ser dado a um utilizador directamente ou através de um papel

  10. Segurança - sobre os dados • Senhas para acesso a ficheiros ou atributos, dependendo da operação a efectuar • estabelecimento de combinações sensíveis de características dos dados, associadas a condições a satisfazer pelo utilizador • programa de arbitragem de alta prioridade e bem protegido para autorizar cada acesso

  11. BD estatísticas • Pretende-se obter informações de síntese sobre grandes subconjuntos de dentidades, sem ter acesso a dados individuais • recenseamentos • BD clínicas • Exemplos • “percentagem de doentes cancerígenos fumadores?” SIM • “o senhor Silva tem um cancro?” NÃO • Regra • impedir impressão de resultados derivados de pequenos conjuntos de dados

  12. Exemplo • Pergunta select salario from emp where nome=‘Antão’ • resultado vetado, dimensão(resultado) < n • Pergunta k select avg(salario) Mx, count(*) Nx from emp where dept=‘Manutenção’ -- Nx > mínimo • Pergunta k+1 select avg(salario) My, count(*) Ny from emp where dept=‘Manutenção’ or nome=‘Antão’ -- Ny > mínimo • salário(Antão) = Ny My - Nx Mx • Regra refinada • impedir respostas com intersecções muito grandes com perguntas anteriores (memorizar k perguntas)

  13. 4 6 1 6 5 IRS sexo carro distrito localidade profissão Identificação parcial • Compromisso • grau de segurança/sobrecarga • Respostas deliberadamente erradas a perguntas inválidas • Outra abordagem - pesquisa por identificação parcial • registos com a média dos rendimentos de um pequeno grupo de cidadãos com características semelhantes • chave composta • pergunta só pode especificar 12 bits (menor relação: 222-212 = 1024) • IRS dos homens de Gaia, Porto SIM (11 bits) • IRS dos médicos de Aveiro com Rover NÃO (15 bits)

  14. Segurança - sobre infiltradores • Vão para além do uso “normal” do sistema • curto-circuito da aplicação e/ou do SGBD • intercepção de mensagens nas linhas de comunicação • roubo de um disco • Contra-medidas • encriptação das mensagens • encriptação das partes críticas da BD • criptografia pode ser implementada em HW ou SW • Princípio dos sistemas de segurança • situar o “custo” da violação dos dados ao mesmo nível do benefício obtido • confidencialidade + integridade + disponibilidade

  15. Integridade • Protecção quanto a operações inválidas • restrições de integridade são extensões à LDD • fazem parte do modelo de dados • associadas a conjuntos de dados e certas operações de manipulação • escritas na LMD ou numa linguagem hospedeira • validação • gamas de valores (restrições CHECK) • integridade das entidades (chave primária sem valores nulos) • integridade referencial (inserção/apagamento) • consistência • dependências funcionais (3NF + chave) • valores calculados

  16. Recomendações • Bom projecto • procedimentos específicos para cada operação • restrições, triggers • rotinas de detecção de erros • Bom senso!

More Related