Zarzdzanie uytkownikami Uytkownicy, przywileje, role, audyt

Podobne dokumenty
Użytkownicy, uprawnienia, role, obserwacja bazy danych. (c) Instytut Informatyki Politechniki Poznańskiej 60

Uprawnienia, role, synonimy

SQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek;

Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. UŜytkownicy i schematy (2) UŜytkownicy i schematy (1) baza danych: ZESP99

Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. Użytkownicy i schematy (1) Użytkownicy i schematy (2) baza danych: ZESP99

Tworzenie u ytkownika. ORACLE (Wykład 6) Uwierzytelnianie u ytkowników. Przył czenie u ytkownika do bazy. Nadawanie uprawnie systemowych

Zarządzanie kontami użytkowników w i uprawnieniami

Baza danych inside. Biologiczne Aplikacje Baz Danych

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu

Zarządzanie użytkownikami bazy danych Oracle11g

Domyślna przestrzeń tabel. Domena bezpieczeństwa. zasobowe

PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

CREATE USER

Ćwiczenie 14 autoryzacja

1. Wyzwalacze BD (ang. triggers)

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Używany kiedy pełna treść instrukcji SQL jest nieznana przed uruchomieniem programu.

Ćwiczenie 4. Użytkownicy

Język PL/SQL. Rozdział 6. Procedury wyzwalane

Instrukcja instalacji aplikacji PlanSoft.org

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1

Procedury wyzwalane. Rozdział 13. Procedury wyzwalane. Cele stosowania procedur wyzwalanych. Definiowanie procedury wyzwalanej DML

startup pfile= '$HOME/admin/pfile/initDBx.ora'; create spfile from pfile= '$HOME/admin/pfile/initDBx.ora';

Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja instalacji aplikacji Plansoft.org

(a) T (b) N (c) N (d) T

SQL 4 Structured Query Lenguage

Podnoszenie poziomu bezpieczeństwa instalacji i baz danych Oracle

SQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

Oracle PL/SQL. Paweł Rajba.

Zaawansowane bazy danych i hurtownie danych semestr I

Użytkownicy, uprawnienia, role w SQL Server (W oparciu o SQL Server 2008R2 Books Online)

Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach

Instalacja Oracle Designera ( )

Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski.

mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0

Projektowanie systemów baz danych

Administrowanie serwerami baz danych ZADANIA ADMINISTRATORA BAZ DANYCH

Bazy danych i usługi sieciowe

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

Zarządzanie obiektami bazy danych Oracle11g

Oracle11g: Wprowadzenie do SQL

Bazy Danych i Usługi Sieciowe

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

1 Zadania administratora 1. 2 Zarządzanie Instalacja Migracja Upgrade Konfiguracja... 6

Wyzwalacze TWORZENIE WYZWALACZY

Systemowe aspekty baz

Bazy danych, 4. wiczenia

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Administracja i programowanie pod Microsoft SQL Server 2000

Plan wykładu BAZY DANYCH II WYKŁAD 8. Wyzwalacze. Wyzwalacze

PL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.

Język SQL, zajęcia nr 1

Typy tabel serwera MySQL

Archiwizacja i odtwarzanie bazy danych

Język PL/SQL Procedury i funkcje składowane

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy];

PODSTAWY BAZ DANYCH 13. PL/SQL

Składowane procedury i funkcje

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

Bazy danych - Materiały do laboratoriów VIII

SQL - DDL. 1 Tabele systemowe. 2 Typy danych

Systemowe aspekty baz danych

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Administracja i programowanie pod Microsoft SQL Server 2000

Prawa dostępu do serwera. Nadawanie i odbieranie uprawnień DCL. Użytkownicy a role

Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

E.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.

Założenia do ćwiczeń: SQL Server UWM Express Edition: \SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Wykład 2. SQL 1 Structured Query Lenguage

Ćwiczenie 2. Struktura bazy danych Oracle

Cwiczenie 7. Retrospekcja

Oracle11g: Programowanie w PL/SQL

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

CHEATSHEET Administracja bazami danych Oracle I Start i wyłączanie instancji

Wyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Zadania do wykonania na laboratorium

Wprowadzenie do projektowania i wykorzystania baz danych. Katarzyna Klessa

Server Oracle - System Zarządzania Bazą Danych - składa się z instancji Oracle i bazy danych Oracle Instancja Oracle - pewne procesy drugoplanowe i

Wprowadzenie do projektowania i wykorzystania baz danych Relacje

Wykład :45 BD-1 W_3

Bazy danych wykład szósty Więzy i wyzwalacze. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)

Oracle Label Security

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

Rozproszone i obiektowe systemy baz danych Charakterystyka rozproszonego systemu baz danych

Instalacja, architektura i struktura SZBD Oracle

Transkrypt:

Zarzdzanie uytkownikami Uytkownicy, przywileje, role, audyt Mechanizmy uwierzytelniania o baza danych, system operacyjny, serwer autoryzacji Przywileje o systemowe, obiektowe Role - zbiory przywilejów Limity na zajmowan przestrze dyskow Limity na wykorzystanie zasobów o CPU, I/O, czas bezczynnoci, liczba sesji Zarzdzanie kontem o stopie złoonoci hasła, o czas ycia hasła i konta, o blokowanie konta Obserwacja działa uytkowników Schematy i uytkownicy kada baza danych Oracle zawiera SCHEMATY schemat jest zbiorem obiektów, takich jak: relacje, perspektywy, procedury PL/SQL, pakiety kada baza danych Oracle zawiera UYTKOWNIKÓW w celu przyłczenia si do bazy danych, uytkownik musi dostarczy systemowi Oracle swoj nazw i hasło dostpu schematy tworzone s automatycznie dla kadego z tworzonych uytkowników hasło dostpu moe by zmieniane przez uytkownika podczas instalacji bazy danych tworzonych jest dwóch wyrónionych uytkowników: SYS i SYSTEM Tworzenie nowych uytkowników CREATE USER <nazwa uytkownika> IDENTIFIED BY <hasło dostpu> [DEFAULT TABLESPACE <przestrze tabel>] [TEMPORARY TABLESPACE <przestrze tabel>] [PROFILE <nazwa profilu>] [QUOTA <rozmiar> UNLIMITED ON <przestrze tabel>] [PASSWORD EXPIRE] [ACCOUNT <LOCK UNLOCK>] CREATE USER scott IDENTIFIED BY tiger DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp QUOTA 1M ON data QUOTA 100K ON system PROFILE default;

Modyfikacja i usuwanie uytkownika ALTER USER <nazwa uytkownika> [IDENTIFIED BY <hasło dostpu>] [DEFAULT TABLESPACE <przestrze tabel>] [TEMPORARY TABLESPACE <przestrze tabel>] [PROFILE <nazwa profilu>] [QUOTA <rozmiar> ON <przestrze tabel>] DROP USER <nazwa uytkownika> [CASCADE] ALTER USER scott IDENTIFIED BY lion; DROP USER scott CASCADE; ALL_USERS USER_USERS DBA_USERS DBA_TS_QUOTAS USER_TS_QUOTAS Informacje o uytkownikach SELECT * FROM all_users; SELECT * FROM user_ts_quotas; Rozłczanie sesji uytkownika SVRMGR> SELECT sid, serial#, username FROM v$session; SID SERIAL# USERNAME ---------- -------------- --------------- 1 1 7 2126 SCOTT 8 786 SYSTEM SQL> ALTER SYSTEM KILL SESSION '7, 2126'; Uwierzytelnianie uytkowników uwierzytelnienie przez baz danych Oracle - w celu przyłczenia si do bazy danych wymagane jest wprowadzenie nazwy i hasła uytkownika Oracle uwierzytelnienie przez system operacyjny - uytkownicy przyłczaj si do bazy danych bez wprowadzania swoich nazw i haseł, uwierzytelnienie przez serwer autoryzacji - scentralizowane zarzdzanie uytkownikami w rodowisku rozproszonym

Autoryzacja przez system operacyjny Utworzenie uytkownika autoryzowanego przez OS CREATE USER <nazwa uytkownika> IDENTIFIED EXTERNALLY [DEFAULT TABLESPACE <przestrze tabel>] [TEMPORARY TABLESPACE <przestrze tabel>] [PROFILE <nazwa profilu>] [QUOTA <rozmiar> ON <przestrze tabel>] SQL> show parameter prefix NAME TYPE VALUE ------------------------------------ ----------- ------ os_authent_prefix string ops$ w initsid.ora: os_authent_prefix = abc$ SQL> create user abc$adm1 identified externally; SQL> grant connect to abc$adm1; adm1@miner:~/admin > sqlplus / Uprawnienia uytkowników i role uprawnienia SYSTEMOWE zezwalaj uytkownikowi na wykonywanie w bazie danych operacji okrelonego typu uprawnienia OBIEKTOWE zezwalaj uytkownikowi na wykonanie okrelonych operacji na konkretnym obiekcie bazy danych uprawnienia mog by kontrolowane przy pomocy RÓL, które stanowi nazwane zbiory uprawnie Uprawnienia systemowe - przykłady CREATE TABLE - zezwala uytkownikowi na tworzenie relacji w jego własnym schemacie DROP ANY VIEW - zezwala uytkownikowi na usuwanie dowolnych perspektyw EXECUTE ANY PROCEDURE - zezwala uytkownikowi na wykonywanie dowolnych procedur PL/SQL ALTER SYSTEM - zezwala uytkownikowi na wydawanie polece ALTER SYSTEM

Nadawanie uprawnie systemowych GRANT <uprawnienie rola> [, <uprawnienie rola>...] TO <nazwa uytkownika rola PUBLIC> [WITH ADMIN OPTION] GRANT connect, resource TO jan WITH ADMIN OPTION; Informacje o aktualnych uprawnieniach SVRMGR> SELECT * FROM dba_sys_privs GRANTEE PRIVILEGE ADM ------ -------------------- ---- SYS DELETE ANY TABLE NO SYS INSERT ANY TABLE NO SYS SELECT ANY TABLE YES SYS UNLIMITED TABLESPACE YES SYS UPDATE ANY TABLE NO SYSTEM UNLIMITED TABLESPACE YES Odbieranie uprawnie systemowych REVOKE <uprawnienie rola> [, <uprawnienie rola>...] FROM <nazwa uytkownika rola PUBLIC> REVOKE connect FROM jan; Typy uprawnie obiektowych SELECT - wydawanie polece SELECT FROM dla obiektu (relacja, perspektywa, migawka) UPDATE - wydawanie polece UPDATE dla obiektu (relacja, perspektywa) INSERT - wydawanie polece INSERT dla obiektu (relacja, perspektywa) ALTER - wydawanie polece ALTER dla obiektu (relacja, perspektywa) i CREATE TRIGGER ON dla obiektu (relacja) DELETE - wydawanie polece DELETE FROM dla obiektu (relacja, perspektywa) lub TRUNCATE (relacja) EXECUTE - wydawanie polece EXECUTE dla obiektu (procedura, funkcja) INDEX - wydawanie polece CREATE INDEX ON dla obiektu (relacja) REFERENCES - wydawanie polece CREATE i ALTER TABLE definiujcych klucz obcy dla obiektu (relacje)

Nadawanie uprawnie obiektowych GRANT <uprawnienie ALL> [(<atrybut> [,<atrybut>])] [, <uprawnienie ALL> [(<atrybut> [,<atrybut>])]...] ON <obiekt> TO <nazwa uytkownika rola PUBLIC> [WITH ADMIN OPTION] GRANT SELECT ON pracownicy TO jan, scott; GRANT SELECT, INSERT, UPDATE (PLACA_POD) ON pracownicy TO PUBLIC; Informacje o aktualnych uprawnieniach DBA_TAB_PRIVS DBA_COL_PRIVS USER_TAB_PRIVS USER_TAB_PRIVS_MADE USER_TAB_PRIVS_RECD USER_COL_PRIVS_MADE USER_COL_PRIVS_RECD SELECT * FROM user_tab_privs; Odbieranie uprawnie obiektowych REVOKE <uprawnienie ALL> [(<atrybut> [,<atrybut>])] [, <uprawnienie ALL> [(<atrybut> [,<atrybut>])]...] ON <obiekt> FROM <nazwa uytkownika rola PUBLIC> [CASCADE CONSTRAINTS] REVOKE SELECT ON pracownicy FROM scott; REVOKE ALL ON pracownicy FROM PUBLIC; Role rola jest nazwanym zbiorem uprawnie zarówno systemowych, jak i obiektowych role upraszczaj zarzdzanie uprawnieniami dla duych zbiorów uytkowników o podobnej charakterystyce (np. pracownicy działu kadr, zarzd) zmieniajc uprawnienia nalece do roli, zmienia si uprawnienia wszystkich uytkowników do niej przypisanych w bazie danych zdefiniowane s zawsze role standardowe: CONNECT, RESOURCE, DBA, EXP_FULL_DATABASE, IMP_FULL_DATABASE praktycznie, kademu tworzonemu uytkownikowi przydziela si role CONNECT i RESOURCE

Informacje o rolach Tworzenie nowych ról ROLE_SYS_PRIVS ROLE_TAB_PRIVS ROLE_ROLE_PRIVS SESSION_ROLES USER_ROLE_PRIVS DBA_SYS_PRIVS DBA_ROLES SELECT * FROM dba_roles; CREATE ROLE <nazwa roli> [NOT IDENTIFIED IDENTIFIED BY <hasło>] CREATE ROLE <nazwa roli> [NOT IDENTIFIED IDENTIFIED EXTERNALLY] CREATE ROLE kadry NOT IDENTIFIED; Modyfikowanie ról ALTER ROLE <nazwa roli> [NOT IDENTIFIED IDENTIFIED BY <hasło>] ALTER ROLE <nazwa roli> [NOT IDENTIFIED IDENTIFIED EXTERNALLY] ALTER ROLE kadry IDENTIFIED BY stycze; Włczanie i wyłczanie ról SET ROLE <nazwa roli> [IDENTIFIED BY <hasło>] [, <nazwa roli> [IDENTIFIED BY <hasło>]...] SET ROLE ALL [EXCEPT <nazwa roli> [, <nazwa roli>...] SET ROLE NONE SET ROLE kadry IDENTIFIED BY styczen; SET ROLE NONE;

Ustawianie ról domylnych dla uytkownika ALTER USER <nazwa uytkownika> DEFAULT ROLE <nazwa roli> [, <nazwa roli>...] ALTER USER <nazwa uytkownika> DEFAULT ROLE ALL [EXCEPT<nazwa roli>[,<nazwa roli>...]] ALTER USER <nazwa uytkownika> DEFAULT ROLE NONE ALTER USER scott DEFAULT ROLE kadry; Zadanie (1) Utwórz uytkowników Bolek i Lolek. Połcz si jako Bolek. Nadaj Bolkowi przywilej potrzebny do zalogowania si. Jako Bolek utwórz jak tabel. Nadaj Bolkowi przywilej potrzebny do tworzenia obiektów. Utwórz przykładowe tabele (skrypt /oracle/demobld.sql) w schemacie Bolka i Lolka. Bolek nadaje Lolkowi prawo czytania swojej tabeli pracownicy, Lolek czyta tabele Bolka, obaj uytkownicy ogldaj słownik bazy danych (informacje o udzielonych i otrzymanych przywilejach). Bolek nadaje Lolkowi prawo modyfikowania płac pracowników, Lolek sprawdza działanie przywileju. Zadanie (2) Lolek usuwa dane z tabeli Bolka. Bolek nadaje Lolkowi wszystkie prawa do tabeli pracownicy. Lolek odbiera Bolkowi prawa do tabeli pracownicy bdcej własnoci Bolka. Bolek odbiera Lolkowi wszystkie prawa do tabeli pracownicy. Bolek tworzy rol zabezpieczon hasłem i przekazuje tej roli prawa do tabeli pracownicy, nastpnie nadaje rol Lolkowi. Lolek próbuje wykorzysta t rol. Lolek włcza rol przyznan mu przez Bolka i korzysta z niej. Bolek i Lolek przegldaj słownik bazy danych i ogldaj informacje o przywilejach i rolach. Administrator zdejmuje rol przyznan Lolkowi przez Bolka z listy jego ról domylnych. Profile PROFILE s wykorzystywane do kontroli uytkowania zasobów systemowych Zasobami systemowymi s: czas procesora, operacje I/O, czas bezczynnoci, czas trwania sesji, równoczesne sesje Kiedy przekroczony zostanie limit zasobów okrelony przez profil, wtedy: aktualne polecenie jest wycofywane, dozwolone jest COMMIT i ROLLBACK, praca w sesji musi zosta zakoczona weryfikacja limitów systemowych włczana jest parametrem inicjalizacyjnym RESOURCE_LIMIT=TRUE lub poleceniem ALTER SYSTEM SET RESOURCE_LIMIT=TRUE

Tworzenie nowego profilu CREATE PROFILE <nazwa profilu> LIMIT [SESSIONS_PER_USER <limit UNLIMITED DEFAULT>] [CPU_PER_SESSION <limit UNLIMITED DEFAULT>] [CPU_PER_CALL <limit UNLIMITED DEFAULT>] [CONNECT_TIME <limit UNLIMITED DEFAULT>] [IDLE_TIME <limit UNLIMITED DEFAULT>] [LOGICAL_READ_PER_SESSION <limit UNLIMITED DEFAULT>] [LOGICAL_READ_PER_CALL <limit UNLIMITED DEFAULT>] [COMPSITE_LIMIT <limit UNLIMITED DEFAULT>] [PRIVATE_SGA <limit K limit M UNLIMITED DEFAULT>] CREATE PROFILE student LIMIT SESSIONS_PER_USER 2; Tworzenie nowego profilu CREATE PROFILE <nazwa profilu> LIMIT [FAILED_LOGIN_ATTEMPTS warto] [PASSWORD_LIFE_TIME warto] [{PASSWORD_REUSE_TIME PASSWORD_REUSE_MAX} warto] [PASSWORD_LOCK_TIME warto] [PASSWORD_GRACE_TIME warto] [PASSWORD_VERIFY_FUNCTION {nazwa f. NULL DEFAULT}] CREATE PROFILE hasła LIMIT PASSWORD_LIFE_TIME 50 PASSWORD_GRACE_TIME 3; Blokowanie i odblokowanie konta ALTER USER <nazwa uytkownika> [ACCOUNT LOCK] [ACCOUNT UNLOCK] [PASSWORD EXPIRE] ALTER USER scott ACCOUNT LOCK; ALTER USER scott ACCOUNT UNLOCK; ALTER USER jones PASSWORD EXPIRE; Zadanie (1) Sprawd czy zostało uaktywniona weryfikacja profili (jeli nie to włcz t opcj). Utwórz profil zawierajcy ograniczenie liczby równoczesnych sesji do 1 i czas bezczynnoci do 3 minut. Obejrzyj słownik i sprawd informacje o profilach. Nadaj utworzony przez siebie profil Bolkowi. Zweryfikuj działanie profilu. Zmie profil tak, aby ograniczał liczb nieudanych prób zalogowania do 1, liczb powtórze hasła do 1 i czas na zmian hasła do 0 dni. Zweryfikuj działanie profilu. Zmie profil tak, aby ograniczał moliwe zuycie procesora do 0,001 sekundy i zweryfikuj działanie profilu

Obserwacja bazy danych (auditing) wykrywanie podejrzanych operacji, np.: prób włamania si do systemu; monitorowanie i zbieranie informacji o aktywnoci systemu; obserwacja: polece (DDL lub DML) obiektów uprawnie Włczanie obserwacji do pliku parametrów naley doda AUDIT_TRAIL = xx naley zrestartowa baz danych AUDIT_TRAIL okrela miejsce, gdzie bd zapisywane wyniki monitorowania: warto ustawiona na DB lub TRUE - obserwacje bd zapisywane do relacji systemowej SYS.AUD$, relacja SYS.AUD$ i perspektywy uywane do obserwacji instalowane s przez skrypt cataudit.sql warto ustawiona na OS wyniki obserwacji bd zapisywane w dzienniku systemu operacyjnego (o ile system posiada taki dziennik) wyłczanie obserwacji: AUDIT_TRAIL = NONE Obserwacja polece i uprawnie AUDIT <polecenie uprawnienie> [, <polecenie uprawnienie>...] [BY <nazwa uytkownika> [, <nazwa uytkownika>...]] [BY SESSION BY ACCESS] [WHENEVER [NOT] SUCCESSFULL] AUDIT SELECT, INSERT BY scott WHENEVER NOT SUCCESSFULL; Obserwacja obiektów AUDIT <operacja> [, <operacja>...] ON <nazwa obiektu DEFAULT> [BY SESSION BY ACCESS] [WHENEVER [NOT] SUCCESSFULL] AUDIT EXECUTE ON usun_pracownika BY SESSION; NOAUDIT <polecenie uprawnienie> [, <polecenie uprawnienie>...] [BY <nazwa uytkownika> [, <nazwa uytkownika>...]] [WHENEVER [NOT] SUCCESSFULL] NOAUDIT <operacja> [, <operacja>...] ON <nazwa obiektu> [WHENEVER [NOT] SUCCESSFULL]

Opcje obserwacji obiektów - operacje ALTER, AUDIT SELECT INSERT, UPDATE, DELETE EXECUTE GRANT INDEX LOCK RENAME, COMMENT Informacje o obserwacji perspektywa systemowa DBA_STMT_AUDIT_OPTS zawiera charakterystyk obserwacji polece perspektywa systemowa DBA_PRIV_AUDIT_OPTS zawiera charakterystyk obserwacji uprawnie perspektywa systemowa DBA_OBJ_AUDIT_OPTS zawiera charakterystyk obserwacji obiektów pozostałe perspektywy systemowe: STMT_AUDIT_OPTION_MAP, AUDIT_ACTIONS, ALL_DEF_AUDIT_OPTS, USER_OBJ_AUDIT_OPTS, DBA_AUDIT_TRAIL, USER_AUDIT_TRAIL, DBA_AUDIT_SESSION, USER_AUDIT_SESSION, DBA_AUDIT_STATEMENT, USER_AUDIT_STATEMENT, DBA_AUDIT_OBJECT, USER_AUDIT_OBJECT, DBA_AUDIT_EXISTS Dziennik obserwacji dziennikiem obserwacji jest relacja systemowa SYS.AUD$ kada krotka dziennika zawiera informacje o: uytkowniku, kodzie polecenia i przywileju, obiekcie, czasie w celu usunicia z dziennika wszystkich krotek naley wyda polecenie: TRUNCATE TABLE sys.aud$ dla wywietlenia wyników obserwacji obiektów wygodnie jest korzysta z perspektywy systemowej DBA_AUDIT_OBJECT: select username, obj_name, action_name, ses_actions from sys.dba_audit_object; Zadania Sprawd, czy zostało uaktywnione zbieranie informacji o obserwowanych operacjach uytkowników (wykorzystaj perspektyw v$parameter) Włcz obserwacj polece DDL operujcych na tabelach przez uytkownika Bolek. Sprawd, czy w słowniku zapisało si polecenie obserwacji (dba_stmt_audit_opts) Jako Bolek utwórz, zmie i usu jak tabel. Sprawd dziennik obserwacji (dba_audit_statement). Pamitaj, e obserwacja jest realizowana dopiero w nowej sesji uytkownika. Włcz obserwacj nieudanych prób wykorzystania przywileju CREATE SESSION przez Bolka. Sprawd, czy w słowniku zapisało si polecenie obserwacji (dba_priv_audit_opts). Jako Bolek kilka razy połcz si z błdem. Sprawd dziennik obserwacji (dba_audit_trail, dba_audit_session) Włcz obserwacj tabeli pracownicy uytkownika Bolek. Sprawd, czy w słowniku zapisało si polecenie obserwacji (dba_obj_audit_opts) Po kilku zapytaniach do tabeli pracownicy (przez Bolka i Lolka) sprawd dziennik obserwacji (dba_audit_object).

Wyzwalacze Uruchamiane przez zdarzenia: DML: INSERT, UPDATE, DELETE DDL - ALTER, AUDIT, CREATE, DROP, GRANT, NOAUDIT, RENAME, REVOKE systemowe - LOGON, LOGOFF, STARTUP, SHUTDOWN, SERVERERROR Mog dotyczy: TABLE/VIEW DATABASE SCHEMA Przykład CREATE OR REPLACE TRIGGER drop_trigger BEFORE DROP ON scott.schema BEGIN RAISE_APPLICATION_ERROR ( num => -20000, msg => 'Nie mozna usunac tabeli'); END; / CREATE OR REPLACE TRIGGER logoff_trigger BEFORE LOGOFF ON DATABASE BEGIN DBMS_OUTPUT.PUT_LINE( 'Do widzenia' ); END; / Zadanie Napisz wyzwalacz, który zabroni uytkownikom logowania si do bazy danych jeeli czas logowania zawiera parzyste minuty. Napisz wyzwalacz, który do tabeli historia(uzytkownik,tabela,czas) wpisze informacje o kadym utworzeniu tabeli w bazie danych. Uwaga: najpierw utwórz tabel historia. W schemacie uytkownika Bolek stwórz tabel pracownicy_historia. Napisz wyzwalacz, który bdzie przechowywał histori zmian z tabeli pracownicy w tabeli pracownicy_historia. Oprócz informacji dotyczcych tego co zmodyfikowano, powinna si w niej znale informacja kto i kiedy dokonywał danej modyfikacji. Napisz wyzwalacz, który bdzie sprawdzał, czy modyfikacji w tabeli zespoly dokonuje uytkownik Bolek. Jeeli dane próbuje zmodyfikowa inny uytkownik, to odrzu takie modyfikacje. Nadaj uprawnienia do tabeli zespoly uytkownikowi Lolek i przetestuj działanie swojego wyzwalacza.