adatbázisok használata 1. (11. gyakorlat)

21
Adatbázisok használata 1. (11. gyakorlat) 2012. tavaszi félév Vitéz Gergely

Upload: laban

Post on 09-Feb-2016

41 views

Category:

Documents


2 download

DESCRIPTION

Adatbázisok használata 1. (11. gyakorlat). 2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele a minimum elégséges érdemjegynek!. Privilégiumok. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Adatbázisok használata 1. (11. gyakorlat)

Adatbázisok használata 1.(11. gyakorlat) 2012. tavaszi félév

Vitéz Gergely

Page 2: Adatbázisok használata 1. (11. gyakorlat)

A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele a minimum elégséges érdemjegynek!

Page 3: Adatbázisok használata 1. (11. gyakorlat)

Privilégiumok Különböző felhasználói jogok léteznek egy

korszerű adatbázis-kezelő rendszerben DCL (Data Control Language), mely része a

szabvány SQL nyelvnek Célja: Adatbázisok védelme és a

beavatkozások korlátozása

Page 4: Adatbázisok használata 1. (11. gyakorlat)

Jogosultságok csoportosítása Rendszerszintű védelmet biztosító

◦ Ezek az egyes rendszerkomponensek elérését korlátozzák

Adatbázis védelmét biztosító◦ AB-hez való hozzáférést korlátozzák

Objektumkezelési jogosultságok◦ Objektumok tartalmához való hozzáférés

Továbbadási jogosultságok

Page 5: Adatbázisok használata 1. (11. gyakorlat)

Jogosultságok csoportosítása SQL utasítások elvégzése szerint

◦ Rendszerjogosultságok◦ Objektumkezelési jogosultságok

A legáltalánosabb tulajdonos:◦ DBA (Data Base Administrator) ◦ Tőle kapják a felhasználók a jogokat◦ Oracle rendszerben System/Sys

Page 6: Adatbázisok használata 1. (11. gyakorlat)

Rendszerjogosultságok A CREATE/ALTER/DROP utasításokat érinti Pl:

◦ CREATE SESSION◦ CREATE TABLE◦ ALTER ANY TABLE◦ DROP ANY TABLE◦ CREATE USER◦ DROP USER

◦ Select az összes táblából:◦ SELECT ANY TABLE

Page 7: Adatbázisok használata 1. (11. gyakorlat)

Az ANY-t tartalmazó jogosultságok az összes objektumra vonatkoznak

Az ANY nélküliek a saját tulajdonú objektumokra vonatkoznak.

Nincs mindegyikhez pár

SELECT NAME FROM SYSTEM_PRIVILEGE_MAP;

Rendszerjogosultságok

Page 8: Adatbázisok használata 1. (11. gyakorlat)

Jogosultságok adása• GRANT kulcsszóval történi

GRANT [jogosultság/szerepkör]TO [felhasználó/szerepkör/public][WITH ADMIN OPTION]

• Public!!!• WITH ADMIN OPTION!!!

Page 9: Adatbázisok használata 1. (11. gyakorlat)

Objektumkezelési jogosultságok• Egy objektum tulajdonosa a saját

objektumaihoz minden jogosultsággal rendelkezik, és tovább is adhatja!

• Pl:– SELECT– INSERT– UPDATE–DELETE– ALTER–Megszorítások létrehozása

Page 10: Adatbázisok használata 1. (11. gyakorlat)

Objektumkezelési jogosultság adásaGRANT [objektumkezelési jog/ALL] [oszlopok]

ON [objektum]TO [felhasználó/szerepkör/public]

WITH GRANT OPTION

SELECT NAME FROM TABLE_PRIVILEGE_MAP;

Page 11: Adatbázisok használata 1. (11. gyakorlat)

VisszavonásokREVOKE [objektumkezelési jog/ALL]ON [objektum]FROM [felhasználó/szerepkör/public]Illetve:REVOKE [rendszerjogosultság/szerepkör]FROM [felhasználó/szerepkör/public]

Page 12: Adatbázisok használata 1. (11. gyakorlat)

Táblaterület Az Oracle objektumai itt tárolódnak Ezek fizikai fájlok, melyek szerkezetét az

adatbázis-kezelő rendszer alakítja ki A rendszeradatok a SYSTEM táblaterületen

tárolódnak

Page 13: Adatbázisok használata 1. (11. gyakorlat)

Felhasználó Mi definiál pontosan egy felhasználót?

CREATE USER utasítás Jogosultságainak összessége

Page 14: Adatbázisok használata 1. (11. gyakorlat)

Felhasználó létrehozása/törléseCREATE USER felhasználó IDENTIFIED BY jelszó

DROP USER felhasználó [CASCADE]• Cascade esetén törlődnek a felhasználó

által létrehozott objektumok

Page 15: Adatbázisok használata 1. (11. gyakorlat)

Jogot kell adni a belépéshez CREATE SESSION

Használhatóak a beépített szerepkörök is CONNECT, RESOURCE GRANT CONNECT, RESOURCE TO

felhasznalo;

Felhasználó létrehozása

Page 16: Adatbázisok használata 1. (11. gyakorlat)

Kapcsolódás az adatbázishoz CONNECT felh/jelszó DISCONNECT

Page 17: Adatbázisok használata 1. (11. gyakorlat)

SZEREPKÖR Jogosultságok halmaza Csak jogosultságokkal rendelkezik,

objektumokkal nem! Létrehozása: CREATE ROLE név [IDENTIFIED

BY jelszó] Törlése: DROP ROLE név

Page 18: Adatbázisok használata 1. (11. gyakorlat)

Gyakorlás• Kapcsolódjon az adatbázishoz sys

felhasználóként (jelszó rendszergazda), és változtassa meg a system felhasználó jelszavát Oracle-re

• AS SYSDBA!!!Ha adminisztrátorként szeretnénk csatlakozni, ezt kell a végére írni!!!• CONNECT sys/rendszergazda as SYSDBA• ALTER USER system IDENTIFIED BY Oracle

Page 19: Adatbázisok használata 1. (11. gyakorlat)

Gyakorlás 2 Hozzon létre egy új felhasználót nebulo

néven asdfasdf jelszóval, majd lássa el a szükséges jogosultságokkal, hogy létrehozhasson új táblákat.Ezután hozzon létre egy táblát és próbálja meg lekérdezni scott/tiger-el, majd miután látjuk, hogy nem megy, adjunk scottnak jogosultságot hozzá.

Page 20: Adatbázisok használata 1. (11. gyakorlat)

Megoldás• connect system/Oracle as sysdba• create user nebulo identified by asdfasdf;• GRANT ALL PRIVILEGES TO nebulo;• connect nebulo/asdfasdf;• create table teszt

(nev varchar2(20),szamnumber(5));

• INSERT INTO teszt VALUES('jozsi',20);• select * from teszt;• connect scott/tiger• select * from nebulo.teszt;• connect nebulo/asdfasdf• grant select on teszt to scott;• connect scott/tiger• select * from nebulo.teszt;

Page 21: Adatbázisok használata 1. (11. gyakorlat)

Köszönöm a figyelmet!

Anyag: Példatár 11. fejezetFéléves feladat leadási határidő: 13. hét !!!

http://www.orakulum.com http://jerry.gorextar.hu/ab1

[email protected]