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

Hasonló dokumentumok
ADATBÁZISOK: TAN7.EA témaköre SQL DDL, DML, DCL, Tranz.kez.

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

Az SQL adatbázisnyelv: DML

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

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

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

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

SQL DDL-2 (aktív elemek) triggerek

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

Bevezetés: az SQL-be

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

SQL DDL: Táblák, megszorítások (constraints), triggerek, nézettáblák

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

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

Adatbázis rendszerek SQL nyomkövetés

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

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

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

WHERE záradék (további lehetıségek) SQL specialitások, nem írhatók át relációs algebrába: LIKE. NULL értékek. Az ismeretlen (unknown) igazságérték

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

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

Nézetek és indexek. 8. fejezet Nézettáblák

Adatbázisok biztonsága

Tranzakciók, nézettáblák, indexek. Párhuzamos folyamatok irányítása Virtuális és materializált nézettáblák Az adathozzáférés felgyorsítása

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

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

Relációsémák létrehozása SQL nyelvben

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

Megszorítások. AB1_06A_Megszorítások - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján

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

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

Java és web programozás

Adatbázis tartalmának módosítása. SQL DML utasítások

SQL bevezetés. Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések

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

Adatbázis tartalmának módosítása (DML), az adatbázis-kezelı rendszerek felépítése,

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

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

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

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

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


LBRA6i integrált rendszer

A könyv tartalomjegyzéke

Adatbázis I. 11. előadás. Kulcsok az SQL ben. Hivatkozásépségi megszorítások és idegen kulcsok.

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:

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

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

Java és web programozás

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

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:

7. fejezet Kulcsok és idegen kulcsok

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

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

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

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

A relációs algebra egy speciális algebra, amely néhány egyszerű, de hathatós. operandusok. Egy reláció megadható a nevével vagy közvetlenül, sorainak

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

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


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

Adatbázisok webalkalmazásokban

Adatbázisok tavaszi félév Vizsgatételsor

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

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

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

Vizuális programozás gyakorlat

Webfejlesztés 4. alkalom

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

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

Access XP alapokon Tartalomjegyzék

Adatbázis használat I. 5. gyakorlat

ADATBÁZISOK, 2018 ősz

Lekérdezések az SQL-ben 1.rész

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.

ADATBÁZISOK, 2017 ősz

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben

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

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

Lekérdezések az SQL-ben 2.rész

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

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

Tervezés: Egyed-kapcsolat modell és az SQL DDL: táblák, nézetek

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

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

Választó lekérdezés létrehozása

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

Extrémen brutál, gyors talpaló PHP nyelvhez (database). v2.1

Adatbázismodellek. 1. ábra Hierarchikus modell

MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1

RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás

E/K diagram átalakítása relációs adatbázistervre

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.

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

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

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

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

Lekérdezések az SQL-ben 1.rész

SQL gyakorló feladatok. 6. Adatbázis gyakorlat április 5.

Átírás:

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

Jogosultság-kezelés Egy fájlrendszer általában jogosultságokat rendel az általa kezelt objektumokhoz. Tipikusan olvasható, írható, végrehajtási jogosultságokról van szó. Ugyanakkor bizonyos résztvevőkhöz sorolja ezeket a jogosultságokat. Például rendszergazda, egy korlátozott jogosultságokkal rendelkező felhasználó stb. 2

Jogosultságok (1) Az SQL-ben több fajta jogosultság és adatobjektum (pl. relációs táblák) létezik, mint egy tipikus fájlrendszerben. Összességében 9 jogosultság, ezek némelyike egy reláció egyetlen attribútumára is megadható. 3

Jogosultságok (2) Néhány relációra vonatkozó jogosultság: 1. SELECT = a reláció lekérdezésének joga. Lehet, hogy egyetlen attribútumra vonatkozik. 2. INSERT = sorok beszúrásának joga. Lehet, hogy egyetlen attribútumra vonatkozik. 3. DELETE = sorok törlésének joga. 4. UPDATE = sorok módosításának a joga. Szintén lehet, hogy egy attribútumra vonatkozik. 4

Példa: jogosultságok Az alábbi utasítás esetében: INSERT INTO sörök(név) SELECT sör FROM felszolgál WHERE NOT EXISTS (SELECT * FROM sörök WHERE név = sör); Az utasítás végrehajtásához szükséges: SELECT jogosultság a felszolgál és sörök táblába és INSERT jog a sörök tábla név attribútumára vonatkozóan. azok a sörök, amelyek még nincsenek benne a sörök táblában. A beszúrás után a gyártó értéke NULL. 5

Adatbázis objektumok Jogosultságokat nézetekre és materializált nézetekre vonatkozóan is megadhatunk. Egy másik fajta jogosultság lehet pl. adatbázis objektumok létrehozásának a joga: pl. táblák, nézetek, triggerek. A nézettáblák segítségével tovább finomíthatjuk az adatokhoz való hozzáférést. 6

Példa: nézettáblák és jogosultságok Tegyük fel, hogy nem szeretnénk SELECT jogosultságot adni az Dolgozók(név, cím, fizetés) táblában. Viszont a BiztDolg nézettáblán már igen: CREATE VIEW BiztDolg AS SELECT név, cím FROM Dolgozók; A BiztDolg nézettáblára vonatkozó kérdésekhez nem kell SELECT jog a Dolgozók táblán, csak a BiztDolg nézettáblán. 7

Jogosultsági azonosítók A felhasználókat egy jogosultsági azonosító (authorization ID) alapján azonosítjuk, általában ez a bejelentkezési név. Külön jogosultsági azonosító a PUBLIC. A PUBLIC jogosultság minden felhasználó számára biztosítja az adott jogot. 8

Jogosultságok megadása A magunk készítette objektumok esetében az összes jogosultsággal rendelkezünk. Másoknak is megadhatunk jogosultságokat, például a PUBLIC jogosultsági azonosítót is használhatjuk. A WITH GRANT OPTION utasításrész lehetővé teszi, hogy aki megkapta a jogosultságot, tovább is adhassa azt. 9

A GRANT utasítás Jogosultságok megadásának szintaktikája: GRANT <jogosultságok listája> ON <reláció vagy másféle objektum> TO <jogosultsági azonosítók listája>; Ehhez hozzáadható: WITH GRANT OPTION 10

Példa: GRANT GRANT SELECT, UPDATE(ár) ON Felszolgál TO sally; Ez után Sally kérdéseket adhat meg a Felszolgál táblára vonatkozóan és módosíthatja az ár attribútumot. 11

Példa: Grant Option GRANT UPDATE ON Felszolgál TO sally WITH GRANT OPTION; Ez után Sally módosíthatja a Felszolgál táblát és tovább is adhatja ezt a jogosultságot. Az UPDATE jogosultságot korlátozottan is továbbadhatja: UPDATE(ár)ON Felszolgál. 12

Jogosultságok visszavonása REVOKE <jogosultságok listája> ON <reláció vagy más objektum> FROM <jogosultsági azonosítók listája>; Az általunk kiadott jogosultságok ez által visszavonódnak. De ha máshonnan is megkapták ugyanazt a jogosultságot, akkor az még megmarad. 13

REVOKE opciói A REVOKE utasításhoz a két opció közül valamelyiket még hozzá kell adnunk: 1. CASCADE. Azok a jogosultságok, melyeket az adott ki a visszavonandó jogosultságon keresztül, akitől éppen visszavonjuk az adott jogosultságot, szintén visszavonódnak. 2. RESTRICT. A visszavonás nem hajtódik végre, amíg a visszavonandó jogosultságtól függő jogosultságok is vannak. Először ezeket kell megszüntetni. 14

Grant diagramok Pontok = felhasználó/jogosultság/grant option?/tulajdonose? UPDATE ON R, UPDATE(a) ON R, és UPDATE(b) ON R három különböző pontot adnak. SELECT ON R és SELECT ON R WITH GRANT OPTION szintén. Az X ->Y él jelentése: az X pontot használtuk az Y pont jogosultságának megadására. 15

Hogy néznek ki a pontok? Az AP pont az A felhasználói azonosítójú felhasználó P jogát jelenti. P * = P jogosultság grant option opcióval. P ** = a P jog tulajdonosi viszonyból származik. A ** jelölésből a grant option opció is következik. 16

Élek kezelése (1) Amikor A megadja a P jogot B-nek, AP * vagy AP **-ből húzunk egy élt BP -be. Vagy BP * ha grant option is szerepel. Ha A a P jogosultságnak egy részét adja meg, legyen ez Q [például UPDATE(a) on R, ahol P : UPDATE ON R], akkor az él BQ vagy BQ * pontba lesz. 17

Élek kezelése (2) Alapvető szabály: a C felhasználó rendelkezik a Q jogosultsággal egészen addig, amíg létezik út az XP ** pontból CQ, CQ * vagy CQ **-ba és P egy Q-t magában foglaló jogosultság. Itt P lehet Q és X lehet C. 18

Élek kezelése (3) Ha A visszavonja a P jogot B-től a CASCADE opcióval, ki kell törölni az AP - BP élt. De, ha A RESTRICT opciót használ és a BP pontból indul ki él, akkor vissza kell utasítani a kérést a gráfot változatlanul hagyva. 19

Élek kezelése (4) A gráf frissítésekor, minden pontra meg kell nézni, hogy elérhető-e egy ** pontból. Ha nincs ilyen út, az adott pont egy visszavont jogosultságot reprezentál, és ki kell törölni. 20

Példa: Grant diagram B: GRANT P TO C WITH GRANT OPTION AP** BP* CP* A tulajdonosa annak az objektumnak, amire P vonatkozik A: GRANT P TO B WITH GRANT OPTION CP A: GRANT P TO C 21

Példa: Grant Diagram A a REVOKE P FROM B CASCADE; utasítást hajtja végre AP** BP* CP* C hiába adta vissza P-t B-nek, mind a két pont törlődik. Nem csak B, de C is elveszíti P*-t. Töröljük a BP* és CP* pontokat. CP Ugyanakkor, C P joga megmarad a grant option opció nélkül. 22