Micha‚ Szkopi„ski

download Micha‚ Szkopi„ski

of 33

  • date post

    08-Feb-2016
  • Category

    Documents

  • view

    49
  • download

    0

Embed Size (px)

description

Administracja serwerem bazy danych Oracle 11g Zarządzanie użytkownikami i bezpieczeństwem danych Wykład nr 3. Michał Szkopiński. Konta użytkowników. Konto użytkownika bazy danych. Każde konto użytkownika zawiera : Unikalną nazwę Metodę uwierzytelnienia Domyślną przestrzeń tabel - PowerPoint PPT Presentation

Transcript of Micha‚ Szkopi„ski

Produkty ECM

Administracja serwerem bazy danych Oracle 11gZarzdzanie uytkownikami i bezpieczestwem danych

Wykad nr 3

Micha Szkopiski

Konta uytkownikw2Konto uytkownika bazy danychKade konto uytkownika zawiera:Unikaln nazwMetod uwierzytelnieniaDomyln przestrze tabelTymczasow przestrze tabelProfilStatus

Oracle Database 11g: Administration Workshop I 7 - 3Predefiniowane konta SYS i SYSTEMKonto SYS:Posiada rol DBAWszystkie uprawnienia s przydzielone z ADMIN OPTIONPosiada uprawnienie SYSDBAZ tego konta otwiera i zamyka si baz danych oraz wykonuje wszystkie operacje administracyjneJest wacicielem schematu ze sownikiem danychKonto SYSTEM Posiada rol DBAAle nie posiada uprawnienia SYSDBAOba konta nie powinny by uywane do normalnej pracy na danychTych kont nie da si usunOracle Database 11g: Administration Workshop I 7 - 4Uwierzytelnienie i autoryzacjaUwierzytelnienieProces weryfikacji tosamoci uytkownikaNajczciej bazuje na nazwie i hale uytkownikaMoe korzysta z tosamoci sprawdzonej w systemie operacyjnymZaawansowane metody mog opiera si o:CertyfikatyMetody biometryczneZewntrzny katalog LDAPAutoryzacjaProces sprawdzania uprawnieBazuje na przydzielonych uprawnieniach i rolach

Oracle Database 11g: Administration Workshop I 7 - 5Uwierzytelnianie administratorwSystem operacyjny:Administratorzy bazy musz posiada uprawnienia do tworzenia i usuwania plikw w systemie operacyjnymZwyky uytkownik nie powinien mie uprawnien do operowania na plikach bazy w systemie operacyjnymBaza danychW poczeniach typu SYSDBA: Uywany jest plik haseUwierzytelnienie przez system operacyjnyOracle Database 11g: Administration Workshop I 7 - 6Tworzenie uytkownikwSQLPLUSCREATE USER TOMEK IDENTIFIED BY HASLO;DEFAULT TABLESPACE USERSTEMPORARY TABLESPACE TEMPACCOUNT LOCK;

ALTER USER TOMEK ACCOUNT UNLOCK;ALTER USER TOMEK PASSWORD EXPIRE;Za pomoca Enterprise Manager

7

Uprawnienia8UprawnieniaW bazie Oracle istniej dwa rodzaje uprawnieSystemowe: Pozwalajce wykona okrelone czynnoci na bazie danychObiektowe: Pozwalajce wykona okrelone czynnoci na danych w obiektach bazy danych (SELECT, UPDATE itp.)

Systemowe:CREATE SESSIONObiekytoweUPDATE TABLEOracle Database 11g: Administration Workshop I 7 - 9Przydzielanie uprawniePrzydzielanie uprawnie systemowychPolecenie GRANTGRANT CREATE SESSION TO TOMEKZ wykorzystaniem klauzuli WITH ADMIN OPTIONPozwala przekazywa to uprawnienie innymGRANT CREATE SESSION TO TOMEK WITH ADMIN OPTIONPrzydzielanie uprawnie obiektowychPolecenie GRANTGRANT SELECT ANY TABLE TO TOMEK;Z wykorzystaniem klauzuli WITH GRANT OPTIONPozwala przekazywa uprawnienie innym

10GRANTREVOKEOdwoywanie uprawnie systemowychz ADMIN OPTIONREVOKE CREATE TABLE FROM jan;UytkownikUprawnienieObiektDBAJanEwaJanEwaDBA

Oracle Database 11g: Administration Workshop I 7 - 11GRANTREVOKEOdwoywanie uprawnie obiektowych z GRANT OPTIONDBAJanEwaEwaJanDBA

Kaskadowe odbieranie uprawnieOracle Database 11g: Administration Workshop I 7 - 12Roleatwiejsze zarzdzanie uprawnieniamiDynamiczne przydzielanie i usuwanie uprawnie wielu uytkownikomTymczasowe wczanie rl i ochrona hasem

Oracle Database 11g: Administration Workshop I 7 - 13Zarzdzanie rolamiUytkownicyUprawnieniaRoleHR_CLERKHR_MGR

JanAdamEwaDeleteEmployees.SelectEmployees.UpdateEmployees.InsertEmployees.CreateJob.Oracle Database 11g: Administration Workshop I 7 - 14Predefiniowane role w bazie danychCREATE ANY JOB, CREATE EXTERNAL JOB, CREATE JOB, EXECUTE ANY CLASS, EXECUTE ANY PROGRAM, MANAGE SCHEDULERSCHEDULER_ ADMINadnych rl systemowych; Rola: HS_ADMIN_ROLE i ponad 1,700 uprawnie obiektowych na tabelach sownikowych bazy danychSELECT_CATALOG_ROLEWikszo uprawnie administracyjnych, ale bez SYSDBADBACREATE CLUSTER, CREATE INDEXTYPE, CREATE OPERATOR, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE, CREATE TRIGGER, CREATE TYPERESOURCECREATE SESSIONCONNECTOracle Database 11g: Administration Workshop I 7 - 15Tworzenie rlCREATE ROLE KADRY;GRANT CREATE ANY TABLE TO KADRY;GRANT SELECT ANY TABLE TO KADRY;GRANT KADRY TO JAN;

REVOKE CREATE ANY TABLE FROM KADRY;Jakie uprawnienia posiada JAN?Oracle Database 11g: Administration Workshop I 7 - 16Zabezpieczanie rlRole mog by zabepieczane hasem i wczane przez samych uytkownikwCREATE ROLE POWER_USER IDENTIFIED BY passwordGRANT CREATE TABLE TO POWER_USER;SELECT * FROM SESSION_ROLESUytkownik w swojej sesji wcza rolSET ROLE POWER_USER IDENTIFIED BY passwordRole mog by rwnie chronione programowo przez uruchomienie procedury PL/SQL

Oracle Database 11g: Administration Workshop I 7 - 17

Niskopoziomowe zarzdzanie uprawnieniami - VPD18Virtual Private Database (VPD)Umoliwia zarzdzanie dostpem do danych na poziomie wierszy i kolumnRnicuje dostp do danych w tym samym obiekcie dla rnych uytkownikw VPD okrela si take jako: Row-Level Security (RLS) lub Fine Grained Access Control (FGAC)Stosuje sie na obiektach bazy takich jak: Tabele, Widoki Synonimy

Jak dziaa VPDUytkownik wykonuje polecenie DML:SELECT * FROM EMPLOYEES;Baza danych w tle dodaje dodatkow klauzul WHERESELECT * FROM EMPLOYEES WHERE SALARY < 5000;Uytkownik dostaje zawony zestaw wierszy w zalenoci od zastosowanej klauzuli WHEREKlauzula WHERE wyliczana jest w funkcji PL/SQLPolityka bezpieczestwa VPD okrela z ktrym obiektem zwizana jest ktra funkcji PL/SQL

Komponenty VPDFunckje PL/SQL

Polityki bezpieczestwa

Kontekst aplikacji

Funkcja PL/SQLFunkcje uywane s do wyliczania dodatkowej klauzuli WHERE

Funkcje VPD maj okrelon struktur:Przyjmuj dwa parametry wejciowe typu VARCHAR2Nazwa schematu Nazwa obiektuZwracaj VARCHAR2

Funkcje VPD umieszcza si najczciej w schemacie SYS lub specjalnie na ten cel utworzonym koncie uytkownikaPrzykad funkcji VPDCREATE OR REPLACE FUNCTION VPD_FILTER_EMP_ROWS ( schema_var IN VARCHAR2, table_var IN VARCHAR2 ) RETURN VARCHAR2 IS return_val VARCHAR2 (400); BEGINreturn_val := 'SALARY < 5000'; RETURN return_val; END VPD_FILTER_EMP_ROWS;

Polityka bezpieczestwa VPDPolityka VPD okrela: Ktry obiekt (tabela, widok, synonim) ma by chronionyJaka funkcja PL/SQL ma by uytaOperacje DML w ktrych ma by stosowana (S, U, I, D)Typ politykiStatycznaDynamiczna WspdzielonaPrzykad polityki bezpieczestwa VPDDBMS_RLS.ADD_POLICY ( object_schema => 'hr', object_name => 'emp', policy_name => 'filter_emp_policy', function_schema => 'sys', policy_function => 'filter_emp_rows_func', statement_types => 'select, insert, update, delete' );DBA_POLICIES informacje o istniejcych politykachKontekst aplikacyjnyPrzechowuje zmienne rodowiskowe w bazie danychZmienne sesyjneUytkownik, klient, host, itpZmienne aplikacyjneUstawiane przez aplikacj dostpow

Zmienne zapisuje si za pomoc:DBMS_SESSION.SET_CONTEXTZmienna odczytuje si za pomoc funcji SYS_CONTEXTKontekst aplikacyjny - przykadySYS_CONTEXT('USERENV', 'SESSION_USER')sys_context('USERENV', 'LANG') sys_context('USERENV', 'DB_UNIQUE_NAME')sys_context('USERENV', 'HOST')sys_context('USERENV', 'OS_USER')

Profile28Profile uytkownikwProfil:Kontroluje uycie zasobw (np. CPU, pami, operacje I/O)Zarzdza statusem konta, hasemZarzdza parametrami sesji (max. czas poczenia, ilo sesji rwnolegych itp.)

Oracle Database 11g: Administration Workshop I 7 - 29Implementacja polityki haseHistoria hase

Blokowanie konta

Wygasanie hasa

Weryfikacja zoonoci hasa

UytkownikUstawienie profilu

Uwaga! Nie uywa profili z polityk hase dla konta SYS, SYSMAN, DBSNMPOracle Database 11g: Administration Workshop I 7 - 30Tworzenie profilu z polityk hase

Oracle Database 11g: Administration Workshop I 7 - 31Quota ograniczenie dostpnej iloci przestrzeni dyskowejUytkownicy mog mie:Ograniczon przestrze okrelan przez administratoraNieograniczon ilo przestrzeni do wykorzystaniaNieograniczona przestrze tylko z uprawnieniem systemowymUNLIMITED TABLESPACEBez tego uprawnienia uytkownik musi mie przydzielony limit w jakie przestrzeni tabelNie stosuje si ogranicze do przestrzeni tabel TEMP i UNDO

Oracle Database 11g: Administration Workshop I 7 - 32

Dzikuj za uwag i zapraszam na wiczenia33