15
15. tétel Adatbázis felhasználói és jogosultságaik SEGÉDLET VÉGÉN!!!!

15. tétel Adatbázis felhasználói és jogosultságaik

Embed Size (px)

DESCRIPTION

15. tétel Adatbázis felhasználói és jogosultságaik. SEGÉDLET VÉGÉN!!!!. - PowerPoint PPT Presentation

Citation preview

Page 1: 15. tétel Adatbázis felhasználói és jogosultságaik

15. tétel

Adatbázis felhasználói és jogosultságaik

SEGÉDLET VÉGÉN!!!!

Page 2: 15. tétel Adatbázis felhasználói és jogosultságaik

ADATBÁZIS ALAPFOGALMAK

Adat: A adat értelmezhető (észlelhető, érzékelhető, felfogható és megérthető) személytelen,objektív, feldolgozótól független ismeret. Az adat az információ hordozója, vagyis tények, fogalmak feldolgozására alkalmas reprezentációja.

Információ: az adatnak valamilyen megjelenése, új ismeretté értelmezett adat. Az információ mindig személyes.

Adatbázis: felesleges redundancia nélkül közösen tárolt, egymással kapcsolatban lévő adatok halmaza.

Adatbázis-kezelő rendszer: biztosítja az adatbázisban tárolt adatoklétrehozását, kezelését, valamint leírja és kezeli az adatok közötti komplex kapcsolatokat.Az adatbáziskezelő rendszernek támogatnia kell valamilyen adatmodellt.

Adatmodell: az adathalmaz elemei között fennálló kapcsolatok struktúrális leírása. Az adatmodellezéssel az a cél, hogy egy információs rendszer adatait és az adatok között fennálló kapcsolatokat következetesen ábrázolva, elősegítsük a számítógépes információfeldolgozást.

Page 3: 15. tétel Adatbázis felhasználói és jogosultságaik

ALAPFOGALMAK

Adatbázis-kezelő rendszer:egy szoftver, amely biztosítja az adatbázisban tárolt adatok létrehozását, kezelését, valamint leírja és kezeli az adatok közötti komplex kapcsolatokat. Az adatbázis-kezelő rendszernek támogatnia kell valamilyen adatmodellt, hogy a valóságot le tudja képezni egy számunkra megfogható objektumra.Mit kell biztosítania:· Egy megfelelő módon leírt adatfeldolgozás végrehajtását. (adatbázis létrehozása,módosítása, törlés)· Adatbázis következetességét (csak valós adatokat tároljunk)· Az adatok közti komplex kapcsolatok kezelését és ábrázolását.· Az adatbázis valamennyi adatának elérését· Az adatok védelmét, titkosítását· A hozzáférési jogok kezelését· Adatfüggetlenséget· A redundancia –menteséget és annak ellenőrzését· Az adatbázis integritásának karbantartását· Helyreállíthatóságot· Többfelhasználós rendszerekben az egyidejű hozzáférést· Osztott adatbázisokban az adatok szétosztását, megtalálását· Adatforgalom optimalizálását

Page 4: 15. tétel Adatbázis felhasználói és jogosultságaik

SQL utasítás csoportok

CREATE - táblák létrehozásaALTER – táblák módosításaDROP – táblák törlése

DDL –Data Definition Language DML – Data Manipulation Language

INSERT INTO - adatbevitelUPDATE – adatok módosításaDELETE – sorok(adatok) törlése

DQL –Data Query Language

SELECT - lekérdezések

DCL –Data Controll Language

CONNECT TO - csatlakozás, DISCONNECT - kilépésGRANT jogok TO PUBLIC – hozzáférési jogok adásREVOKE jogok FROM PUBLIC– jogok visszavonásaLOCK – tábla zárolás UNLOCK – zár feloldásaCOMMIT – módosítások érvényesítéseROLLBACK – módosítások visszavonása

Page 5: 15. tétel Adatbázis felhasználói és jogosultságaik

A felhasználók minden tevékenységét a jogosultsági rendszer ellenőrzi.

- a jogosultsági rendszer lehet hierarchikus vagy egyszintű- hierarchikus jogosultsági rendszer esetén csoportok és alcsoportok

képezhetők, egyszintű jogosultsági rendszer esetén szerepkörök (Role) alakíthatók ki

- A csoportoknak és a szerepeknek részletesen szabályozhatók a jogaik. a hozzáférés engedélyezése6tiltása az adatbázis objektumaihoz

- legalapvetőbb jogosultságok. olvasás, futtatáa, módosítás, törlés, szerkezet megváltoztatása

- egy felhasználó több csoportba, szerepbe is besorolható- a jogosultsági rendszernek világosan le kell írnia, hogy egymásnak

ellentmondó jogok közül, melyik jut érvényre

A feladatot megoldó SQL parancsok: SEGÉDLET!!!!!

Page 6: 15. tétel Adatbázis felhasználói és jogosultságaik

Felhasználói jogosultságok

A DCL nyelv a jogok, jogosultságok parancsaira korlátozódik. Az adatbázis-kezelés egyik alapvető feltétele az, hogy az adatbázist több felhasználó is használhatja akár egy időben is, és adataikat letárolhatják. Az adatbázis így több különböző felhasználó adatait tárolja együttesen, ebből kifolyólag az adatbázis-kezelő rendszernek gondoskodnia kell arról, hogy mindenki csak azokat a műveleteket végezhesse el, amelyekre jogosult, vagyis csak a jogosult adatokhoz férhessen hozzá.

Page 7: 15. tétel Adatbázis felhasználói és jogosultságaik

Hozzáférési jogosultságokAz adatbázishoz való hozzáférés szabályozása:Az SQL rendszerekben minden felhasználónak van egy azonosítója, és

egy jelszava. Így minden felhasználóhoz könnyen rendelhető egy

jogosultsági kör. A felhasználó egy

 CONNECT TO adatbázisnév USER felhasználónév; utasítással tud az adott adatbázishoz kapcsolódni.

Ahhoz, hogy egy adatbázist aktiváljunk, egy újabb parancsra van szükség:

   SET CONNECTION DEFAULT adatbázisnév;A létrehozott kapcsolatot, pedig a következő utasítással szüntethetjük

meg:

   DISCONNECT adatbázisnév (ALL/CURRENT);

Page 8: 15. tétel Adatbázis felhasználói és jogosultságaik

Felhasználói jogosultságokAz SQL rendszerekben minden objektumnak, vagyis adatbázis elemnek

van egy tulajdonosa, ez pedig, az a felhasználó, aki létrehozta. A jogosultságok megadása a GRANT utasítással történik, melyben meg kell adni, hogy mely táblára, mely műveletre, és kinek engedélyezzük. Az egyes felhasználóknak kétféle jogot adhatunk:

- adatbázisra vonatkozót

GRANT adatbázisjog TO PUBLIC felhasználói nevek listája; - adatbázis elemre vonatkozót

GRANT műveleti jog ON adatbáziselem neveTO PUBLIC felhasználói nevek listája WITH GRANT OPTION;

A parancssorokban szereplő PUBLIC kulcsszó használata következtében valamennyi felhasználó kap jogot, egyéb esetben csak az utasításban felsorolt felhasználók, vagy felhasználói csoportok. A WITH GRANT OPTION záradék lehetővé teszi, hogy a felhasználó, a kapott jogait más felhasználóknak továbbadhassa. Tehát ezek után bárki megszerezheti a jogokat.

Page 9: 15. tétel Adatbázis felhasználói és jogosultságaik

Adatbázisra vonatkozó jogok:

CONNECT: kapcsolódás az adatbázishoz és a négy adatkezelési művelet (adatbevitel, módosítás, törlés, lekérdezés) használatának engedélyezése

RESOURCE: adatbáziselemek létrehozásának, és megszűntetésének joga, továbbá az adatbázis kezelési joga

DBA: az adatbázissal kapcsolatos bármilyen művelet elvégzésére vonatkozó jog, beleértve ebbe az adatbázis megszűntetését is.

Page 10: 15. tétel Adatbázis felhasználói és jogosultságaik

Adatbáziselemekre vonatkozó jogok :

• ALL: az összes az alábbiakban felsorolt jog • ALTER: táblák illetve nézettáblák megváltoztatási joga • DELETE: sorok törlésére vonatkozó jog • INDEX: táblázat indexelésének, illetve az index megszűntetésnek joga • INSERT: új sorok bevitelére vonatkozó jog • SELECT oszlopnév-lista: a felsorolt oszlopok, vagy azok hiányában a

tábla valamennyi oszlopára vonatkozó lekérdezési jog • UPDATE oszlopnév-lista: a felsorolt oszlopok, vagy azok hiányában a

tábla valamennyi oszlopára vonatkozó módosítási jog • REFERENCES oszlopnév-lista: a felsorolt oszlopokra, vagy azok

hiányában a tábla valamennyi oszlopára vonatkozó hivatkozási jog

Az adatbázisra, vagy annak elemeire vonatkozó jogoknak mindig összhangban kell lenniük, de mindig az adatbáziselemre vonatkozó jogok az erősebbek.

Page 11: 15. tétel Adatbázis felhasználói és jogosultságaik

Adatbázis jogok visszavonása:

REVOKE adatbázisjog   FROM PUBLIC felhasználói nevek listája

Műveletijogvisszavonása:

REVOKE műveleti jog ON adatbáziselem neve   FROM PUBLIC felhasználó nevek listája;

Page 12: 15. tétel Adatbázis felhasználói és jogosultságaik

HOZZÁFÉRÉSI ZÁRAK KEZELÉSE

Az adatbázis-kezelő rendszerek egyik kiváltsága, hogy adatbázis területeket, adatlapokat, vagy sorokat automatikusan tudnak zárolni. Szükség esetén a felhasználó is kezdeményezheti a zárolást. Az SQL nyelv csak teljes táblázat zárolását engedélyezi, táblázatsorokét nem. Egy táblázat zárolásának kezdeményezésére szolgáló utasítás a LOCK TABLE, mely a következő:

   LOCK TABLE táblanév IN (SHARE/EXCLUSIVE) MODE;

Az utasításban szereplő SHARE kulcsszó használatával egyszerre több felhasználó tud az adott táblából lekérdezni, de módosítani nincs lehetőségük. Az EXCLUSIVE kulcsszó használatával a táblázatot, a zárolást kezdeményező felhasználó kizárólagosan használhatja, és felújítási műveleteket is hajthat végre rajta.

A gyakorlatban az egyes zárolások visszavonására szükség lehet néha, melyre az UNLOCK TABLE utasítás szolgál.

   UNLOCK TABLE táblanév;

Page 13: 15. tétel Adatbázis felhasználói és jogosultságaik

TRANZAKCIÓK KEZELÉSE

A vezérlő utasításokhoz szokás sorolni a művelet végrehajtást szabályozó, más néven az úgynevezett tranzakció kezelő utasításokat. Az SQL szabványban két, a tranzakció végét jelző utasítást szokás definiálni. Az egyik utasítás a tranzakció sikeres befejezését jelenti, míg a másik a korábban végrehajtott tevékenységek visszavonását, azaz a megsemmisítését végzi.

Az első, vagyis a tranzakció sikeres befejezésére a COMMIT utasítás szolgál. Ennek hatására véglegesítődnek a korábban végrehajtott tevékenységek. Ezzel szemben a másik utasítás, a ROLLBACK hatására a korábbi tevékenységek érvénytelenítődnek. Segítségével például egy hibával félbeszakadt műveletsort lehet töröltetni.

Page 14: 15. tétel Adatbázis felhasználói és jogosultságaik

Felhasználók kezelése, felhasználói jogosultságok szabályozása

Rendszergazda (DBA: Database Administrator): felügyeli az egész rendszer működését, munkáját speciális programok (és SQL scriptek) segítik.

Feladatai: Felhasználók felvétele, jogosultságaik kiosztása, gazdálkodás az erőforrásokkal, rendszerhibák kiküszöbölése, mentések, visszatöltések, a rendszer működésének figyelése, hangolása, stb. A rendszer installálása után a DBA ezen teendők elvégzéséhez szükséges jogokat megkapja.

DBA veszi fel az új felhasználókat a rendszerbe:

CREATE USER felhasználó_név

IDENTIFIED BY jelszó

[tárolási tartomány, erőforrás korlátozások, profilok];

Módosítás, törlés az ALTER USER …; DROP USER …; parancsokkal végezhető el.

A felhasználó is használhatja ezt az utasítást de csak a saját jelszavának módosítására:

ALTER USER felhasználó_név

IDENTIFIED BY jelszó;

DBA írja elő, hogy a felhasználó mit csinálhat a rendszerben, azaz milyen jogai vannak. ORACLE-ben minden felhasználóhoz kapcsolódik automatikusan egy séma (SCHEMA), amely

a felhasználó által definiált (CREATE …) adatbázis objektumokat foglalja magába. A séma

neve azonos a felhasználói névvel.

Page 15: 15. tétel Adatbázis felhasználói és jogosultságaik

Felhasználók kezelése, felhasználói jogosultságok szabályozása

Rendszergazda (DBA: Database Administrator): felügyeli az egész rendszer működését, munkáját speciális programok (és SQL scriptek) segítik.

Feladatai: Felhasználók felvétele, jogosultságaik kiosztása, gazdálkodás az erőforrásokkal, rendszerhibák kiküszöbölése, mentések, visszatöltések, a rendszer működésének figyelése, hangolása, stb. A rendszer installálása után a DBA ezen teendők elvégzéséhez szükséges jogokat megkapja.

DBA veszi fel az új felhasználókat a rendszerbe:

CREATE USER felhasználó_név

IDENTIFIED BY jelszó

[tárolási tartomány, erőforrás korlátozások, profilok];

Módosítás, törlés az ALTER USER …; DROP USER …; parancsokkal végezhető el.

A felhasználó is használhatja ezt az utasítást de csak a saját jelszavának módosítására:

ALTER USER felhasználó_név

IDENTIFIED BY jelszó;

DBA írja elő, hogy a felhasználó mit csinálhat a rendszerben, azaz milyen jogai vannak. ORACLE-ben minden felhasználóhoz kapcsolódik automatikusan egy séma (SCHEMA), amely

a felhasználó által definiált (CREATE …) adatbázis objektumokat foglalja magába. A séma

neve azonos a felhasználói névvel.