190 likes | 260 Views
Adatbázis adminisztrátori ismeretek. 2012. 04.24. Rózsa Győző raver @ raver.myip.hu. 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.
E N D
Adatbázis adminisztrátori ismeretek 2012. 04.24. Rózsa Győzőraver@raver.myip.hu
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 • 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
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
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
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
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!!!
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
Objektumkezelési jogosultság adása GRANT [objektumkezelési jog/ALL] [oszlopok] ON [objektum] TO [felhasználó/szerepkör/public] WITH GRANT OPTION
Visszavonások REVOKE [objektumkezelési jog/ALL]ON [objektum] FROM [felhasználó/szerepkör/public] Illetve: REVOKE [rendszerjogosultság/szerepkör] FROM [felhasználó/szerepkör/public]
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
Felhasználó • Mi definiál pontosan egy felhasználót? • (Figyelem kisötös/kisplusz szerezhető!!!) • CREATE USER utasítás • Jogosultságainak összessége
Felhasználó létrehozása/törlése CREATE USER felhasználó IDENTIFIED BY jelszó DROP USER felhasználó [CASCADE] • Cascade esetén törlődnek a felhasználó által létrehozott objektumok
Kapcsolódás az adatbázishoz • CONNECT felh/jelszó • DISCONNECT
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
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
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á.
Megoldás • connectsystem/Oracle assysdba • createusernebuloidentifiedbyasdfasdf; • GRANT ALL PRIVILEGES TO nebulo; • connectnebulo/asdfasdf; • createtable teszt(nev varchar2(20),szamnumber(5)); • INSERT INTO teszt VALUES('jozsi',20); • select * from teszt; • connectscott/tiger • select * fromnebulo.teszt; • connectnebulo/asdfasdf • grantselecton teszt toscott; • connectscott/tiger • select * fromnebulo.teszt;