protectie baze de date

Upload: miron-stefan

Post on 08-Jul-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 protectie baze de date

    1/13

    Curs BD G/1 

    Protecţia bazelor de dateObiective:

    ♦  integritatea b. d. (b. d. este operaţională)♦  coerenţa b. d. (concordanţa cu lumea reală)♦  confidenţialitate

    Soluţii:

    I.  restricţii de integritateII.  sincronizarea accesului concurentIII. siguranţa in funcţionare şi reluarea dupa pană

    IV. securitatea utilizării

  • 8/19/2019 protectie baze de date

    2/13

    Curs BD G/2 

    I.  RESTRICŢII DE ITEGRITATE

    Restricţie de integritate = predicat (o condiţie) care trebuie să verifice un

    subansamblu al bazei de date

    Baza de date coerentă = toate restricţiile de integritate sunt verificate

    R.I. - statice- dinamice

    Operaţii cu R.I.:-  creare-  ştergere

    activare- dezactivare

  • 8/19/2019 protectie baze de date

    3/13

    Curs BD G/3 

    Tipuri de R.I.:

     obligativitatea valorii (OT ULL) unicitatea valorii (UIQUE Key) unicitatea cheii primare (PRIMARY Key)

     obligativitatea legăturii (FOREIG Key) verificare condiţie oarecare (CHECK):

    • pentru un rând (R.I. individuală)domenii restrictive de valori;

    restricţii de format; relaţii între atribute• pentru o coloană (R.I. verticale)• pentru grupuri

     R.I. dinamice: verificare sau actualizare ab. d. la trecerea dintr-o stare în alta

  • 8/19/2019 protectie baze de date

    4/13Curs BD G/4 

    Exemple:

    CREATE TABLE DEPT (DEPTO UMBER(2) OT ULL,DAME VARCHAR2(14),LOC VARCHAR2(13),

    COSTRAIT DEPT_PRIMARY_KEY PRIMARY KEY (DEPTO));

    CREATE TABLE EMP (EMPO UMBER(4) OT ULL,EAME VARCHAR2(10),JOB VARCHAR2(9),MGR UMBER(4)

    COSTRAIT EMP_MGR_FK FOREIG KEYREFERECES EMP (EMPO),

    HIREDATE DATE,

    SAL UMBER(7,2),COMM UMBER(7,2),DEPTO UMBER(2) OT ULL,

    COSTRAIT EMP_DEPTO_FK FOREIG KEY (DEPTO)REFERECES DEPT (DEPTO),

    COSTRAIT EMP_EMPO_PK PRIMARY KEY (EMPO));

  • 8/19/2019 protectie baze de date

    5/13

  • 8/19/2019 protectie baze de date

    6/13

    Curs BD G/6 

    Probleme:

      suprapunerea a două tranzacţii   întreruperea bruscă a unei tranzacţii (pană)

    Soluţii:  fiecare tranzacţie să fie izolată astfel încât o execuţie concurentă a mai

    multor tranzacţii să nu ducă la incoerenţe  orice tranzacţie trebuie fie finalizată, fie anulată

  • 8/19/2019 protectie baze de date

    7/13

    Curs BD G/7 

    II.  SICROIZAREA ACCESULUI COCURET

    Mai multe tranzacţii care operează asupra aceluiaşi obiect din baza de datese pot suprapune, astfel încât să conducă la incoerenţă

    Timpi T1 T2 B.D. Timpi T1 T2 B.d.

    t1 citire(x) - x=3 t1 citire(x) - x=3

    t2 x

  • 8/19/2019 protectie baze de date

    8/13

    Curs BD G/8 

    Blocare - blocarea unui obiect = împiedicarea altor tranzacţii de a

    efectua operaţii asupra aceluiaşi obiect- eliberarea unui obiect = abandonarea controlului exclusivasupra obiectului

    Timpi T1 T2 B.D.t1 blocare(x) x=3

    t2 citire(x)

    t3 - blocare(x)

    t4 x

  • 8/19/2019 protectie baze de date

    9/13

    Curs BD G/9 

    Interblocare = fenomen negativ prin care 2 tranzacţii se împiedică reciprocde a continua execuţia

    Timpi T1 T2

    t1 blocare(x) -t2 - blocare(y)

    t3 blocare(y) -

    t4 - blocare(x)

    t5 aşteaptă aşteaptă

    ... ... ...

    Rezolvarea interblocărilor: - prevenire

    - detectare şi anulare

  • 8/19/2019 protectie baze de date

    10/13

    Curs BD G/10 

    III. SIGURAŢA Î FUCŢIOARE ŞI RELUAREA DUPĂ PAĂ

    Pană logică reluare la cald

    fizică pe UCpe periferic reluare la rece

    Măsuri de siguranţă:

    • mirroring

    • copii de siguranţă ale b.d. (coerente)• salvări periodice (necoerente)•  jurnal de tranzacţii

  • 8/19/2019 protectie baze de date

    11/13

    Curs BD G/11 

     Reluare la cald  (reluarea activităţii după aducerea la o stare coerentă)

    b.d. incoerentă+ b.d. coerentă

     jurnal de tranzacţii (anulare tranzacţii nefinalizate)

  • 8/19/2019 protectie baze de date

    12/13

    Curs BD G/12 

     Reluare la rece 

    (refacerea b.d. dintr-o versiune anterioară)salvarea periodică n-1

    + b.d. actuală, coerentă

     jurnal de tranzacţii (anulare tranzacţii nefinalizaterefacere tranzacţii finalizate)

    copia de sig. n-1

    + b.d. actuala, coerenta jurnal de tranzacţii (refacere tranzacţii finalizate)

    copia de siguranţă n-1 

    b.d. coerentă (neactuală)+ reexecutarea operaţiilor

  • 8/19/2019 protectie baze de date

    13/13

    Curs BD G/13 

    IV. 

    SECURITATEA UTILIZĂRII

    ♦  gestiunea privilegiilor (accesul la b.d.)♦  gestiunea drepturilor (operaţii posibile asupra datelor)♦  criptografiere