Hasonló dokumentumok
Adatbázisok biztonsága

Debreceni Egyetem. Informatika Kar ADATBÁZISOK ADATVÉDELME

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

SQLServer. Védelmi struktúra

Adatbázis kezelés Delphiben. SQL lekérdezések

Adatbázis-kezelés - Jogosultság kezelés adatbázisokban

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

Adatbázis rendszerek SQL nyomkövetés

Adatbázis-kezelés. Harmadik előadás

Bevezetés: az SQL-be

Oracle Audit Vault and Database Firewall. Gecseg Gyula Oracle DBA

Symfony kurzus 2014/2015 I. félév. Security: authentication, authorization, user provider, role-ok, access control, FOS user bundle

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

Titkok. Oracle adatbázisok proaktív es reaktív védelmi eszközei. Mosolygó Ferenc, vezetı technológiai tanácsadó. <Insert Picture Here>

Adatbázis Rendszerek II. 8. Gyakorló környezet

B I T M A N B I v: T M A N

BEVEZETÉS Az objektum fogalma

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Operációs rendszerek. A védelem célja. A fenyegetés forrásai. Védelmi tartományok. Belső biztonság. Tartalom

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

Hálózati operációs rendszerek II. OES biztonsági rendszere

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Alkalmazások biztonsága

LBRA6i integrált rendszer

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

SQLServer. SQLServer konfigurációk

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Java és web programozás

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Nézetek és indexek. AB1_06C_Nézetek_Indexek - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján

18. témakör. Jogosultságok (Windows és Linux jogosultságok összehasonlítása, helyi és megosztási jogosultságok)

Adatbázis tartalmának módosítása

Java biztonsági megoldások. Sandbox, Security

SQL DDL-2 (aktív elemek) triggerek

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

SQLServer. Particionálás

Adatbázisok elmélete 9. előadás

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

SQL DDL-1: táblák és megszorítások

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Utolsó módosítás:

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

Enterprise User Security

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

Java és web programozás

Az SQL adatbázisnyelv: DML

Informatikai alapismeretek Földtudományi BSC számára

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

B I T M A N B I v: T M A N

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2

API tervezése mobil környezetbe. gyakorlat

Webapp (in)security. Gyakori hibákról és azok kivédéséről fejlesztőknek és üzemeltetőknek egyaránt. Veres-Szentkirályi András

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

Adatbázisok* tulajdonságai

LOGISZTIKAI ADATBÁZIS RENDSZEREK BEVEZETÉS

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

Adatbázis használat I. 5. gyakorlat

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

Az Oracle Fusion szakértői szemmel

LOGISZTIKAI ADATBÁZIS RENDSZEREK JOIN, AGGREGÁCIÓ

A könyv tartalomjegyzéke

Adatbázisok elmélete 9. előadás

GEIAL Kovács László. GEIAL Kovács László GEIAL Kovács László

Oracle adatbázis biztonság a gyakorlatban és 12c újdonságok

Adatbázisok elleni fenyegetések rendszerezése. Fleiner Rita BMF/NIK Robothadviselés 2009

LINUX LDAP címtár. Mi a címtár?

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK)

Vonalkód olvasó rendszer. Specifikáció Vonalkód olvasó rendszer SoftMaster Kft. [1]

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális)

Windows rendszeradminisztráció és Microsoft szerveralkalmazások támogatása. 7. óra. Kocsis Gergely, Kelenföldi Szilárd

Adatbázisok. 2. gyakorlat SQL november november 12. Adatbázisok 1 / 31


Adatbázis-kezelés, információs-rendszerek

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

Bár a szoftverleltárt elsősorban magamnak készítettem, de ha már itt van, miért is ne használhatná más is.

KÜRT Zrt. Logelemzés heti riport Felhasználói fiók, illetve felhasználói csoportkezelési műveletek

Mobil eszközökön tárolt adatok biztonsága

Operációs Rendszerek I. Jogosultságkezelés

Adatbázis rendszerek. dr. Siki Zoltán

Kérdés Kép Válasz HIBAS Válasz HELYES Válasz HIBAS Válasz HIBAS Kérdés Kép Válasz HIBAS Válasz HELYES Válasz HIBAS Válasz HIBAS Kérdés Kép Válasz

Adatbázis Rendszerek II. 2. Gyakorló környezet

OE-NIK 2010/11 ősz OE-NIK ősz

Átírás:

Adatbázis rendszerek II. IX. előadás Adatbázisok védelmi eszközei Előadó: Barabás Péter Dátum: 2008. 11.27.

Védelem általában jogosulatlan hozzáférések információ védelme nem csak DBMS rendszerekben van OS védelmi rendszere login korlátozott hozzáférés hozzáférési listák (ACL) privilégium rendszerek Oracle esetén azonosítás szükséges korlátozott hozzáférés Adatbázisok védelmi eszközei 2

RDBMS védelem biztonság = rendeltetésszerű, elvárt működés adatok hozzáférés védelme (security) adatok megbízhatósága (integrity) rendelkezésre állás, adatvesztés elleni védelem (availability) Adatbázisok védelmi eszközei 3

Védelmi mechanizmusok bejelentkezés ellenőrzés naplózás hozzáférés ellenőrzés titkosítás következtetés ellenőrzés adatáramlás ellenőrzés Adatbázisok védelmi eszközei 4

Védelmi mechanizmusok II. hozzáférés ellenőrzése (access control) adott igénylő és igényelt objektum esetén eldönti, hogy engedélyezhető-e az igényelt hozzáférési mód vagy sem pl. más tábláinak olvasását nem engedi a rendszer bejelentkezési ellenőrzés név + jelszó megadása egyutas hash függvénnyel kódolják a jelszót következtetési lehetőségek kizárásának mechanizmusa (inference control) jogosult adatok alapján ne lehessen nem jogosult adatokra következtetni aggregációs lekérdezések kiadhatók, teljes tábla olvasása nem hibaüzenetek: az objektum nem létezik v. nincs jogosultság megoldások: megadott egyedszám alatt nem lehet aggregációs lekérdezést hívni hibaüzenetek kétértelművé tétele Adatbázisok védelmi eszközei 5

Védelmi mechanizmusok III. titkosítás módszere (cryptography) olvasott adatok megértésének megakadályozása sok titkosítási változat: DES, FRS, RSA, stb. adatáramlás ellenőrzés (data flow control) feladata a felhasználóhoz kerülő és onnan továbbjutó adatok áramlásának ellenőrzése nehezen ellenőrizhető véletlenül, gondatlanságból ne juttasson a felhasználó bizalmas információkat jogosulatlan felhasználóknak naplózás (audit) utólagos ellenőrzések miatt elrettentő később bizonyító hatása van jelentős helyigény felhasználó szűk köre alkalmazza Adatbázisok védelmi eszközei 6

Védelmi rendszer jogosultsági adatok felhasználók, szubjektumok védelmi módszerek védelmi stratégia védelmi rendszer DB objektumok Adatbázisok védelmi eszközei 7

Védelmi stratégiák DAC (discretionary access control) védelmi adatok kezelése decentraizált minden objektumnak és felhasználónak egyedi azonosító kóddal kell rendelkeznie az objektumhoz való hozzáférést alapvetően az objektum tulajdonosa határozza meg a tulajdonos adományozhat, ill. megvonhat jogokat más személyektől nem szükséges központi nyilvántartás a védelmi adatokról nincs szükség központi ellenőrzésre az objektumok fölött tulajdonos szabja meg a jogokat, az ő felelőssége a védelem megfelelő szinten tartása Adatbázisok védelmi eszközei 8

Védelmi stratégiák II. MAC (mandatory access control) központi menedzser felügyeli a védelmi kódokat minden egyed és objektum védelmi kódját egyetlen központi helyről határozzák meg hozzáférés engedélyezése az objektum és a kérelmező védelmi kódjai alapján történik Előnyök: sokkal jobban ellenőrizhető a hozzáférés és az adatáramlás a védelmi kódok strukturáltabbak Hátrányok: valamivel nagyobb erőforrásigény több, részletesebb információ tárolása Adatbázisok védelmi eszközei 9

DAC modell Jellemzői: minden objektumhoz külön feljegyzésre kerül, hogy mely felhasználók férhetnek hozzá hozzáférések típusai: olvasás (r), írás (w), végrehajtás (x) az objektumok és felhasználók kapcsolatát egy hozzáférési mátrixszal szokás reprezentálni Adatbázisok védelmi eszközei 10

Hozzáférési mátrix szubjektum PETER SCOTT UJ6C7X AUTO S,D - S DOLGOZO - S,I,U S KIADO - S S SZERVIZ S,I,D - S objektum művelet, feltétel SELECT INSERT DELETE Adatbázisok védelmi eszközei 11

Engedélyezhető műveletek objektumtípusonként Oracle-ben TABLE VIEW SEQUENCE ALTER X X DELETE X X INDEX X INSERT X X REFERENCES X SELECT X X X UPDATE X X Adatbázisok védelmi eszközei 12

Jogok adása/vétele Alapesetben: objektumnak van tulajdonosa, a létrehozója teljes hozzáférési jogkörrel rendelkezik más felhasználó semmilyen hozzáférési jogot nem kap Jogok megadása: GRANT jog ON objektum TO felhasználó [WITH GRANT OPTION]; jog: ALTER, DELETE, INDEX, felhasználó: lehet PUBLIC WITH GRANT OPTION: továbbadható a jog Jogok elvétele: REVOKE jog ON objektum FROM felhasználó; Adatbázisok védelmi eszközei 13

Rendszerprivilégiumok művelet csoportra vonatkozik független az érintett objektumtól Pl. DELETE ANY TABLE privilégium a rendszer bármely táblájából törölhet Oracle rendszerprivilégiumok: CREATE SESSION hozzáférés az adatbázishoz CREATE TABLE tábla létrehozás saját sémában CREATE ANY TABLE tábla létrehozás bármely sémában egy új felhasználó semmilyen jogkörrel nem rendelkezik Adatbázisok védelmi eszközei 14

Rendszerprivilégiumok adása/vétele Rendszerprivilégium adományozása: GRANT priliégium TO felhasználó [WITH ADMIN OPTION]; WITH ADMIN OPTION: a jog tovább adható Rendszerprivilégium visszavonása: REVOKE priliégium FROM felhasználó; Adatbázisok védelmi eszközei 15

Jogosultságok letiltása Példa jogosultságok egy vállalatnál: C1(A,B,C,D,E) C2(A,C,D,E) C3(A,B,C,D) Jogosultság tiltása: DENY jog ON objektum TO felhasználó; Tiltás visszavonása: REVOKE jog ON objektum FROM felhasználó; Adatbázisok védelmi eszközei 16

Rendszertáblák adományozott jogok és privilégiumok rendszertáblákban vannak tárolva felhasználó az őt érintő részletétről kaphat információt rendszer view-k lekérdezésével View-k azonosítója: USER_COL_PRIVS: objektum jogok USER_SYS_PRIVS: rendszer privilégiumok Lekérdezés: SELECT * FROM USER_SYS_PRIVS; Adatbázisok védelmi eszközei 17

Szerepkör mechanizmus Szerepkör (role): privilégium, jogkör halmaz felhasználókhoz lehet rendelni Adományozása után a felhasználó a szerepkörben foglalt összes privilégiummal, jogkörrel rendelkezni fog Visszavonásával a privilégiumokat, jogköröket is visszavonjuk a felhasználótól Adatbázisok védelmi eszközei 18

Szerepkörök kezelése Szerepkör létrehozása: Szerepkör törlése CREATE ROLE szerep; DROP ROLE szerep; Jogosultságok, privilégiumok hozzárendelése: GRANT jog ON objektum TO szerep; GRANT privilégium TO szerep; Jogosultságok, privilégiumok kivétele a szerepből: REVOKE jog ON objektum FROM szerep; REVOKE privilégium FROM szerep; Adatbázisok védelmi eszközei 19

Szerepek adományozása Több különböző felhasználóhoz is lehet rendelni a szerepeket: Visszavonása: GRANT szerep TO felhasználó; REVOKE szerep FROM felhasználó; A szerepek egymáshoz is rendelhetők: GRANT szerep1 TO szerep2; Adatbázisok védelmi eszközei 20

Példa P1 P2 R1 R2 P3 U1 P4 P5 U2 minta DAC védelmi séma Privilégiumok (vagy objektum jogkör): P1,P2,P3,P4,P5 Szerepkörök: R1,R2 Felhasználók: U1,U2 Adatbázisok védelmi eszközei 21

Példa utasítások CREATE ROLE R1; CREATE ROLE R2; GRANT P1 TO R1; GRANT P2 TO R1; GRANT P3 TO R1; GRANT R1 TO R2; GRANT P4 TO R2; GRANT R2 TO U1; GRANT R1 TO U2; GRANT P5 TO U2; Adatbázisok védelmi eszközei 22

Opcionális szerepek felhasználó nem kapja meg közvetlenül bejelentkezés után explicite kérnie kell egyedi jelszót lehet hozzá kapcsolni Létrehozása három lépésben megy végbe: 1. CREATE ROLE szerep [IDENTIFIED BY jelszó]; 2. GRANT szerep TO felhasználó; így default, bejelentkezés után azonnal él 3. ALTER USER felhasználó DEFAULT ROLE kifejezés; minden szerep, ami nem default, az opcionális kifejezés: ALL, NONE, ALL EXCEPT szereplista Adatbázisok védelmi eszközei 23

Opcionális szerepek II. szerepek felvételét a felhasználónak kérnie kell: SET ROLE szerep [IDENTIFIED BY jelszó]; a felvett szerepek leadása: SET ROLE NONE; egyébként a session végéig él Adatbázisok védelmi eszközei 24

MAC modell szigorúbb védelmi előírások DAC nem megfelelő információk tetszőlegesen áramolhatnak jogosulatlan hozzáférések is történhetnek MAC: egységesen történik a hozzáférések szabályozása minden felhasználó kap egy titkossági kódot területjelző titkossági szint Adatbázisok védelmi eszközei 25

Titkossági kód L=(S,A) S: titkosság szintje Unclassified Classified Secret TopSecret A: terület jelzője szigorúsági reláció a titkossági szintek között: U < C < S < TS Adatbázisok védelmi eszközei 26

Titkossági kód II. Területek között tartalmazási relációk területkódok megadása elemi területek listájával ( {bérügy, pénzügy} ) Titkossági szint jelentése: objektum esetén: mennyire tekinthető titkosnak az adott adat felhasználó esetén: a felhasználó milyen titkossági szintű adathoz férhet hozzá Adatbázisok védelmi eszközei 27

Dominancia jogosultság eldöntésénél az objektum és a felhasználó védelmi kódjainak viszonya a meghatározó olvashatunk egy objektumot: S(user) S(obj) A(user) A(obj) L 1 kódot dominálja L 2 kód, ha L 1 L 2 S 1 S 2 és A 1 A 2 a kódok halmaza csak részben rendezett a dominancia relációra nézve Adatbázisok védelmi eszközei 28

Műveletek Műveletcsoportok: olvasás (R): csak olvasás, módosítás nélkül írás (W): amikor olvassuk és módosítjuk az adatelemet bővítés (A): amikor csak új adatelemet írhatunk Adatbázisok védelmi eszközei 29

Trusted és untrusted felhasználók Trusted (megbízható) felhasználó: az információkat nem szolgáltatja ki jogosulatlan személyek felé Untrusted(nem megbízható) felhasználó: mindent meg kell tennünk, hogy ne tudjon információt kiszolgáltatni jogosulatlan személyeknek Adatbázisok védelmi eszközei 30

Szabályok (untrusted user) csak olyan erőforrást olvashat, melynek dominálja a kódját nem titkosabb, az ő területébe eső adatot olvashat csak olyan erőforrást írhat, melynek kódja megegyezik az ő kódjával az adat titkossági szintje és területkódja megegyezik a felhasználó kódjaival csak olyan erőforrást bővíthet, melynek kódja dominálja az ő kódját csak olyan adatokat fűzhet be, melyek legalább olyan titkossági szinten vannak, mint a felhasználó a felhasználótól alacsonyabb szintű objektumok egyáltalán nem módosíthatók Adatbázisok védelmi eszközei 31

Szabályok (trusted user) csak olyan erőforrást írhat és olvashat, melynek dominálja a védelmi kódját olyan erőforrást bővíthet, melynek kódja dominálja az ő kódját megbízhatóság = nem fogja alacsonyabb szintre levinni az adatokat Adatbázisok védelmi eszközei 32

Minta védelmi séma S4(U) L(C;{DB}) S3 L(TS;{OS}) S1(T) L(S;{DB,OS}) A R S2 L(TS;{DB,OS,NW}) RW RW W O1 L(S;{DB}) O5 L(U;{DB}) O2 L(TS;{OS}) O3 L(U;{NW,DB}) O4 L(C;{DB}) Adatbázisok védelmi eszközei 33

Trusted Oracle rendszer nagyobb védelmi igénnyel rendelkező információs rendszereknél tipikus alkalmazási területek: kormányzati és katonai információs rendszerek SeaView modellen alapszik alapja a MAC vannak DAC elemei is Adatbázisok védelmi eszközei 34

SeaView modell újítás a MAC-hoz képest: megbízhatósági kód: az adat mennyire végleges, biztos formátuma hasonló a védelmi kódhoz I=(C,A) C: a megbízhatóság, fontosság szintje C teljesen megbízható, VI igen megbízható I kevésbé megbízható U nem megbízható A: területjelző ({T 1,T 2, } Megbízhatósági reláció: C>VI>I>U Adatbázisok védelmi eszközei 35

Megbízhatósági dominancia megbízhatósági szint: mennyire bízunk meg a felhasználóban mennyire lehet számára a még bizonytalan információt kiadni Dominancia: I 1 I 2 C 1 C 2 és A 1 A 2 Adatbázisok védelmi eszközei 36

Hozzáférési osztály védelmi és megbízhatósági kódok együttese C={L,I} a felhasználó csak a kevésbé titkos és jobban megbízható adatot olvashatja Dominancia: C 1 C 2 L 1 L 2 és I 1 I 2 L 2 dominálja L 1 -et és I 1 dominálja I 2 -t a felhasználó a kevésbé titkos, de nagyobb mértékben megbízható adatokhoz férhet hozzá Adatbázisok védelmi eszközei 37

Olvasási, írási hozzáférési osztályok eltérés a MAC-tól olvasási és hozzáfűzési tartomány átfedi egymást minden felhasználó kap L min, L max, I min, I max kódot olvasási, írási hozzáférési osztályok C R = {L max,i min }: olvasási osztály C W = {L min,i max }: írási osztály az olvasási osztály dominálja az írásit Adatbázisok védelmi eszközei 38

SeaView modell működési axiómái Egy s felhasználó csak azon erőforrást olvashatja, melynek hozzáférési osztályát a felhasználó olvasási osztálya dominálja C R (s) C(o) legfeljebb olyan titkos adatokat olvashat, mint az ő szintje legalább olyan megbízható adatokat olvashat, mint az ő szintje Egy felhasználó csak azon 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) legalább olyan titkosak, mint az ő szintje nem megbízhatóbbak a z ő megbízhatósági szintjénél Módosítás csak a felhasználóval azonos szintű objektumok esetén lehetséges C W C R Adatbázisok védelmi eszközei 39

Példa S1 CR={(S;DB,OS),(I;DB)} CW={(C;DB),(VI;DB,OS)} RW O1 C={(S;DB),(VI;DB)} R W O2 C={(TS;DB),(C;DB)} O3 C={(U;DB),(I;DB)} O5 C={(TS;DB),(I;DB)} Adatbázisok védelmi eszközei 40

Példa II. S1 olvashatja és írhatja is O1 objektumot C R (S1) C(O1); C W (S1) C(O1); S1 az O3-at csak olvashatja C R (S1) C(O3); C W (S1) C(O3); O5 objektumot S1 csak írni tudja C R (S1) C(O5); C W (S1) C(O5); O2 objektum se nem olvasható, se nem írható Adatbázisok védelmi eszközei 41

Példa III. TS O5 O2 S O1 C U O3 U I VI C Adatbázisok védelmi eszközei 42

Köszönöm a figyelmet! Adatbázisok védelmi eszközei 43