Unit 9 Protectia-BD
Transcript of Unit 9 Protectia-BD
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 1/7
97
Unitatea 9. Protecţia şi securitatea bazelor de date
Obiective
După parcurgerea acestei unităţi studentul:
- va înţelege aspectele care definesc protecţia datelor ;
- va înţelege tehnicile de asigurare a integrităţii datelor din
baza de date ;
- va înţelege met odele de asigurare a securităţii datelor .
Protecţia bazelor de date constă dintr -un set de măsuri umane şi
facilităţi oferite de SGBD prin care se urmăreşte asigurarea
integrităţii datelor, definită ca fiind corectitudinea datelor introduse şi
manipulate, şi a securităţii datelor, ce vizează interzicerea accesului
la date pentru persoanele ce nu au competenţe în folosirea lor.
Aceasta capătă o importanţă deosebită în contextul extinderii folosirii
configuraţiilor cu număr mare de utilizatori şi cu un volum mare de
date de prelucrat. În ceea ce priveşte sfera de acţiune a metodelor utilizate pentru
protecţia datelor, pot fi puse în evidenţă două tendinţe: protecţia
împotriva unor defecte sau erori accidentale şi protecţia completă
care realizează în plus faţă de prima şi protecţia contra unor acţiuni
voite. Teoretic, toate sistemele ar trebui să asigure protecţia
completă a datelor. În practică însă, costul protecţiei, care creşte pe
măsură ce sunt reduse posibilităţile de apariţie a unor erori şi deviolare a confidenţialităţii datelor, este cel care dictează
complexitatea metodelor de protecţie care vor fi utilizate. Aspectele
protecţiei bazelor de date ce vor fi prezentate mai jos se bazează pe
presupunerea că, la nivelul sistemului de operare, protecţia
informaţiilor din bazele de date este asigurată.
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 2/7
98
9.1. Integritatea datelor
Corespunzător situaţiilor care pot genera apariţia unor date
incorecte în baza de date, se disting trei aspecte ale asigurării
integrităţii datelor:
1. Asigurarea integrităţii semantice a datelor - presupune
prevenirea introducerii unor date incorecte şi a efectuării unor
prelucrări greşite. Dacă acest lucru nu va fi împiedicat sau
semnalat imediat, datele vor fi utilizate în alte prelucrări,
declanşându-se astfel un proces necontrolat de alterare a
bazei de date. Cu cât sesizarea unei erori are loc după o
perioadă mai mare, cu atât efectele ei vor fi mai greu de
controlat.
2. Controlul accesului concurent la date - presupune
prevenirea obţinerii unor rezultate incorecte din execuţia
concurentă (simultană) a unor prelucrări în regim multiutilizator.
O altă problemă care poate apare la prelucrarea concurentă
este dată de interblocare. Aceasta înseamnă că două tranzacţiiblochează anumite resurse, apoi solicită fiecare resursele
blocate de cealaltă.
3. Salvarea şi restaurarea bazei de date. Au ca scop
readucerea datelor la o formă consistentă în urma unor
evenimente care au alterat corectitudinea lor precum:
funcţionarea anormală sau o cădere a SGBD sau a
sistemului de operare;defecţiune fizică a suportului fizic pe care este memorată
baza de date.
În primul caz, prin întreruperea tranzacţiilor active în momentul
respectiv, baza de date va rămâne într -o stare de inconsistenţă. În
cel de-al doilea caz, suportul pe care rezidă baza de date va fi
inutilizabil, deci toate datele se vor pierde.
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 3/7
99
Pentru restaurarea bazei de date este necesară existenţa unor
informaţii despre derularea tranzacţiilor până în momentul întreruperii
lucrului şi aplicarea, după caz a uneia din următoarele tehnici de
restaurar e de bază:
- derularea înapoi a tranzacţiilor (ROLLBACK) - care presupune
anularea modificărilor efectuate de acestea asupra bazei de
date;
- derularea înainte a tranzacţiilor completate dar nereflectate în
baza de date (ROLLFORWARD) - care presupune efectuarea
acelor transformări prin care baza de date restaurată să
conţină rezultatele acestora. Se observă deci că tranzacţia poate fi considerată unitatea de
restaurare, în sensul că baza de date restaurată trebuie, fie să
reflecte rezultatele finale ale tranzacţiilor, fie să nu fie afectată de
acestea.
Procesul de restaurare utilizează o serie de infromaţii obţinute prin
aplicarea unei anumite strategii de salvare.
Datele salvate pot fi diferite combinaţii între: - copii ale bazei de date şi copii ale jurnalelor acesteia;
- jurnale ale tranzacţiilor;
- jurnale ale imaginii înregistrărilor din baza de date.
Copiile bazei de date pot fi realizate automat de către sistem la
anumite intervale de timp, sau la comanda administratorului bazei de
date, ori de câte ori este nevoie, de preferat pe suporturi magnetice
diferite de cele pe care este stocată baza de date. În cazul uneideteriorări a suportului magnetic care păstrează baza de date,
acesta este singura posibilitate de recuperare a bazei de date.
Jurnalul tranzacţiilor este un fişier special, întreţinut de SGBD, în
care sunt memorate informaţii despre tranzacţiile efectuate asupra
bazei de date, cum sunt:
identificatorul sau codul tranzacţiei;
momentul începerii execuţiei tranzacţiei;
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 4/7
100
numărul terminalului sau identificatorul utilizatorului care a
iniţiat tranzacţia;
datele introduse;
înregistrările modificate şi tipul modificării.
Pe baza lui va putea fi stabilită ulterior succesiunea corectă şi
natura prelucrărilor efectuate în intervalul de timp pentru care trebuie
să se sigure restaurarea bazei de date.
Jurnalul imaginilor se deosebeşte de jurnalul tranzacţiilor prin
aceea că el nu conţine descrierea operaţiilor efectuate asupra bazei
de date ci efectul acestora. Poate îmbrăca una din urmăroarele
forme:
jurnalul cu imaginea înregistrărilor după modificare (after
image) - va conţine copia fiecărei înregistrări ce este
modificată, în forma rezultată după modificare;
jurnalul cu imaginea înregistrărilor înaintea unei modificări
(before image) - va conţine copia fiecărei înregistrări ce
este modificată, în forma iniţială, anterioară efectuării
modificării; jurnalul care conţine atât imaginea înregistrărilor inainte
cât şi după modificare.
Restaurarea bazei de date se poate face automat sau manual.
9.2. Securitatea bazei de date
Asigurarea securităţii bazei de date presupune interzicereaaccesului neautorizat la date. Aceasta se realizează cu ajutorul unui
set de măsuri de protecţie umane, software şi hardware.
O primă astfel de măsură o poate constitui izolarea sistemului de
calcul în încăperi în care accesul persoanelor să fie permis pe bază
de legitimaţii sau a altor forme de identificare.
Un alt nivel de protecţie îl poate constitui stabilirea de parole pe
baza cărora să fie permis accesul la resursele sistemului de calcul.
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 5/7
101
În timpul lucrului efectiv cu baza de date se va verifica dacă
utilizatorul are dreptul de a executa un tip de operaţie asupra
anumitor date. SGBD poate ţine şi un jurnal pentru urmărirea
accesului la baza de date, pe baza căruia pot fi depistate încercările
de acces neautorizat la baza de date.
Pentru cererile de intrare/ieşire transmise sistemului de operare de
către SGBD sunt posibile verificări suplimentare referitoare la
utilizarea corectă a fişierelor sau a funcţiilor sistemului de operare.
Hardware-ul poate să ofere o protecţie suplimentară, ca de
exemplu transferarea datelor numai în zona de memorie controlată
de SGBD. De asemenea, datele pot fi memorate pe suportul extern într-o formă criptată.
În continuare vor fi prezentate următoarele mecanisme de
asigurare a securităţii datelor din baza de date:
1. Autorizarea şi controlul accesului la date presupune
identificarea utilizatorilor, restricţionarea accesului acestora la date
precum şi restricţionarea operaţiilor ce pot fi executate asupra datelor
accesate.Cea mai mare parte a SGBD-urilor actuale folosesc pentru
identificarea utilizatorilor parole. Fiecare parolă va fi asociată cu
anumite drepturi de acces la date, ea nefind decât un prim obstacol
pentru cei care încearcă să violeze securitatea bazei de date.
Astfel, pentru fiecare utilizator identificat prin parolă, SGBD
menţine o listă a privilegiilor acestuia. De asemenea, utilizatorii pot fi
asociaţi unor grupuri de utilizatori, la drepturile fiecăruie dăugându-sedrepturile stabilite pentru grupul respectiv. Privilegiile unui utilizator
depind astfel de clasa de utilizatori căreia îi aparţine. Din acest
punct de vedere, utilizatorii se împart în: administratorul bazei de
date care are toate drepturile asupra acesteia, utilizatori proprietari
de obiecte (tabele, viziuni, proceduri), un obiect fiind întotdeauna în
proprietatea celui care-l creează, şi utilizatorii obişnuiţi, care nu au în
proprietate obecte şi nu au alte privilegii decât cele moştenite ca
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 6/7
102
membrii ai unui grup sau menţionate explicit de administratorul bazei
de date.
2. Definirea şi utilizarea viziunilor . Viziunile (schemele externe)
sunt partiţii logice ale bazei de date. Ele sunt definite pentru diferiţi
utilizatori în raport cu necesităţile acestora de a avea acces la date ,
putând fi utilizate pentru a restricţiona accesul la date.
Privilegiile pentru o viziune sunt specificate independent de cele
pentru obiectele pe baza căreia este definită. Securitatea datelor
este asigurată prin definirea tuturor drepturilor necesare unui
utilizator pentru o viziune şi revocarea drepturilor pentru obiectele
iniţiale. Această modalitate este suficientă în cazul în care asupra datelor
viziunii este permisă doar operaţia de citire. Pentru operaţia de
modificare trebuiesc avute în vedere efectele laterale pe care
aceasta le poate produce asupra obiectelor iniţiale. Utilizatorului nu
trebuie să i se permită să efectueze asupra viziunii acele operaţii
care pot afecta obiectele iniţiale. În caz contrar, pot să apară erori
sau inconsistenţe în baza de date.3. Realizarea de proceduri speciale. Unele SGBD oferă
facilitatea definirii unor proceduri ce vor fi păstrate la nivelul
sistemului într-o formă precompilată.
În cadrul acestor proceduri vor fi specificate explicit operaţiile ce
trebuie efectuate asupra datelor. Utilizatorului i se va acorda dreptul
de execuţie a acestor proceduri şi i se va interzice accesul direct la
obiectele bazei de date gestionate de procedură. 4. Criptarea datelor este operaţia de codifcare a datelor în timpul
stocării sau al transportului, astfel încât descifrarea lor să poată fi
făcută numai de posesorii de cod.
La nivelul SGBD această facilitate poate îmbrăca două forme:
existenţa unor rutine speciale care realizează criptarea
datelor la cerere sau automat;
7/21/2019 Unit 9 Protectia-BD
http://slidepdf.com/reader/full/unit-9-protectia-bd 7/7
103
existenţa unor instrumente de criptare care permit
utilizatorului să-şi realizeze propriile rutine de criptare.
Procesul efectiv de criptare presupune folosirea unui sistem de
cifrare, ale cărui componente sunt:
1. Algoritmul de criptare - realizează transformarea datelor
din forma iniţială în forma criptată (cifrată).
2. Cheia de criptare - valoare ce constituie o intrare a
algoritmului de criptare, aleasă dintr -o mulţime de chei
posibile.
3. Algoritmul de decriptare - realizează transformarea datelor
din forma criptată în forma iniţială. 4. Cheia de decriptare - valoare ce constituie o intrare în
algoritmul de decriptare, dependentă de cheia de criptare.
9.3. Test de verificare
1. Care sunt aspectele asigurăririi integrităţii datelor ?
2. Cum se poate realiza restaurarea bazei de date în cazul
căderilor accidentale ale SGBD sau SO ?
3. Cum se asigura refacerea bazei de date în cazul defectării
suportului de memorie pe care este stocata aceasta ?
4. Ce conţine jurnalul tranzacţiilor ?
5. Ce conţine jurnalul imaginilor ?
6. Ce presupune activitatea de asigurare a securităţii bazei de
date ?
7. Care sunt principalele mecanisme de asigurare a securităţii
datelor ?