Sunteți pe pagina 1din 6

Universitatea De Vest

Lucrare de licenta

Securitatea bazelor de date

In cadrul unei organizatii, bazele de date reprezinta una din componentele cele mai importante a oricarui sistem informatic, componenta care pastreaza si prelucreaza diverse date si informatii. Acestea pot fi sisteme de gestiune a documentelor, a evidentei contabile, de gestiune

a proceselor tehnologice, management al salariatilor etc. Deoarece bazele de date contin toata informatia importanta privind compania, clientii sai, activitatea financiara, sau multe alte puncte critice din companie, ele reprezinta unul din factorii determinanti in structura organizatiei, fapt care impune cerinte sporite de confidentialitate, integritate si acces la date. In general securitatea are in vedere urmatoarele aspecte: - secretul si confidentialitatea datele nu trebuie dezvaluite unor persoane neautorizate. - acuratetea, integritatea si autenticitatea acuratetea si integritatea inseamna ca datele nu trebuie sa poata fi daunatoare sau corupte accidental sau modificate. Autenticitatea presupune un mod de a verifica originea datelor. - disponibilitatea si capacitatea de recuperare datele sa poata fi recuperate complet si eficient (fara pierderea acuratetei si integritatii in cazul pierderii de informatii. !isteme diferite pot avea mecanisme de a atinge aceste scopuri diferite. De e"emplu, encriptarea este o modalitate de a asigura secretul si confidentialitatea. #arolele si semanturile digitale a$uta la aplicarea autenticitatii. %ac&up-ul este o modalitate in garantarea disponibilitatii si capacitatii de recuperare. Auditul a$uta la realizarea acuratetii si integritatii. In functie de medii specifice unele din aceste aspecte de securitate pot fi mai importante decat celelalte. De e"emplu in mediul militar secretizarea este mai importanta, in mediul bancar, acuratetea si integritatea. De cele mai multe ori, in viata de zi cu zi, disponibilitatea si capacitatea de recuperare in caz de pierderi de informatii reprezinta cel mai important scop. !erverul 'racle cuprinde un !(%D care controleaza: - !tocarea de date in sfera bazelor de date dedicate) - !ecuritatea bazelor de date si a tas&urilor permise pentru anumiti utilizatori) - *omunicarea si integritatea informatiilor, cand bazele de date sunt distribuite intr-o retea. - *onsistenta si protectia datelor, incluzand arhivarea tas&urilor si mecanisme de cautare) - +ecuperarea de date pentru aplicatii utilizand tehnici de optimizare adecvate) !ecuritatea (confidentialitatea datelor semnifica faptul ca accesul la date se face numai printr-o autorizare corespunzatoare si doar controlat (sarcina administratorului bazei de date cu a$utorul !(%D-ului . In acest sens, !(%D-ul permite: autorizarea si controlul accesului la date, utilizarea vie,-rilor (vizualizarilor , realizarea unor proceduri speciale, criptarea datelor. a Autorizarea si controlul accesului la date este realizat de !(%D prin intermediul parolelor. Acestea identifica clasele de utilizatori, cu anumite drepturi de acces, la anumite date. b -tilizarea vizualizarilor (vie, este asigurata de !(%D pentru reprezentarea schemelor e"terne ale bazei de date. *u a$utorul vie,, !(%D-ul permite sa se defineasca partitii logice ale bazei de date, definite pentru diferiti utilizatori, in raport cu cerintele acestora de acces la date. !ecuritatea datelor este asigurata de !(%D prin definirea tuturor drepturilor necesare unui utilizator pentru un vie, si revocarea drepturilor pentru obiectele initiale. c +ealizarea unor proceduri speciale de acces asupra datelor este permisa de !(%D. Aceste proceduri se pastreaza in forma precompilata, iar anumitor utilizatori li se va acorda dreptul de e"ecutie si li se va interzice accesul direct la obiectele bazei de date. d *riptarea este asigurata de !(%D prin oferirea unor rutine de criptare (codificare a datelor apelate automat sau la cerere si prin e"istenta unor instrumente care permit utilizatorului sa realizeze propriile rutine de criptare. *riptarea si decriptarea se realizeaza dupa algoritmi specifici, cu o cheie (parola de acces la rutina.

*omponentele unui sistem de criptare sunt: - Algoritmul de criptare este o rutina care transforma datele initiale intr-o forma cifrata (codificata ) - *heia de criptare este o valoare secreta (parola care permite intrarea in algoritmul de criptare) - Algoritmul de decriptare este o rutina care transforma datele din forma criptata in cea initiala) - *heia de decriptare este o parola de intrare in algoritmul de decriptare. Integritatea datelor se refera la corectitudinea (coerenta datelor si este asigurata prin prote$area acestora impotriva unor incidente intentionate sau neintentionate. *omponentele !(%D-ului asigura integritatea datelor tratand separat cauzele care pot altera baza de date: integritatea semantica, controlul accesului concurent, salvarea . restaurarea. a Integritatea semantica este asigurata prin operatii efectuate de !(%D asupra datelor si a prelucrarilor. Aceste operatii alcatuiesc un set de reguli numit restrictii de integritate. !(%D-ul asigura astfel de restrictii implicite (rezulta din modelul de date implementat si e"plicite (proceduri incluse in programele de aplicatie . b Accesul concurent asigura coerenta datelor si este un obiectiv al !(%D-ului care se pune mai acut mai ales la baze de date distribuite. In acest sens !(%D-ul are o unitate distincta de prelucrare a datelor numita tranzactie, care este constituita dintr-o secventa de operatii marcata de puncte de inceput si sfarsit. /ranzactia poate fi controlata de !(%D implicit, cand punctele de inceput si de sfarsit sunt automat definite, sau e"plicit, cand punctele de inceput si de sfarsit sunt definite prin comenzi specifice. c !alvarea . restaurarea (bac&up.recover0 ca facilitate a !(%D-ului permite refacerea consistentei datelor care au fost alterate fizic din diferite motive. 1odelul de securitate 'racle este unul multistrat. Incorporeaza protectia obiectelor si fisierelor atat in interiorul cat si in e"teriorul bazei de date, precum si o varietate de politici si strategii. !traturile de securitate cuprind: - protectia fisierelor sistemului 'racle (!(%D ) - prote$area codului aplicatiei care interactioneaza cu baza de date 'racle) - controlul cone"iunilor la baza de date) - controlul accesului la baza de date prin intermediul rolurilor, permisiunilor, triggeri-lor si procedurilor) - controlul accesului la tabele prin intermediul vie,-rilor, trigger-ilor si procedurilor) - controlul folosirii discului) - controlul folosirii resurselor sistemului (*#- de e"emplu ) - asigurarea capacitatii de recuperare) - activarea unor forme mai comple"e de securitate precum criptarea si semnaturi digitale sau acces unic pentru mai multe sisteme relationate (!ingle sign-on ) - suport pentru baze de date si structuri accesate 2eb. Din punct de vedere al securitatii, componentele 'racle trebuie impartite in doua parti: fisierele sistemului de operare 'racle (entitatile fizice si obiectele bazei de date 'racle (entitatile logice .

3isierele sistem 'racle


-rmatoarele fisiere sunt semnificative din perspectiva securitatii. 4ste esential sa fie prote$ate aceste fisiere pana la capacitatea ma"ima a sistemului pe care se lucreaza. 3isierele care compun spatiile tabel ale bazei de date Acestea includ fisierele de reluare, fisierele de control, fisiere $urnal arhivate pentru recuperare, fisiere de date pentru segmentele de revenire, fisiere de date pentru indecsi. 3isierul de initializare a parametrilor +eprezinta principalul mi$loc de configurare a !(%D+-ului. 4l este o colectie de valori ale unor parametrii, care fiecare controleaza sau modifica un anumit aspect din modul de functionare al unei baze de date si instante. 5umele atribuit in mod implicit fisierului de initializare a parametrilor este INITSID.ORA unde !ID (s0stem identifier este identificatorul de sistem pentru baza de date pe care o controleaza. 3isierul de configurare 3isierul de configurare, numit CONFIG.ORA contine informatii despre configuratia bazei de date, dimensiunea blocurilor bazei de date, etc. 3isiere de configurare a retelei !unt folosite pentru interactiunea clientului cu baza de date. Aceste fisiere includ (dar nu numai LISTENER.ORA, SQLNET.ORA, TNSNAMES.ORA, etc. /he oracle distribution files 'racle distribution files include toate codurile care se instaleaza cu scopul de a construi, interactiona, si mentine bazele de date 'racle. /rebuie retinut ca aceste fisiere incapsuleaza nume utilizatori si parole. 3isiere de bac&up 3isierele de bac&up sunt copii ale bazei de date realizate fie prin utilitarul pentru bac&up 'racle fie facand copii ale fisierelor folosind utilitatile sistemului de operare. Ar trebui salvate toate fisierele de mai sus si orice fisier de management al configuratiei.

#rocesele de fundal si !(A

#rocesele de fundal si !(A (!0stem (lobal Area nu sunt fisiere dar sunt prezentate aici deoarece sunt controlate de la nivelul sistemului de operare si iau parte la rularea unei baze de date 'racle. #rocesele de fundal 'racle 3iecare instanta utilizeaza mai multe procese de fundal, dar in mod implicit orice instanta contine 6 procese de fundal: D%2+ (database ,riter , L(2+ (log ,riter , !1'5 (s0stem monitor , #1'5 (process monitor , *7#/ (chec&point . In afara de acestea mai e"ista si altele cele particulare depinzand de modul cum este configurata baza de date. 8ona globala sistem (!(A 4ste o multime de zone tampon parta$ate continand datele si informatiile de control relative la o instanta 'racle. Datele continute aici sunt parta$ate de utilizatorii conectati la distanta. Informatiile continute in !(A sunt repartizate in diferite zone: shared pool, database buffer cache, redo log buffer, data dictionar0 cache.

4ntitatile logice
'ralcle prote$eaza si mentine aceste entitati direct si le foloseste pentru a impune securitatea in sistem. -tilizatorii *onturi 'racle create de administratorul bazei de date. *rearea unui utilizator consta in definirea identitatii sale (nume si parola . 3iecarui utilizator creat administratorul poate sa ii afecteze un spatiu tabel implicit, un spatiu tabel temporar, un profil, sa-i acorde privilegii, etc. !chema Intreaga colectie de obiecte acare apartine unui cont de utilizator. #rivilegii +eprezinta unul dintre cele mai importante mi$loace pentru realizarea securitatii bazei de date. -n utilizator nu poate efectua o actiune asupra bazei de date decat daca are privilegiul de a efectua actiunea respectiva. #rivilegiile sistemului 'racle sunt grupate in doua categorii: privilegii sistem

+oluri

-n grup de privilegii sau un obiect ce poate fi folosit pentru a acorda unul sau mai multe privilegii unuia sau mai multor utilizatori. +olurile pot fi ierarhice , adica un rol poate fi acordat unu-i alt rol. #rofiluri -n profil reprezinta o multime de limite asupra folosirii resurselor care poate fi atasata unui utilizator in scopul controlarii consumului de resurse. #rofilurile nu apartin nici unei scheme, deci orice utilizator cu privilegiile necesare poate e"ecuta comenzi pentru profilurile create de orice alt utilizator. 'racle9 permite controlul administrarii parolelor utilizatorilor bazei de date. -rmatoarele componente sunt toate obiecte. *uvantul :obiect; se refera la orice articol care apartine unui utilizator. /abele 4ste principala structura logica de stocare a datelor. Declansatoare 4ste un bloc #L.!<L stocat in baza de date , care este asociat unui tabel. -n trigger este e"ecutat in mod implicit ori de cate ori asupra tabelului este lansata o anumita comanda D1L (I5!4+/, -#DA/4 sau D4L4/4 . =ederi ' vedere este un :tabel logic; fiind de asemenea organizata in randuri si coloane. ' vedere poate fi construita din unul sau mai multe tabele sau chiar alte vederi si permite ca datele din mai multe tabele sa fie rearan$ate, reunite logic sau ca noi date sa fie calculate pe baza acestora. =ederea nu stocheaza date si nici nu are alocat vre-un spatiu de stocare. #achete stocate #rograme scrise in #l.!<L pot fi salvate si compilate din baza de date. !unt doua tipuri: proceduri si functii. ' functie trebuie sa intoarca o valoare, in timp ce o procedura nu trebuie sa intoarca o valoare. !inonime 4ste un obiect care face referire la un alt obiect din baza de date, cu alte cuvinte este un alias al acestuia. !inonimele sunt folosite de obicei pentru a permite unui utilizator sa foloseasca obiecte din schema unui utilizator, fara a specifica proprietarul acestora.

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