Referaty
Home
Anglictina
Biologie
Chemie
Dejepis-Historie
Diplom-Projekt
Ekonomie
Filozofie
Finance
Fyzika
Informatika
Literatura
Management
Marketing
Medicina
Nemcina
Ostatni
Politika
Pravo
Psychologie
Public-relations
Sociologie
Technologie
Zemepis-Geografie
Zivotopisy




Téma, Esej na téma, Referátu, Referát, Referaty Semestrální práce:

Ochrana dat v databázových systémech.

Ochrana dat v databázových systémech.

Složky bezpečnosti dat - Integrita dat (Integrity), Ochrana dat (Security), Zotavení z chyb (Recovery), Paralelní zpracování (Concurrency)

Integrita dat - Zabezpečuje přesnost a korektnost dat v databázi. Definována množinou pravidel (integritních omezení), které uživatel nesmí porušit. IO jsou uložena v systémovém katalogu

Integritní omezení - příklad CREATE INTEGRITY RULE pravidlo1

FOR osoba (osoba.vaha >0)



ON ATTEMPTED VIOLATION reject;

DESTROY INTEGRITY RULE

Kategorie IO - doménová pravidla, atributová pravidla, relační pravidla, databázová pravidla 25227olf23lrh5p

Doménová pravidla - definují množinu hodnot přípustných pro danou doménu, příklad

CREATE DOMAIN množství NUMERIC(9)

FORALL (množství > 0 AND množství £ 5000 AND MOD(množství,50)=0

CREATE DOMAIN barva CHAR(5)

VALUES (‘černá’, ‘žlutá’, ‘bílá’,‘modrá’)

Atributová pravidla - specifikují doménu pro daný atribut, bezprostřední kontrola při libovolné update operaci hodnoty atributu.

Relační pravidla - pravidla týkající se atributů jedné relace, příklady

CREATE INTEGRITY RULE prav1

FORALL s (IF s.město = „Pardubice“ THEN s.psč = „532 03“)

ON ATTEMPTED VIOLATION REJECT;

CREATE INTEGRITY RULE prav2

s.status ³ 0 AND s.status £ 100);

CREATE INTEGRITY RULE prav3

IF sx.s# = sy.s# THEN sx.město = sy.město;

CREATE INTEGRITY RULE prav4

COUNT (p WHERE p.barva = „žlutá“) › 1;

Databázová pravidla - pravidla spojující dvě nebo více různých relací v databázi, příklad lr227o5223lrrh

CREATE INTEGRITY RULE prav5

IF prod.status < 20 AND prod.s# = zam.s# THEN zam.plat ³ 10 000

Ochrana dat - spočívá v ochraně dat před neautorizovaným přístupem, aspekty bezpečnosti právní, sociální a etické, fyzická kontrola, politické otázky, OS, HW kontroly, bezpečnost OS, specificky databázové otázky.

Přístupy k bezpečnosti - discretionary - filosofie přístupových práv uživatelů,

mandatory - klasifikační úrovně objektů

Discretionary CREATE SECURITY RULE rule

GRANT privilege-commalist

ON expresion TO user-commalist

ON ATTEMPTED VIOLATION action

DESTROY SECURITY RULE rule

Mandatory - datové objekty mají classification level, uživatelé mají clearance level, úrovně jsou striktně uspořádány, pravidla - uživatel i může vidět objekt j jen tehdy,

je-li clearance level i ³ classification level j, uživatel i může modifikovat objekt j, je-li clearance level i = classification level j

Bezpečnostní třídy - U.S. Department of Defense

Trusted Computer System Evaluation Criteria (Orange Book)

Trusted Database Management System Interpretation (Lavender Book)

D-minimal protection, C-discretionary protection, B-structured protection, A-verified protection.

Datové kódování - plaintext, kodovací algoritmus, kódovací klíče, ciphertext, tradiční přístupy ke kódování - substituce, permutace

Kódovací standardy - DES (Data Encryption Standard), Public-key

Podpora sql - pouze discretionary control, mechanismus VIEW

  • GRANT privilegia ON object TO users WITH GRANT OPTIONS

  • REVOKE

Zotavení z chyb - základní princip redundance a transakční zpracování.

Transakce - logická jednotka práce, zachovává konzistenci databáze, končí v konečném čase.

Transakční zpracování - architektura, aplikační program, manažer transakcí, rozvrhovač, manažer dat, databáze, COMMIT TRANSACTION, ROLLBACK TRANSACTION

Příklad - změna čísla čtenáře

Begin_transaction Změna_čísla_čtenáře(1)

begin(2)

input(staré_číslo, nové_číslo)(3)

read(temp, ČTENáŘ.Č_ČT = staré_číslo)(4)

if temp = empty then begin(5)

output(“čtenář neexistuje”)(6)

ROLLBACK(7)

end(8)

else begin modify(ČTENáŘ, staré_číslo, nové_číslo)(9)

modify(VÝPUJČKY, staré_číslo, nové_číslo)(10)

modify(REZERVACE, staré_číslo, nové_číslo)(11)

end(12)

end_transaction(13)

ACID vlastnosti - Atomicity, Consistence, Isolation, Durability

Zotavení systému - lokální a globální chyby, chyba systému - soft crash, chyba média - hard crash, kritický bod systémové chyby - ztráta bufferů, check point.

Zotavení médií - fyzické porušení části databáze, zotavení - obnova databáze ze záložní kopie a použití log file.

Dvoufázový commit - distribuované prostředí, transakce je úspěšná, jestliže jsou všechny její update na všech databázích potvrzené, při chybě musí být všechny update vráceny zpět, koordinátor



Paralelní zpracování - concurency - souběh transakcí, součást transakčního zpracování.

Problémy paralelismu - ztráta aktualizace, dočasná aktualizace, nekorektní použití agregačních funkcí

Ztráta aktualizace

ABstav

READ(x)x = 80

x := x-5zrušení 5 rezervací

READ(x)x = 80

x := x+4přidání 4 rezervací

WRITE(x)x = 75

WRITE(x)x = 84

Dočasná aktualizace

ABstav

READ(x)x = 80

x := x-5zrušení 5 rezervací

WRITE(x)x = 75

READ(x)x = 75

x := x+4přidání 4 rezervací

WRITE(x)x = 84

chyba systému

Nekorektní použití agregačních funkcí

ABstav

sum := 0čitač počtu rezervací

READ(K)

sum := sum + K

READ(x)

x := x-5

WRITE(x)

READ(z)čte před změnou z

sum := sum +z

READ(x)čte po změně x

sum := sum + x

READ(z)

Zámky - výhradní zámek (X lock) - write lock, sdílený zámek (S lock) - read lock

  • matice kompatibility XS-

Xnny

Snyy

-yyy

Data access protokol - při přístupu k položce - S lock, při UPDATE položky - X lock, při zamítnutí zámku - wait state, uvolnění zámků na konci transakce

Revize - ztráta aktualizace AB

READ(Y)S lock Y

Y := Y-5

READ(Y) S lock Y

Y := Y+4

WRITE(Y) X lock Y

wait WRITE(Y) X lock Y

wait wait

Revize - dočasná aktualizace AB

WRITE(Y) X lock Y

READ(Y) S lock Y

wait

COMMIT (ROLLBACK) uvolněn S lock Y

READ(Y) S lock Y

Revize - nekorektní použití agregačních funkcí

AB

READ(x) S lock X

x := x-5

WRITE(x) X lock X

READ(z) S lock Z

sum = sum + z

READ(x) S lock X

wait

READ(z) S lock zwait

waitwait

Deadlock

  • situace, kdy se dvě nebo více transakcí nachází v čekajícím stavu a každá z nich čeká na uvolnění zámku jiné čekající transakce

  • ukončení - výběr jedné z čekajících transakcí a její ROLLBACK

Dvoufázový uzamykací protokol

  • před operací s libovolným objektem musí být tento objekt uzamčen

  • po uvolnění prvního zámku nesmí transakce umístit žádný další zámek

  • dvě fáze - uzamykací a odemykací