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



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

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

Uprawnienia, role, synonimy

Ładowanie i reorganizacja

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

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

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

Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

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

Baza danych inside. Biologiczne Aplikacje Baz Danych

PL/SQL. Zaawansowane tematy PL/SQL

Zarządzanie użytkownikami bazy danych Oracle11g

Katedra Informatyki i Automatyki Politechnika Rzeszowska. Administrowanie bazą danych Oracle za pomocą programu DBA Studio. I.

Zarzdzanie uytkownikami Uytkownicy, przywileje, role, audyt

Ostatnia cena sprzeda y klienta 1.0 dodatek do Symfonia Faktura dla 1 firmy

Wykład 8 Ochrona danych wprowadzenie Sterowanie dostępem do danych Sterowanie przepływem danych Ograniczanie możliwości wnioskowania Szyfrowanie

Pracownia internetowa w każdej szkole. Opiekun pracowni internetowej SBS 2003 PING

Instrukcja zarządzania systemem informatycznym służącym do przetwarzania danych osobowych

InsERT GT Własne COM 1.0

Kancelaris - Zmiany w wersji 2.50

Instrukcja instalacji aplikacji PlanSoft.org

Wykład 4. W tym wykładzie omówimy deklaratywne więzy spójności stanowiące jeden z elementów aplikacji bazy danych po stronie serwera.

Charakterystyka systemów plików

System Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy

dbsamples.udl lub przygotowany wcześniej plik dla Excela) i OK,

GEO-SYSTEM Sp. z o.o. GEO-RCiWN Rejestr Cen i Wartości Nieruchomości Podręcznik dla uŝytkowników modułu wyszukiwania danych Warszawa 2007

PERSON Kraków

Microsoft Management Console

SQL 4 Structured Query Lenguage

SIECI KOMPUTEROWE I BAZY DANYCH

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap Urzędzie Gminy w Ułężu

Audyt SEO. Elementy oraz proces przygotowania audytu. strona

Podnoszenie poziomu bezpieczeństwa instalacji i baz danych Oracle

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Gdańsku

Instrukcja programu PControl Powiadowmienia.

I. INSTALACJA BAZY DANYCH ORACLE10g EXPRESS EDITION

Instrukcja instalacji aplikacji Plansoft.org

Procedura działania Punktu Potwierdzającego. Profile Zaufane epuap. w Urzędzie Miejskim w Miłakowie

API transakcyjne BitMarket.pl

SpedCust 5 instrukcja instalacji

Konfiguracja programu Outlook 2007 do pracy z nowym serwerem poczty (Exchange)

Postanowienia ogólne. Usługodawcy oraz prawa do Witryn internetowych lub Aplikacji internetowych

Warunki Oferty PrOmOcyjnej usługi z ulgą

Załącznik nr 8. Warunki i obsługa gwarancyjna

Tomasz Greszata - Koszalin

Konfiguracja historii plików

Instrukcja Obsługi STRONA PODMIOTOWA BIP

Zdalne odnawianie certyfikatów do SWI

INSTRUKCJA WebPTB 1.0

Integracja systemów, integracja procesów

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

Opis instalacji systemu Intranet Komunikator

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Gminy Wągrowiec

Ćwiczenia 1 IBM DB2 UDB 9.x Express Edition

Zaawansowane bazy danych i hurtownie danych semestr I

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Barcinie

Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych. Andrzej Bąk

Harmonogramowanie projektów Zarządzanie czasem

Oprogramowanie FonTel służy do prezentacji nagranych rozmów oraz zarządzania rejestratorami ( zapoznaj się z rodziną rejestratorów FonTel ).

Procedura działania Punktu Potwierdzającego Profile Zaufane epuap w Urzędzie Miejskim w Łabiszynie

Sieci komputerowe cel

Procedura działania Punktu Potwierdzającego. Profile Zaufane epuap. w Urzędzie Gminy Kampinos

Instalacja. Zawartość. Wyszukiwarka. Instalacja Konfiguracja Uruchomienie i praca z raportem Metody wyszukiwania...

Spis treści. Rozdział 1 ewyniki. mmedica - INSTR UKC JA UŻYTKO W NIKA

Instrukcja zarządzania bezpieczeństwem Zintegrowanego Systemu Zarządzania Oświatą

Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x

Procedura weryfikacji badania czasu przebiegu 1 paczek pocztowych

POLITYKA BEZPIECZEŃSTWA OCHRONY DANYCH OSOBOWYCH W PRAKTYCE LEKARSKIEJ/DENTYSTYCZNEJ.... (nazwa praktyki) wydana w dniu... przez...

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Zarządzanie Zasobami by CTI. Instrukcja

Chmura obliczeniowa. do przechowywania plików online. Anna Walkowiak CEN Koszalin

Regulamin korzystania z Systemu invooclip przez Adresata i Odbiorcę

Przewodnik AirPrint. Ten dokument obowiązuje dla modeli atramentowych. Wersja A POL

Projektowanie bazy danych

HAŚKO I SOLIŃSKA SPÓŁKA PARTNERSKA ADWOKATÓW ul. Nowa 2a lok. 15, Wrocław tel. (71) fax (71) kancelaria@mhbs.

Regulamin korzystania z serwisu

elektroniczna Platforma Usług Administracji Publicznej

Dziedziczenie : Dziedziczenie to nic innego jak definiowanie nowych klas w oparciu o już istniejące.

Pracownia internetowa w szkole podstawowej (edycja 2004)

INFORMATOR TECHNICZNY WONDERWARE

Ogólne warunki skorzystania z Oferty Promocyjnej. Tabela nr [1]: Kwoty zobowiązań w zależności od wybranego Planu Taryfowego.

Archiwizacja i odtwarzanie bazy danych

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

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

Bazy danych. Andrzej Łachwa, UJ, /15

INSTRUKCJA TESTOWANIA USŁUG NA PLATFORMIE ELA-ENT

Warszawa, r.

Poniżej instrukcja użytkowania platformy

Zad.1 Pokazać pierwszeństwo trybu odmów przed zezwalaj.

Procedura nadawania uprawnień do potwierdzania, przedłuŝania waŝności i uniewaŝniania profili zaufanych epuap. Załącznik nr 1

Praca na wielu bazach danych część 2. (Wersja 8.1)

8. Konfiguracji translacji adresów (NAT)

VinCent Office. Moduł Drukarki Fiskalnej

1. Korzyści z zakupu nowej wersji Poprawiono Zmiany w słowniku Stawki VAT Zmiana stawki VAT w kartotece Towary...

Opis zmian funkcjonalności platformy E-GIODO wprowadzonych w związku z wprowadzeniem możliwości wysyłania wniosków bez podpisu elektronicznego

Oracle PL/SQL. Paweł Rajba.

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

Spis treści. Spis treści 3

Transkrypt:

Obsługa użytkowników Blokowanie konta Domyślna przestrzeń tabel Mechanizm autoryzacji Uprawnienia z roli Domena bezpieczeństwa Tymczasowa przestrzeń tabel Limity przestrzeni Uprawnienia bezpośrednie Limity zasobowe Użytkownicy i bezpieczeństwo

Zakres wykładu Tworzenie nowych użytkowników bazy danych. Modyfikacja i usuwanie istniejących w bazie użytkowników. Monitorowanie informacji o istniejących w bazie użytkownikach. Kończenie sesji użytkowników.

Kontrola dostępu użytkowników Administratorzy bazy danych Nazwa/hasło Prawa dostępu Kwoty Użytkownicy Profile Oracle Database 11g

Schemat bazy danych Tbl Tabele Klastry Indeksy Wyzwalacze Więzy integralności Perspektywy Perspektywy zmaterializowane Sekwencje Składowane jednostki programowe (procedury, funkcje, pakiety) Synonimy Typy danych użytkownika Łączniki bazodanowe

Tworzenie użytkownika ż 1. Wybierz nazwę użytkownika i metodę autoryzacji. 2. Określ przestrzenie tabel, w których użytkownik musi składować obiekty. 3. Określ limity it wykorzystania każdej przestrzeni tabel. 4. Określ domyślną i tymczasową przestrzeń tabel. 5. Utwórz użytkownika. ż 6. Nadaj użytkownikowi role i uprawnienia nadawane bezpośrednio (systemowe i obiektowe).

Tworzenie użytkownika CREATE USER user IDENTIFIED BY password EXTERNALLY GLOBALLY DEFAULT TABLESPACE tablespace TEMPORARY TABLESPACE tablespace PROFILE profile QUOTA liczba PASSWORD EXPIRE UNLIMITED ON tablespace ACCOUNT LOCK UNLOCK

Tworzenie nowego użytkownika: autoryzacja przez bazę danych Ustal hasło początkowe: CREATE USER peter IDENTIFIED BY zmienhaslozaraz DEFAULT TABLESPACE data TEMPORARY TABLESPACE temp QUOTA 500 M ON data PROFILE DEVELOPER PASSWORD EXPIRE;

Tworzenie nowego użytkownika: autoryzacja przez system operacyjny Korzystaj z OS_AUTHENT_PREFIX Przykład: użytkownik w SO = user15 OS_AUTHENT_ PREFIX Użytkownik bazy danych Możliwe zdalne logowanie OS_ empty string OPS$ (domyślne) OS_USER15 USER15 OPS$USER15 (domyślne) Nie Nie Tak

Tworzenie nowego użytkownika (wskazówki): Podczas tworzenia użytkownika, używaj hasła standardowego; korzystaj z autoryzacji przez SO tylko gdy jest to konieczne. Korzystaj z klauzuli EXPIRE w celu zmuszenia użytkowników do zmiany hasła. Zawsze określaj tymczasową przestrzeń tabel. Ostrożnie ż używaj ż wyrażenia ż QUOTA UNLIMITED i przywileju UNLIMITED TABLESPACE. Przeszkol użytkowników: Jak się łączyć Jak zmieniać hasła

Tworzenie schematu użytkownika W bazie Oracle zarezerwowane są dwie nazwy użytkowników: SYS i SYSTEM. Domyślnie nowy użytkownik nie dostaje praw dostępu do żadnej przestrzeni tabel w bazie. Kwoty nadaje się użytkownikom by zapobiec zbytniemu zużyciu miejsca w przestrzeni tabel. Zmiana limitu zajętości przestrzeni tabel ALTER USER peter QUOTA 0 ON data;

Co określamy yp przy tworzeniu użytkowników? 1. Nazwa konta i hasło. 2. Domyślna przestrzeń tabel. 3. Tymczasowa przestrzeń tabel. 4. Określenie przestrzeni tabel, w których użytkownik ż będzie tworzył ł obiekty. 5. Kwota na każdej z przestrzeni tabel, bądź nadanie użytkownikowi ż i nie limitowanej it ilości ś i przestrzeni. 6. Profil użytkownika (domyślnie DEFAULT). 7. Konieczność zmiany hasła (EXPIRE).

Logowanie użytkownika przez Proxy 12

Modyfikacja schematu użytkownika Hasło od wersji 11g może być case-sensitive sensitive w zależności od parametru: sec_case_sensitive_logon TRUE FALSE Metoda identyfikacji: baza -system operacyjny y - system zewnętrznyę Domyślna przestrzeń tabel Tymczasowa przestrzeń tabel Kwoty na przestrzeniach tabel Profil Domyślne role Blokowanie/odblokowanie konta

Modyfikacja użytkownika ALTER USER user IDENTIFIED BY password EXTERNALLY GLOBALLY ACCOUNT LOCK UNLOCK DEFAULT TABLESPACE tablespace TEMPORARY TABLESPACE tablespace PROFILE profile QUOTA DEFAULT ROLE integer UNLIMITED ALL, role ON tablespace EXCEPT, role NONE

Monitorowanie użytkowników USER_USERS USERS ALL_USERS DBA_USERS USER_TS_QUOTAS DBA_TS_QUOTAS

Przerywanie sesji KILL SESSION ALTER SYSTEM KILL SESSION sid, serial# ; Kolumny sid oraz serial# można odczytać z V$SESSION

Usuwanie użytkownika DROP USER peter; Skorzystaj z klauzuli CASCADE jeżeli schemat zawiera obiekty. DROP USER peter CASCADE;

Monitorowanie użytkowników DBA_USERS USERNAME USER_ID CREATED ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE DEFAULT_TABLESPACE TEMPORARY_TABLESPACE DBA_TS_QUOTAS USERNAME TABLESPACE_ NAME BYTES MAX_BYTES BLOCKS MAX_BLOCKS

Podsumowanie Utrzymanie bezpieczeństwa w bazie Tworzenie użytkowników Modyfikacja użytkowników Monitorowanie użytkowników DBA Usuwanie użytkowników Zabijanie sesji użytkowników

Kontrola użycia zasobów systemowych ZAKRES WYKŁADU Obsługa profili użytkowników. Rozumienie i kontrola wykorzystania zasobów Oracle Database 11g. Tworzenie i przypisywanie użytkownikom profili limitujących wykorzystanie zasobów Oracle. Obsługa profilów tworzonych przez system. Zarządzanie hasłami.

Cele W ramach tej lekcji dowiesz się jak: Zarządzać hasłami przy pomocy profili Administrować profilami Kontrolować wykorzystanie zasobów przy pomocy profili Odczytywać informacje o profilach, zarządzaniu hasłami i zasobach

Profile Są nazwanymi zbiorami ograniczeń związanych z hasłami i zasobami systemowymi Są przydzielane użytkownikom poleceniami CREATE USER lub ALTER USER Limity zasobów mogą być włączane i wyłączane (jednocześnie dla całego systemu) - parametr RESOURCE_LIMIT Upraszczają zarządzanie zasobami Przydatne w systemach z wieloma użytkownikami lub gdy wymagają tego reguły pracy w firmie Metoda autoryzacji Uprawnienia z ról Limity przestrzeni Domyślna przestrzeń tabel Domena bezpieczeństwa Uprawnienia bezpośrednie Limity zasobów Tymczasowa przestrzeń tabel Blokada konta

Limity zasobów Gdy przekroczony jest limit it dla sesji: Aktualne polecenie zostaje wycofane. Wszystkie poprzednie polecenia pozostają nienaruszone. Dozwolone jest jedynie COMMIT, ROLLBACK lub zakończenie sesji. W tej sesji nie można już dalej pracować (alemożna utworzyć nową). Kiedy przekroczony jest limit poziomu wywołania: Zatrzymywane jest wykonanie polecenia. Polecenie jest wycofywane. Wszystkie poprzednie polecenia pozostają nienaruszone. Użytkownik zachowuje otwartą sesję i limit dla kolejnego polecenia.

Profile Włączanie wymuszania limitów zasobów Jeśli baza danych może zostać ponownie wystartowana, wymuszanie limitów zasobów można włączać i wyłączać poprzez modyfikację parametru RESOURCE_LIMIT w pliku init.ora albo SPFILE. Wartość TRUE włącza sprawdzanie limitów, wartość FALSE wyłącza wymuszanie ograniczeń. Jeśli baza nie może zostać zamknięta, wymuszanie ograniczeń zasobów można włączyć i wyłączyć poleceniem ALTER SYSTEM. ALTER SYSTEM SET RESOURCE_LIMIT = TRUE FALSE

Profile Zasoby kontrolowane na poziomie sesji Zasób CPU_PER_SESSION SESSION_PER_USER _ CONNECT_TIME IDLE_TIME LOGICAL_READS_PER _SESSION PRIVATE_SGA Opis Całkowity czas CPU mierzony w setnych sekundy. Liczba równoczesnych sesji dozwolonych dla każdego użytkownika. Czas trwania sesji w minutach. Okresy bezczynności w minutach. Liczba bloków danych (odczytów logicznych i fizycznych). Prywatny obszar w SGA mierzony w bajtach (tylko dla MTS). Zasoby kontrolowane na poziomie wywołania Zasób CPU_PER_CALL PER CALL LOGICAL_READS_PER _CALL Opis Czas CPU na wywołanie ł w setnych sekundy. Liczba bloków danych.

Tworzenie profilu CREATE PROFILE profile LIMIT SESSIONS_PER_USER CPU_PER_SESSION CPU_PER_CALL integer UNLIMITED DEFAULT CONNECT_TIME IDLE_TIME LOGICAL_READS_PER_SESSION LOGICAL_READS_PER_CALL COMPOSITE_LIMIT PRIVATE_SGA integer UNLIMITED DEFAULT K M

Zmiana profilu SQL> ALTER PROFILE developer_profile LIMIT 2 SESSIONS_PER_USER 2 3 CPU_PER_SESSION 300000 4 IDLE_TIME 30 5 LOGICAL_READS_PER_CALL 1000; Profile altered. Określanie limitów profilu domyślnego SQL> ALTER PROFILE default LIMIT 2 SESSIONS_PER_USER 5 3 CPU_PER_call 3600 4 IDLE_TIME 30; Profile altered.

Limit złożony Jest ważoną sumą czterech limitów zasobów: CPU_PER_SESSION, CONNECT_TIME, PRIVATE_SGA i LOGICAL_READS_PER_SESSION Może być połączony z jawnym limitem zasobu Daje dodatkową elastyczność przy limitowaniu dostępu do zasobów Korzysta z sumy użytych w czasie sesji zasobów

Zarządzanie hasłami Historia haseł Blokowanie konta Użytkownik Ustawienia profili Starzenie się i wygasanie hasła Weryfikacja haseł

Zarządzanie hasłami Zarządzanie hasłami polega na definiowaniu profili i przydzielaniu ich użytkownikom. Blokuj, odblokowuj konta i unieważniaj hasła przy pomocy poleceń CREATE USER lub ALTER USER. Ograniczenia związane z hasłami są zawsze respektowane.

Blokowanie konta Parametr FAILED_LOGIN_ATTEMPTS PASSWORD_LOCK_TIME Opis Liczba nieudanych prób logowania przed zablokowaniem konta Liczba dni, przez które konto pozostaje zablokowane po wygaśnięciu hasła Starzenie się i wygasanie hasła Parametr PASSWORD_LIFE_TIME PASSWORD_GRACE_TIME Opis Czas życia hasła w dniach, po upływie których hasło wygasa Liczba dni na zmianę hasła, liczona od pierwszego udanego zalogowania po wygaśnięciu hasła

Blokowanie konta i odblokowanie z unieważnianiem hasła ALTER USER hanne ACCOUNT LOCK; ALTER USER hanne IDENTIFIED BY rue ACCOUNT UNLOCK PASSWORD EXPIRE;

Historia haseł Parametr Opis PASSWORD_REUSE_TIMEREUSE Liczba dni, które muszą upłynąć, aby hasło mogło być ponownie użyte PASSWORD_REUSE_MAXREUSE Maksymalna liczba pamiętanych haseł, Minimalna liczba zmian przed ponownym użyciem hasła Weryfikacja haseł Parametr Opis PASSWORD_VERIFY_FUNCTION Funkcja PL/SQL, która kontroluje poprawność hasła podczas próby jego zmiany przez użytkownika

Funkcja weryfikacji hasła definiowana przez użytkownika Funkcja musi być utworzona w schemacie użytkownika SYS i musi posiadać następujący nagłówek: function_ name( userid_parameter IN VARCHAR2(30), password_parameter IN VARCHAR2(30), old_password_parameter IN VARCHAR2(30)) RETURN BOOLEAN

Funkcja weryfikacji hasła VERIFY_FUNCTION Minimalna długość to cztery znaki. Hasło musi być różne od nazwy użytkownika. Hasło musi posiadać co najmniej jedną literę, jedną cyfrę i jeden znak specjalny. Hasło musi się różnić od poprzedniego na co najmniej j trzech pozycjach. Weryfikacja hasła

Modyfikacja profilu ALTER PROFILE default FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LIFE_TIME 60 PASSWORD_GRACE_TIME 10; Usuwanie profilu DROP PROFILE developer_prof; DROP PROFILE developer_prof CASCADE;

Zarządzanie zasobami systemowymi przy pomocy profili 1. Utwórz profile poleceniem CREATE PROFILE 2. Przydziel profile użytkownikom poleceniem CREATE lub ALTER USER 3. Włącz kontrolę użycia zasobów: Parametr inicjalizacyjny RESOURCE_LIMIT Polecenie ALTER SYSTEM

Przeglądanie informacji o profilach Perspektywy słownika danych powiązane z profilami DBA_USERS USER_RESOURCE_LIMITS DBA_PROFILES RESOURCE_COST

Odczytywanie informacji i zarządzaniu hasłami i limitach zasobowych DBA_USERS profile username account_status lock_date expiry_date DBA_PROFILES profile resource_name resource_type (PASSWORD, KERNEL) limit

Podsumowanie Limity zasobów systemowych: y SESSIONS_PER_USER CPU_PER_SESSION PER CPU_PER_CALL CONNECT_TIME TIME IDLE_TIME LOGICAL_READS_PER_SESSION LOGICAL_READS_PER_ CALL PRIVATE_SGA COMPOSITE_LIMIT Limity dla haseł

Podsumowanie Podczas tej lekcji nauczyłeś się: Administrować profilami Administrować hasłami Administrować limitami zasobowymi

Zarządzanie dostępem do bazy danych Zakres wykładu Definiowanie uprawnień bazodanowych. Nadawanie i kontrola uprawnień systemowych. y Nadawanie i kontrola uprawnień obiektowych. Nadawanie i kontrola uprawnień systemowych przez system operacyjny lub plik haseł

Kontrola uprawnień w bazie danych Przywilej jest prawem wykonania pewnego typu polecenia SQL lub prawem dostępu do obiektu innego użytkownika. Przywilej może być nadany bezpośrednio lub przez role. Oracle11g Uprawnienia systemowe Uprawnienia i obiektowe Uprawnienia a systemowe kontrolowane przez system operacyjny albo plik haseł

Kontrola uprawnień w bazie danych Typ uprawienia SYSTEMOWE OBIEKTOWE Opis Każde uprawnienie systemowe pozwala użytkownikowi na wykonanie pewnej operacji (lub też klasy operacji) w bazie danych. Każde uprawnienie obiektowe pozwala użytkownikowi na wykonanie pewnej akcji dla podanego obiektu (tabeli, perspektywy, sekwencji, procedury, funkcji lub pakietu). SYSTEMOWE (dla administratora) Uprawnienia SYSOPER i SYSDBA, które są związane z otwieraniem i zamykaniem instancji i kontrolowane przez system operacyjny albo plik haseł

Uprawnienia systemowe Istnieje ponad 150 uprawnień systemowych. Słowo kluczowe ANY w nazwie uprawnienia oznacza, że użytkownik posiada to uprawnienie w każdym schemacie (w całej bazie danych, domyślnie z wyjątkiem słownika danych). Polecenie GRANT przekazuje uprawnienie i użytkownikowi lub grupie użytkowników. Polecenie REVOKE odbiera uprawnienie.

Ograniczenia uprawnień systemowych O7_DICTIONARY_ACCESSIBILITY = TRUE Powraca do zachowania Oracle7 Usuwa ograniczenia uprawnień systemowych ze słowem kluczowym ANY Domyślnie w Oracle Database 9i/10g/11g FALSE (w Oracle8 i Oracle8i - TRUE).

Uprawnienia systemowe: przykłady Kategoria INDEX TABLE SESSION TABLESPACE Przykłady CREATE ANY INDEX ALTER ANY INDEX DROP ANY INDEX CREATE TABLE CREATE ANY TABLE ALTER ANY TABLE DROP ANY TABLE SELECT ANY TABLE UPDATE ANY TABLE DELETE ANY TABLE CREATE SESSION ALTER SESSION RESTRICTED SESSION CREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE

Uprawnienia systemowe - przykład Kategoria SESSION TABLE TABLE Przywilej systemowy CREATE SESSION CREATE TABLE SELECT ANY TABLE Dozwolone operacje Pozwala użytkownikowi ż i na podłączenie do bazy. Pozwala uprawnionemu na tworzenie tabel w swoim własnym schemacie, jednocześnie pozwala na tworzenie we własnym schemacie indeksów; należyzauważyć,iż uprawniony musi móc zajmować miejsce w przestrzeni tabel. Pozwala uprawnionemu na zapytania do dowolnej tabeli, snapshotu i perspektywy.

Nadawanie uprawnień systemowych GRANT CREATE SESSION, CREATE TABLE TO appl_manager; GRANT CREATE SESSION TO scott WITH ADMIN OPTION; Odbieranie uprawnień systemowych REVOKE CREATE TABLE FROM karen; REVOKE CREATE SESSION FROM scott;

Odbieranie uprawnień z opcją WITH ADMIN OPTION GRANT A B C REVOKE A B C X REZULTAT A B C

Odczytywanie informacji o uprawnieniach systemowych Poziom bazy danych DBA_SYS_PRIVS GRANTEE PRIVILEGE ADMIN OPTION Poziom sesji SESSION_PRIVS PRIVILEGE

Uprawnienia SYSDBA i SYSOPER Kategoria Przykłady SYSOPER STARTUP SHUTDOWN ALTER DATABASE OPEN MOUNT ALTER DATABASE BACKUP CONTROLFILE RECOVER DATABASE ALTER DATABASE ARCHIVELOG RESTRICTED SESSION SYSDBA uprawnienie SYSOPER z ADMIN OPTION ALTER TABLESPACE BEGIN/END BACKUP CREATE DATABASE RECOVER DATABASE UNTIL

Autoryzacja przez plik haseł 1. Sprawdź, czy plik haseł został utworzony, jeśli nie, to utwórz go programem ORAPWD. 2. Sprawdź, czy parametr REMOTE_LOGIN_PASSWORD_FILE jest ustawiony na EXCLUSIVE albo SHARED. 3. Przekaż ż użytkownikom ż uprawnienia i SYSOPER i SYSDBA. 4. Odczytaj V$PWFILE_USERS w celu sprawdzenia zawartości pliku haseł.

Typy uprawnień obiektowych Przywilej obiektowy SELECT UPDATE INSERT ALTER DELETE EXECUTE INDEX REFERENCES Tbl Tabela Perspektywa Sekwencja Sk Procedura 1 2 3 1 Wszystkie procedury i funkcje samodzielne, oraz publiczne części ś pakietów. 2 Nie mogą być nadane roli. 3 Mogą być również nadane perspektywie zmaterializowanej.

Nadawanie uprawnień obiektowych, GRANT object_priv ALL, ( column ), ON schema. object TO user role PUBLIC WITH GRANT OPTION

Nadawanie uprawnień obiektowych SQL> GRANT SELECT ON s_emp TO hanne, ernie; Statement processed. SQL> GRANT SELECT, 2> INSERT(ID, LAST_NAME, FIRST_NAME, 3> DEPT_ID), 4> UPDATE(FIRST_NAME) 5> ON s_emp TO hanne; Statement processed. SQL> GRANT EXECUTE ON dbms_pipe TO public; SQL> GRANT UPDATE(first_name, salary) ON 2> employee TO karen WITH GRANT OPTION;

Nadawanie praw z użyciem WITH GRANT OPTION SQL> GRANT SELECT ON s_emp TO hanne, ernie 2> WITH GRANT OPTION; Statement processed. Odbieranie uprawnień obiektowych SQL> REVOKE ALL ON s_emp FROM hanne; Statement processed. SQL> REVOKE execute ON dbms_pipe FROM scott;

Odbieranie uprawnień obiektowych nadanych WITH GRANT OPTION GRANT A B C REVOKE A B C X REZULTAT A B C

Odczytywanie yy informacji o uprawnieniach obiektowych DBA_TAB_PRIVS GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRANTABLE DBA_COL_PRIVS GRANTEE OWNER TABLE_NAME COLUMN_NAME GRANTOR PRIVILEGE GRANTABLE

Podsumowanie Przywilej jest prawem wykonania pewnego typu polecenia SQL lub prawem dostępu do obiektu innego użytkownika. ż Oracle11g Uprawnienia obiektowe Uprawnienia a systemowe e

Obsługa ról Zakres i cele wykładu Tworzenie i kontrola ról w bazie danych. Po tej lekcji, powinieneś potrafić: Tworzyć i modyfikować role Zarządzać dostępem do ról Usuwać role Korzystać z ról predefiniowanych Odczytywać ze słownika danych informacje o rolach istniejących w systemie

Nadawanie uprawnień bez ról Użytkownicy Uprawnienia i

Nadawanie uprawnień przy użyciu ról Użytkownicy Rola Uprawnienia

Role Użytkownicy A B C Role HR_MGR HR_CLERK Uprawnienia SELECT ON EMP INSERT ON EMP CREATE TABLE CREATE SESSION UPDATE ON EMP

Korzyści ze stosowania ról Mniejsza liczba przekazywanych uprawnień Dynamiczne zarządzanie uprawnieniami i i Selektywny dostęp do uprawnień Przekazywane przez SO Nie występuje kaskadowe odbieranie uprawnień Efektywne pod względem wydajności

Włączanie i wyłączanie ról DBA może określić, które role mają być ć włączane dla użytkownika w momencie podłączania się do bazy (role domyślne). Uprawnienia nadane wyłączonej roli nie są dla użytkownika ż dostępne. DBA może zażądać hasła lub autoryzacji w systemie operacyjnym. SET ROLE włącza jedynie wyspecyfikowane role, a wyłącza wszystkie wcześniej udostępnione.

Włączanie i wyłączanie ról SQL> SET ROLE acct_pay 2> IDENTIFIED BY bicentennial; Statement processed. SQL> SET ROLE ALL 2> EXCEPT acct_pay; Statement processed. SQL> SET ROLE NONE; Statement processed.

Ustawianie obsługi ról w systemie operacyjnym Procedura ustawiania ról 1. Utworzenie ról w Serwerze Oracle. 2. Ustawienie parametru OS_ROLES na TRUE (włącza obsługę). 3. Nadanie każdemu użytkownikowi w systemie operacyjnym y odpowiednich uprawnień wskazujących na ich role w bazie danych (format zależy od systemu operacyjnego).

Tworzenie ról CREATE ROLE sales_clerk; CREATE ROLE hr_clerk IDENTIFIED BY bonus; CREATE ROLE hr_manager IDENTIFIED EXTERNALLY;

Korzystanie z ról predefiniowanych Nazwa roli Opis CONNECT, Dla zachowania zgodności ś RESOURCE wstecz. DBA EXP_FULL_DATABASE IMP_FULL_DATABASE DELETE_CATALOG_ROLE Wszystkie uprawnienia systemowe WITH ADMIN OPTION Uprawnienia do eksportu całej bazy danych Uprawnienia do importu całej bazy danych uprawnienia DELETE na słowniku danych EXECUTE_ CATALOG_ ROLE uprawnienia EXECUTE na słowniku danych SELECT_CATALOG_ROLE uprawnienia SELECT na słowniku danych

Modyfikowanie ról ALTER ROLE sales_clerk IDENTIFIED BY commission; ALTER ROLE hr_clerk IDENTIFIED EXTERNALLY; ALTER ROLE hr_manager NOT IDENTIFIED;

Nadawanie ról GRANT sales_clerk TO scott; GRANT hr_clerk, TO hr_manager; GRANT hr_manager TO scott WITH ADMIN OPTION;

Określanie ról domyślnych ALTER USER scott DEFAULT ROLE hr_clerk, sales_clerk; ALTER USER scott DEFAULT ROLE ALL; ALTER USER scott DEFAULT ROLE ALL EXCEPT hr_clerk; ALTER USER scott DEFAULT ROLE NONE;

Role aplikacyjne (secure application role) Role aplikacyjne rozwiązują problem nieautoryzowanego dostępu z programów klienckich Role te mogą być ć włączone ł tylko przez autoryzowane pakiety PL/SQL. W celu utworzenia roli aplikacyjnej należy zastosować klauzulę: USING package_name Włączenie roli odbywa się przez wywołanie pakietu, a nie przez hasło. Role aplikacyjne używają tego samego mechanizmu SYS_CONTEXT co VPD (Virtual Private Database). CREATE ROLE admin_role IDENTIFIED USING hq.employe; Uwaga! Role mogą być włączane tylko przez procedury aplikacyjne i bloki anonimowe. Nie mogą być włączane przez procedury składowane, bo taka akcja może zmienić domenę bezpieczeństwa (zbiór aktywnych przywilejów).

Włączanie i wyłączanie ról Wyłączamy rolę, aby tymczasowo odebrać ją użytkownikowi w bieżącej sesji. Włączamy rolę, aby tymczasowo nadać ją użytkownikowi w bieżącej sesji. Polecenie SET ROLE włącza wyspecyfikowane role i wyłącza wszystkie pozostałe niedomyślne role. Role domyślne ś są włączane w chwili logowania się użytkownika. Do włączenia ł roli może ż być ć potrzebna znajomość hasła lub autoryzacja w systemie albo przez pakiet.

Włączanie ą i wyłączanie ą ról: przykłady SET ROLE hr_clerk; SET ROLE sales_clerk IDENTIFIED BY commission; SET ROLE ALL EXCEPT sales_clerk; SET ROLE NONE;

Odbieranie ról użytkownikom REVOKE sales_clerk FROM scott; REVOKE hr_manager FROM PUBLIC; Usuwanie ról DROP ROLE hr_manager;

Wskazówki dla tworzenia ról Użytkownicy Role użytkowników HR_CLERK HR_MANAGER PAY_CLERK Role aplikacji BENEFITS PAYROLL Uprawnienia aplikacji Uprawnienia dla Benefits Uprawnienia dla Payroll

Wskazówki dla korzystania z haseł i ról domyślnych Chroniona hasłem (niedomyślna) PAY_CLERK Rola domyślna PAY_CLERK_RO Uprawnienia INSERT, UPDATE, DELETE i SELECT Uprawnienia SELECT

Odczyt informacji o rolach Perspektywa Opis DBA_ROLES DBA_ROLE_PRIVS ROLE_ROLE_PRIVS DBA_SYS_PRIVS ROLE_SYS_PRIVS ROLE_TAB_PRIVS SESSION_ROLES USER_ROLE_PRIVS Wszystkie role w bazie danych Role przekazane użytkownikom i rolom Role przekazane rolom Uprawnienia systemowe przekazane użytkownikom ż i rolom Uprawnienia systemowe dla ról Uprawnienia obiektowe dla ról Role aktualnie włączone przez użytkownika Role nadane użytkownikowi

Podsumowanie Tworzenie ról Przyznawanie rolom uprawnień Przypisywanie ról użytkownikom i innym rolom Ustawianie ról domyślnych Wyświetlanie informacji o rolach Ustawianie obsługi ról w systemie operacyjnym

Obserwacja bazy danych Cele Określenie, kiedy obserwacja jest potrzebna. Śledzenie dostępu do obiektów bazy danych na poziomie poleceń i systemu. Monitorowanie opcji obserwacji w słowniku danych. Przeglądanie i utrzymywanie wyników obserwacji.

Obserwacja Przegląd Badanie podejrzanych działań Monitorowanie działania bazy danych Zbieranie danych o działaniach w bazie Operacje obserwacji Obserwacja poleceń Obserwacja uprawnień Obserwacja obiektów

Rekomendacje obserwacji Generalnie przy obserwacji: Określ cel obserwacji. Obserwowanie zachowawcze (bez wpływu na działanie systemu). Przy obserwacji związanej z podejrzanymi działaniami w bazie danych: Obserwacja generalna w celu określenia jakie konkretnie akcje wymagają dalszego badania. Zabezpieczenie dziennika obserwacji. Przy obserwacji w celu gromadzenia informacji historycznych o działaniu bazy: Obserwacja jedynie istotnych działań. Archiwizacja i regularne czyszczenie dziennika obserwacji. Przy obserwacji zorientowanej na wartości: Wykorzystanie wyzwalaczy bazodanowych. Zamknięcie kodu w procedurze lub pakiecie zawierającym własne procedury obserwacji. Procedury pakietu FGA

Przykład obserwacji wartości - wyzwalacz CREATE AFTER BEGIN IF TRIGGER audit_employee INSERT OR DELETE OR UPDATE ON emp FOR EACH ROW auditpackage.reason ISNULL THEN raise_application_error(-20501, Must specify reason for update before performing update; use auditpackage.set_reason() ); END IF; INSERT INTO audit_employee VALUES ( :OLD.ssn, :OLD.name, :OLD.class, :OLD.sal :NEW.ssn, :NEW.name, :NEW.class, :NEW.sal, auditpackage.reason, USER, SYSDATE); END; CREATE TRIGGER audit_emp_cleanup AFTER INSERT OR DELETE OR UPDATE ON emp BEGIN auditpackage.reason := NULL; END;

Zdarzenia zawsze obserwowane (w alert.log) Start instancji Zamknięcie i instancji Podłączenie się do bazy danych z uprawnieniami administracyjnymi Włączanie ą i wyłączanie ą obserwacji Ustaw parametr AUDIT_TRAIL. Przy wartości DB, obserwacje są zapisywane do tabeli dziennika obserwacji SYS.AUD$. Przy ustawieniu na OS, obserwacje są ą zapisywane do dziennika obserwacji w systemie operacyjnym w katalogu wskazanym przez parametr AUDIT_FILE_DEST. Przy ustawieniu NONE obserwacja jest wyłączona.

Ogniskowanie obserwacji Obserwowanie wykonań specyficznych poleceń SQL zakończonych sukcesem lub porażką. Zbieranie informacji dla sesji (BY SESSION) lub dla wywołania (BY ACCESS). Obserwacja uprawnień i poleceń Obserwacja wszystkich lub wybranych użytkowników. Obserwacja obiektów Wybiórcza obserwacja działań dotyczących jedynie podanych obiektów. Połączenia jako SYS mogą być obserwowane po ustawieniu parametru AUDIT_SYS_OPERATIONS.

Obserwowanie poleceń Kategorie obserwowanych poleceń Obserwacja poleceń DDL odnoszących się do pewnego typu struktur bazy danych lub obiektów. Obserwacja poleceń SELECT i DML odnoszących się do pewnego typu struktur bazy danych lub obiektów. Specyfikowanie obserwacji poleceń AUDIT, statement_opt BY, user BY SESSION WHENEVER SUCCESSFUL ACCESS NOT

Specyfikowanie obserwacji poleceń SQL> AUDIT user BY ACCESS; Audit succeeded. SQL> AUDIT connect; Audit succeeded. SQL> COL user_name FORMAT A10 SQL> COL audit_option FORMAT A13 SQL> SELECT user_name, audit_option, success, failure 2 FROM sys.dba_stmt_audit_opts; USER NAME AUDIT OPTION SUCCESS FAILURE --------- ------------ ------- ------- USER BY ACCESS BY ACCESS CREATE SESSION BY ACCESS BY ACCESS

Obserwowanie uprawnień Obserwacja uprawnień Możliwa jest obserwacja każdego z uprawnień systemowych. Istnieje ponad 150 różnych uprawnień systemowych, które mogą być obserwowane. Specyfikowanie obserwacji uprawnień, AUDIT statement_priv BY, user BY SESSION WHENEVER SUCCESSFUL ACCESS NOT

Specyfikowanie obserwacji uprawnień SQL> AUDIT create table BY scott BY ACCESS; Audit succeeded. SQL> AUDIT alter any table, alter any procedure 2 BY scott BY ACCESS 3 WHENEVER SUCCESSFUL; Audit succeeded. SQL> SELECT * FROM sys.dba_priv_audit_opts; USER_NAME PRIVILEGE SUCCESS FAILURE --------- ------------------- --------- -------- SCOTT CREATE TABLE BY ACCESS BY ACCESS SCOTT ALTER ANY TABLE BY ACCESS NOT SET SCOTT ALTER ANY PROCEDURE BY ACCESS NOT SET 3 rows selected.

Obserwowanie obiektów Obserwowane obiekty Tabele Perspektywy Sekwencje Pakiety Pojedyncze procedury składowane w bazie Pojedyncze funkcje składowane w bazie Typy

Obserwowanie obiektów Obserwowanie obiektów Obserwowanie obiektów Obserwowanie obiektów Procedura Procedura X Opcja Opcja ALTER ALTER AUDIT AUDIT Tabela Tabela X X Persp. Persp. X Sekwencja Sekwencja X X Migawka Migawka X X AUDIT AUDIT COMMENT COMMENT DELETE DELETE EXECUTE EXECUTE X X X X X X X X X EXECUTE EXECUTE GRANT GRANT INDEX INDEX INSERT INSERT X X X X X X X X INSERT INSERT LOCK LOCK RENAME RENAME SELECT SELECT X X X X X X X X X X SELECT SELECT UPDATE UPDATE X X X X X X

Specyfikowanie obserwacji obiektów AUDIT, object_opt ON object schema. DEFAULT BY SESSION WHENEVER SUCCESSFUL ACCESS NOT SQL> AUDIT EXECUTE ON change_price BY SESSION; Audit succeeded. SQL> AUDIT DELETE ON emp BY ACCESS; Audit succeeded. SQL> AUDIT EXECUTE ON emp BY SESSION WHENEVER SUCCESSFUL; Audit succeeded.

Specyfikowanie obserwacji obiektów SQL> AUDIT GRANT ON change_price WHENEVER SUCCESSFUL; Audit succeeded. d SQL> AUDIT LOCK ON emp BY ACCESS WHENEVER NOT SUCCESSFUL; Audit succeeded. d SQL> COL object_name FORMAT a15 SQL> SELECT * FROM user_obj_audit_opts; OBJECT_NAME OBJECT_TYPE TYPE ALT AUD COM DEL GRA IND INS LOC REN SEL UPD REF EXE ------------- ----------- --- --- --- --- --- --- --- --- --- --- --- --- --- CUSTOMER TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- DEPT TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- EMP TABLE -/- -/- -/- A/A S/- -/- -/- -/A -/- -/- -/- -/- -/- ITEM TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- ORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- PRICE TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- PRODUCT TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- CHANGE_PRICE PROCEDURE -/- -/- -/- -/- S/- -/- -/- -/- -/- -/- -/- -/- S/S 8 rows selected.

Specyfikowanie obserwacji obiektów SQL> AUDIT ALL ON dept; Audit succeeded. SQL> SELECT * FROM user_obj_audit_opts 2 WHERE object_name = DEPT ; OBJECT_NAME OBJECT_TYPE ALT AUD COM DEL GRA IND INS LOC REN SEL UPD REF EXE ----------- ----------- --- --- --- --- --- --- --- --- --- --- --- --- --- DEPT TABLE S/S -/- -/- -/- -/- -/- -/- -/- S/S S/S -/- -/- - /-

Specyfikowanie obserwacji obiektów Domyślne opcje obserwacji obiektów Ustawia się je przy wykorzystaniu słowa kluczowego DEFAULT. Opcje te są przypisywane każdemu z nowo utworzonych obiektów. Możliwa jest zmiana opcji obserwacji za pomocą jawnego ich ustawienia dla danego obiektu. SQL> AUDIT alter, select, rename ON default; Audit succeeded. ALT AUD COM DEL GRA IND INS LOC REN SEL UPD REF EXE --- --- --- --- --- --- --- --- --- --- --- --- --- S/S -/- -/- -/- -/- -/- -/- -/- S/S S/S -/- -/- -/-

Wyłączanie obserwacji uprawnień i poleceń, NOAUDIT statement_opt statement_priv BY, user WHENEVER NOT SUCCESSFUL SQL> NOAUDIT create table BY scott; Noaudit succeeded. SQL> NOAUDIT alter any table, alter any procedure 2 BY scott 3 WHENEVER SUCCESSFUL; Noaudit succeeded. d

Wyłączanie obserwacji obiektów NOAUDIT, object_opt ON schema. object WHENEVER SUCCESSFUL NOT SQL> NOAUDIT execute ON change_price; Noaudit succeeded. SQL> NOAUDIT delete ON emp; Noaudit succeeded. SQL> NOAUDIT grant ON emp 2 WHENEVER SUCCESSFUL; Noaudit succeeded.

Dziennik obserwacji Dziennik obserwacji zawiera zapisy generowane przez obserwację poleceń, uprawnień i obiektów. Dziennik ten stanowi tabela słownika danych SYS.AUD$. Każdy rekord dziennika zawiera Użytkownika, który wykonał polecenie. e Kod akcji (numerycznym), który identyfikuje typ polecenia i wykorzystane przywileje. Obiekty, do których polecenie się odwoływało. Czas i datę wydania polecenia. Monitorowanie dziennika obserwacji Dziennik ik obserwacji rośnie ś zależnie ż od Liczby obserwowanych opcji. Częstości wykonywania obserwowanych poleceń.

Monitorowanie dziennika obserwacji Kontrola rozrostu dziennika obserwacji: włączanie obserwacji jedynie wtedy, gdy jest to potrzebne. selektywne włączanie opcji do obserwowania. ścisła kontrola obserwacji. Ograniczanie obserwacji poprzez wymaganie by: administrator bezpieczeństwa posiadał prawa do obserwowania obiektów. wszystkie obiekty znajdowały się w schematach, dla których nie ma aktualnych użytkowników (tzn. właściciele obiektów nie mają prawa CREATE SESSION).

Obsługa dziennika obserwacji Zapisy z dziennika należy usuwać poprzez Usunięcie wszystkich lub wybranych rekordów. Archiwizację rekordów obserwacji w innej tabeli. Archiwizację zapisów obserwacji w systemie operacyjnym za pomocą narzędzia EXPORT. SQL> TRUNCATE TABLE sys.aud$; Table truncated. SQL> DELETE FROM sys.aud$ 2 WHERE TIMESTAMP< SYSDATE-90; n rows deleted.

Obsługa dziennika obserwacji Ograniczenia pamięci Jeśli zapełni się przestrzeń tabel, Serwer Oracle nie może zaalokować następnego ekstentu żądanego rozmiaru. Administrator musi powiększyć przestrzeń tabel poprzez p powiększenie ę pliku lub dodanie nowego. Jeśli dziennik obserwacji dojdzie do maksymalnej dozwolonej liczby ekstentów, administrator musi ponownie utworzyć tabelę podając większy limit ekstentów lub ich większy rozmiar.

Wyświetlanie informacji o obserwacji Perspektywa Opis Opis DBA_AUDIT_TRAIL STMT_AUDIT_OPTION_MAP Wszystkie Mapowanie zapisy nr obserwacji opcji obserwacji i jej nazwy USER_AUDIT_TRAIL AUDIT_ACTIONS ACTIONS TRAIL DBA_AUDIT_SESSION ALL_DEF_AUDIT_OPTS USER_AUDIT_SESSION DBA_STMT_AUDIT_OPTS SESSION DBA_AUDIT_STATEMENT DBA_PRIV_AUDIT_OPTS USER_AUDIT_STATEMENT DBA_OBJ_AUDIT_OPTS DBA_AUDIT_OBJECT USER_OBJ_AUDIT_OPTS USER_AUDIT_OBJECT DBA_AUDIT_EXISTS Zapisy Mapowanie obserwacji nr dla akcji danego i jej nazwy użytkownika Wszystkie Domyślne zapisy opcje o początkach obserwacji i końcach sesji Początki Opcje i końce obserwacji ń sesji użytkownika systemu ż (poleceń) Wszystkie Opcje zapisy obserwacji dotyczące uprawnień obserwacji dla opcji DBA Jak wyżej, Opcje lecz obserwacji dla aktualnego obiektów użytkownika Wszystkie Opcje zapisy obserwacji dotyczące obiektów obiektów Jak wyżej, lecz dotyczące obiektów aktualnego użytkownika Wszystkie zapisy dla EXISTS/NOT EXISTS

Wyświetlanie informacji o obserwacji SQL> SQL> SQL> CONNECT system/password AUDIT delete ON scott.emp BY SESSION WHENEVER SUCCESSFUL; CONNECT adams/wood SQL> DELETE scott.emp WHERE empno = 1111; SQL> CONNECT scott/tiger SQL> DELETE emp WHERE empno = 111; SQL> CONNECT system/password SQL> DELETE scott.emp WHERE empno = 7788;

Wyświetlanie informacji o obserwacji SQL> SELECT username, TO_CHAR (timestamp, DD-MON MON-YY HH:MI:SS ), 2 owner, obj_name, action_name, 3 returncode, priv_used 4 FROM sys.dba_audit_trail audit trail 5 WHWERE action_name = DELETE ; USERNAME TIMESTAMP OWNER OBJ J_ NAME ACTION _ NAME RETURNCODE PRIV _US USED -------- ------------------ ----- -------- ----------- ---------- --------- ADAMS 15-SEP-99 16:05:19 SCOTT EMP DELETE 0 DELETE SCOTT 15-SEP-99 16:15:03 SCOTT EMP DELETE 0 SYSTEM 15-SEP-99 16:25:35 SCOTT EMP DELETE 0 DELETE ANY TABLE

Podsumowanie Typy obserwacji Poleceń ń Uprawnień Obiektów Wykorzystanie obserwacji Badanie podejrzanych działań. Monitorowanie działania bazy danych. Zbieranie danych o działaniach w bazie. Dziennik obserwacji Wykorzystanie y perspektyw p słownika danych przy dostępie do dziennika. Monitorowanie rozmiaru dziennika. Periodyczne usuwanie rekordów i obcinanie i dziennika.