Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Adatbázisok védelme DBMS szinten: Rendelkezésre állás Integritási Hozzáférési DBMS - OS Többszintű Sokszínűség Komplex objektumok Dinamikus.

Hasonló előadás


Az előadások a következő témára: "Adatbázisok védelme DBMS szinten: Rendelkezésre állás Integritási Hozzáférési DBMS - OS Többszintű Sokszínűség Komplex objektumok Dinamikus."— Előadás másolata:

1 Adatbázisok védelme DBMS szinten: Rendelkezésre állás Integritási Hozzáférési DBMS - OS Többszintű Sokszínűség Komplex objektumok Dinamikus

2 Adatbázisok védelmi kérdései

3 Hozzáférési védelem DBMS OS OS account DBMS account MAC DAC System priv. ROLE AUDIT Int. control MRL Profile

4 Felhasználó azonosítás OS szintű DBMS szintű vegyes Oracle, SQLServer,... Megbízható OS, Hálózatos struktúra, Rugalmasság,…. Jelszó tárolása : titkosítás, egyutas-kódolás, DBMS Authentication

5 DES algoritmus Data Encryption Standard, 1976) blokk kódolás egykulcsú hatékony kétirányú rugalmas

6 DES

7 Adatbázis biztonsága KL Integrity check: az adatok egységességének, az értékek épségének ellenőrzése ellenőrző összegek alkalmazása jogosult alkalmazás védelmi szűrő titkosítás módosítás ellenőrzés lekérdezés ellenőrzés RDBMS

8 CRC : ellenőrző összeg képzése egy blokknyi adatot egy bináris polinommal reprezentál polinom osztáson alapszik, a maradék lesz az ellenőrző összeg M : k bit hosszú adat. F : n bit hosszú ellenőrző összeg T = M + F P : n+1 hosszú minta (osztó). T osztható P-vel T= M*x^n + R M*x^n / P = Q + R/P Integrity check

9 CRC algoritmus FUNCTION CDC PARAMETERS szoveg P, n, N1 M = BITLSHIFT(szoveg,n) ; S = 0 FOR i = N1-1 TO 0 STEP -1 S = BITOR( BITLSHIFT(S,1), IIF( BITTEST(M,i),1,0)) IF BITTEST(S,n) THEN S = BITXOR(S,P) ENDIF S = BITAND(S,2^n-1) ENDFOR RETURN S speciális mod-2 polinom osztás művelet

10 M: 1010001101 P: 110101 R: 1110 CRC minta

11 Adatbázis biztonsága védelmi módszerek jogosultsági adatok védelmi stratégia védelmi rendszer felhasználók (szubjektumok) DB objektumok

12 Hozzáférés védelem Decentralizált, DAC Centralizált, MAC Egyszintű Többszintű Szerep-orientált RBAC

13 Adatbázis biztonsága A DAC védelmi modell: - decentralizált - hozzáférési mátrix alapú - tulajdonos szabja meg a jogokat - szubjektumok csoportokat alkothatnak objektum auto dolgozo kiado szerviz S,D - - S,I,D - S,I,U S - S S S S peterscottli234 szubjektum művelet, feltétel SELECT INSERT DELETE... hozzáférési mátrix

14 Adatbázis biztonsága KL SQL védelmi utasítások: objektum jogok GRANT művelet ON objektum TO szubjektum WITH GRANT OPTION; REVOKE művelet ON objektum FROM szubjektum DENY művelet ON objektum TO szubjektum; privilégiumok GRANT művelet TO szubjektum WITH ADMIN OPTION; REVOKE művelet FROM szubjektum rendszertáblák SELECT … FROM USER_COL_PRIVS; SELECT … FROM USER_SYS_PRIVS;

15 Felh.Obj. GRANT SELECT ON V TO T Jog GRANT UPDATE ON V TO T T TV T V +S +U REVOKE UPDATE ON V FROM T TV-S DENY SELECT ON V TO T REVOKE SELECT ON V FROM T grant select on dd to proba deny select on dd to proba revoke select on dd from proba create role r1 grant select on dd to proba grant select on dd to r1 grant r1 to proba deny select on dd to proba revoke select on dd from proba exec sp_addrole 'r1' exec sp_addrolemember 'r1','proba'

16 Adatbázis biztonsága RBAC védelmi modell: centralizált hozzáférés adminisztrálás szubjektumok nem rendelkeznek az objektumokkal csoportokhoz rendeljük a jogosultságokat a szubjektumokhoz csoportokat rendelünk lehet egyszintű vagy hierarchikus felhasználókcsoportok objektumok Access Matrix

17 Adatbázis biztonsága Szerepkörök (role): jogok hierarchikus halmaza CREATE ROLE rnev IDENTIFIED BY jelszo GRANT művelet ON objektum TO rnev GRANT rnev TO szubjektum GRANT rnev1 TO rnev2 SET ROLE TO rnev IDENTIFIED BY jelszo ALTER USER fnev DEFAULT ROLE lista Role B Role A CREATE ROLE A CREATE ROLE B GRANT X TO A... GRANT A TO B GRANT V TO B... GRANT B TO U1 GRANT S TO U1 U1 U2 S T V W X Y Z

18 USER A USER B ROLE F ROLE C TABLE T TABLE Q OBJ. PERM. OBJ. PERM. SYST. PRIV. SYST. PRIV.

19 Adatbázis biztonsága UZEM DOLGOZO U S I SQL parancsok:…

20 Oracle mintapélda

21 Adatbázis biztonsága Az MAC védelmi modell: centralizált hozzáférés adminisztrálás a szubjektumok csak a számunkra megadott kereteken belül rendelkezhetnek a jogosultságokkal titkossági kód: L(S,A) S : titkossági szintU < C < S < TS A : terület U C S TS

22 Employee Black’s Employee Brown: read, write Black, Brown: read, write Brown Black Word Processor TH Egy trójai faló modul épül be a programba Megosztott program Olvashat !! Adatot átmásolhat !!! DAC és a trójai faló

23 Bell & LaPadula model

24 Adatbázis biztonsága Az MAC működése: dominancia: L1  L2  S1  S2 és A1  A2 szabályok: - untrusted felhasználó csak olyan erőforrást olvashat, melynek dominálja a kódját, -untrusted felhasználó csak olyan erőforrást módosíthat, melynek kódja megegyezik az ő kódjával, -untrusted felhasználó csak olyan erőforrást bővíthet, melynek kódja dominálja az ő kódját. U C S TS olvasás olvasás, írás bővítés

25 Adatbázis biztonsága minta MAC védelmi séma

26 Adatbázis biztonsága A SeaView védelmi modell: kibővített MAC: megbízhatósági kód: I(C,A) C : megbízhatósági szintU < I < VI < C A : terület + DAC elemek U C S TS U I VI C

27 Dominancia a megbízhatóságnál dominancia: I1  I2  S1  S2 és A1  A2 szintek: U < I < VI < C szubjektumnál az U kódú mindent olvashat objektumnál a C kódút mindenki olvashatja Itt felfele irányban lehet olvasni, lefelé nem -Egy s felhasználó csak azon o erőforrást olvashatja, melynek megbízhatósága a felhasználó megbízhatóságát dominálja: I(o)  I(s). - Egy s felhasználó csak azon o erőforrást bővítheti, melynek megbízhatóságát dominálja a felhasználó megbízhatósága: I(o)  I(s). h

28 Adatbázis biztonsága A SeaView működése: hozzáférési osztály C = (L, I) dominancia: C1  C2  L1  L2 és I1  I2 szubjektumhoz olvasási és írási hozzáférési osztály: Cr, Cw szabályok: - Egy s felhasználó csak azon o erőforrást olvashatja, melynek elérési osztályát a felhasználó olvasási osztálya dominálja: C R (s)  C(o). - Egy s felhasználó csak azon o erőforrást bővítheti, melynek elérési osztálya dominálja a felhasználó írási osztályát: C W (s)  C(o). Cw Cr

29 Adatbázis biztonsága minta SeaView védelmi séma

30 Adatbázis biztonsága KL Többszintű táblák (MLR): mező szintű védelmi objektumok R(A1,s1,A2,s2,…,sr) egyazon relációnak több védelmi szinten létezhet előfordulása polyinstantiation : egy adatelem több különböző értékkel szerepelhet a különböző szinteken névkorosztfizTC JaniC45Sb1S34CC IcaU23Sb1U12CU TomiS24Sb3S56TSS névkorosztfiz Jani45b134 Ica23b112 Tomi24b356 névkorosztfiz JaniNULLNULL34 IcaNULLb112 TS C

31 Adatbázis biztonsága KL Integritási szabályok a különböző nézetek között: - egyed integritási - hivatkozási - NULL érték kezelési - példány kapcsolati - általánosított függőségi Egyed integritási -  PK elsődleges kulcs attribútum halmaz; - A i  PK  t[A i ]  NULL; - A i, A j  PK  t[C i ]  t[C j ]; - A i  PK  t[C i ]  t[C PK ]. Hivatkozási - ha  FK (kapcsolókulcs), hogy A i, A j  FK és t[A i ]  NULL, t[A j ]  NULL  t[C i ]  t[C j ]; -  t'[PK]  ref(FK), hogy t'[PK]  t[FK]; - t'[C PK ]  t[C FK ].

32 Adatbázis biztonsága Példány kapcsolati - R C'   (R C, C'), ahol a  filter függvény működése:  t  R C esetén, ahol t[C PK ]  C' :  t'  R C' : t'[PK, C PK ]  t[PK, C PK ] és  A i  PK : t'[A i, C i ]  t[A i, C i ], ha t[C i ]  C'; egyébként. Általánosított függőségi  R C elemére és  A i -re : (PK, C PK, C i )  A i. Null érték szabálya - t[A i ]  NULL  t[C i ]  t[C PK ]; - R C nem tartalmaz befoglalt rekordokat, ahol t befoglalja s-et, ha  A i -re: t[A i, C i ]  s[A i, C i ], vagy t[A i ]  NULL és s[A i ]  NULL.

33 Trusted Oracle Védelmi szint jelzése: ROWLABEL pszeudó-mező Join-nál a minimum szint jön át CREATE TABLE dolgozo (…. CHECK (rowlabel BETWEEN.’ ‘. AND ‘.’.))

34 VFP zárolás Közvetett: SET EXCLUSIVE ON| OFF USE.. EXCLUSIVE | SHARED ISEXCLUSIVE() ALIAS() DBF() DBC() CLOSE TABLE (ALL) CLOSE DATABASE (ALL) PRIVATE DATA SESSION

35 VFP zárolás Kézi: RLOCK() FLOCK() ISRLOCKED() ISFLOCKED() UNLOCK SET REPROCESS TO ON ERROR ERROR() MESSAGE()

36 VFP zárolás Pufferelés alapú: CURSORSETPROP(”BUFFERING”,n) n = 1,2,3,4,5 CURSORGETPROP() TABLEUPDATE(n, tabla) n = 0,1,2, TABLEREVERT(n,tabla) BEGIN TRANSACTION END TRANSACTION ROLLBACK


Letölteni ppt "Adatbázisok védelme DBMS szinten: Rendelkezésre állás Integritási Hozzáférési DBMS - OS Többszintű Sokszínűség Komplex objektumok Dinamikus."

Hasonló előadás


Google Hirdetések