Oracle9i Label Security – nowe podejście do ochrony baz danych

Na podstawie dokumentacji Oracle Corp.
Adam Miozga

Tradycyjne systemy informacyjne nie posiadają możliwości rozdzielania w
jednej bazie danych „dyskretnych” (poufnych, tajnych itp.) od
jawnych. Przez to wiele firm zmuszonych jest do fizycznej separacji danych o różnym
stopniu „wrażliwości” na różnych komputerach, tworzenia złożonego
kodu aplikacji lub też do polegania na wysoce specjalistycznych systemach
operacyjnych (obsługujących często jedynie kilka komercyjnych aplikacji).
Oracle 9i Label Security radykalnie zmniejsza konieczność stosowania takich
nieco karkołomnych zabiegów w celu ochrony danych. Program ten pośredniczy w
dostępie do informacji poprzez porównywanie etykiety wrażliwości (sensitivity
label)
powiązanej z daną informacją z etykietą uwierzytelnienia
skojarzoną z użytkownikiem aplikacji. Ten sposób pośrednictwa w dostępie do
danych umożliwia ich rozdzielenie pod względem wrażliwości (dyskretności) w
jednej bazie danych.
Oracle 9i Label Security został zaprojektowany w odpowiedzi na zapotrzebowanie
na skuteczne metody kontroli dostępu w środowisku internetu. Jest on pierwszym
systemem opartym na etykietach, zaprojektowanym specjalnie dla komercyjnych,
powszechnie dostępnych i szeroko stosowanych systemów operacyjnych. Opcje
egzekwowania reguł zawarte w tym programie umożliwiają dokładne dostrojenie
reguł bezpieczeństwa do specyficznych branż przemysłowych.

Niezależna Wirtualna Prywatna Baza Danych (VPD)

Oracle9i Label Security jest potężnym rozwiązaniem bezpieczeństwa,
eliminującym uciążliwość pisania i utrzymywania reguł Oracle VPD FGAC PL/SQL
w celu wprowadzenia ochrony na poziomie wierszy. Oprogramowanie to powstało w
oparciu o technologię wirtualnej prywatnej bazy danych (VPD, virtual private
database
) i precyzyjnej kontroli dostępu (FGAC, fine grained access
control
).
VPD FGAC daje administratorom możliwość programowania reguł bezpieczeństwa
przy użyciu Oracle PL/SQL oraz przydzielania tychże reguł do obiektów bazy
danych. Oracle 9i Label Security nie wymaga dodatkowego dostosowywania używanego
już oprogramowania. Dzięki temu możliwe jest radykalne skrócenie czasu wdrażania
reguły bezpieczeństwa oraz zmniejszenie kosztów jej utrzymywania. Oracle 9i
Label Security jest idealnym rozwiązaniem wszędzie tam, gdzie kontrola dostępu
oparta jest na wrażliwości danych i tradycyjne mechanizmy kontroli dostępu
stają się niewystarczające.

Zarządzanie regułami Virtualnej Prywatnej Bazy Danych FGAC Oracle9i

Używając VPD można tworzyć szczegółowe reguły kontroli dostępu (FAGC)
przy użyciu PL/SQL i przydzielać je tabelom i perspektywom. Reguły bezpieczeństwa
składają się z nazwy reguły, definicji reguły, etykiety uwierzytelnień użytkownika
i listy chronionych obiektów.
VPD FAGC mogą być zorientowane na wymuszanie kontrolowanego dostępu na
poziomie wierszy lub po prostu na egzekwowanie kontroli dostępu do samego
obiektu. Na przykład używając PL/SQL, można utworzyć regułę ograniczającą
dostęp do tabeli bazy danych podczas godzin pracy, lub też regułę wymuszającą
ochronę na poziomie wierszy poprzez porównywanie numeru działu firmy
zawartego w pojedynczym wierszu tabeli z numerem działu umieszczonym w
aplikacji i powiązanym z jej użytkownikiem.

Zarządzanie grupami reguł Virtualnej Prywatnej Bazy Danych FGAC Oracle9i

Oracle 9i Enterprise Edition wprowadza reguły grupowe VPD FAGC. Zawierają
one jedną lub więcej reguł bezpieczeństwa VPD FAGC i są powiązane z
indywidualną tabelą lub perspektywą. Każda reguła może mieć swoje własne
kryteria związane z jedną lub kilkoma operacjami DML. Na przykład reguła VPD
FAGC może zostać wymuszona na poleceniu SELECT, ale nie na poleceniu INSERT.
Dodatkowo dostępna jest opcja egzekwowania UPDATE CHECK sprawdzająca, czy dane
wprowadzone lub zaktualizowane przez użytkownika aplikacji są dostępne po
zastosowaniu reguły VPD FAGC. Na przykład użytkownik może wprowadzić dane z
numerem działu firmy znajdującego się poza jego własnym działem. Jakkolwiek
reguła VPD FAGC powiązana z tabelą dotyczy też danych na zewnątrz działu użytkownika,
CHECK_OPTION chroni użytkownika przed wprowadzeniem danych z innym numerem działu.
Kryteria egzekwowania DML CHECK_OPTION zarządzane są przy pomocy programu
Oracle9i Policy Manager.

Przywileje obiektowe i bezpieczeństwo na poziomie wierszy

Obiekty bazodanowe zawierają tabele, w których przechowywane są dane
aplikacji. Typowa aplikacja bazodanowa może zawierać dziesiątki, a nawet
setki tabel. Wyobraźmy sobie prostą aplikację typu „żądanie dostępu”
zawierającą dwie tabele z danymi. Pierwsza tabela (żądania zakupu) śledzi
żądania zakupu. Druga tabela (pozycje) śledzi poszczególne pozycje
zawarte w żądaniu zakupu. Każdemu żądaniu zakupu wylistowanemu w tabeli żądania
zakupu
może odpowiadać jedna lub więcej pozycji w tabeli pozycje.
Dostęp do danych w tych tabelach odbywa się z wykorzystaniem przywilejów
obiektowych takich jak SELECT, UPDATE, INSERT i DELETE. Przywileje obiektowe mogą
zostać przyznane bezpośrednio użytkownikowi aplikacji lub też mogą być
zarządzane z wykorzystaniem roli (stanowiska) pracownika w przedsiębiorstwie.
Stanowiska zawierają przywileje obiektu potrzebne do wykonywania danej funkcji
w pracy. Na przykład przywilej obiektowy SELECT może zostać nadany roli
SPRZEDAWCY. W większości przypadków przywileje obiektowe są wystarczające
dla podanych reguł bezpieczeństwa. Na przykład użytkownikowi może zostać
uniemożliwione wykonanie żądania zakupu poprzez proste stwierdzenie, że użytkownik
nie posiada przywilejów obiektowych na wyszczególnionej tabeli aplikacji żądania
zakupu. Oracle9i Label Security pośredniczy w dostępie do wierszy tabel bazy
danych opartym na etykiecie umieszczonej w wierszu, jak również w dostępie
opartym na etykiecie powiązanej z każdą sesją bazy danych, czy też opartym
na przywilejach Oracle9i Label Security przydzielonych danej sesji. Ten nowy
program Oracle pośredniczy w dostępie do danych zaraz po tym, jak tylko użytkownik
otrzyma standardowy przywilej Oracle SYSTEM i OBJECT. Na przykład: jeżeli użytkownik
aplikacji zamierza wykonać polecenie SQL SELECT, Oracle9i zweryfikuje najpierw,
czy użytkownik posiada stosowne przywileje OBJECT lub rolę w przedsiębiorstwie
zezwalającą mu na dostęp do żądanych w poleceniu tabel. Po drugie, Oracle9i
sprawdzi, czy którakolwiek z tabel, do których odnosi się polecenie, jest
chroniona przez Oracle9i Label Security. I w końcu Oracle9i Label Security
ustali dostęp do indywidualnych wierszy w oparciu o powiązane z nimi etykiety
wrażliwości oraz etykietowe uwierzytelnienie użytkownika.
Bezpieczeństwo na poziomie wierszy jest więc zdolnością do kontroli dostępu
do poszczególnych wierszy tabeli bazy danych po nadaniu jej przez użytkownika
przywilejów obiektowych. Na przykład: przypuśćmy, że reguła bezpieczeństwa
wymaga, żeby aplikacja była zdolna do odfiltrowania żądań zakupu
oznaczonych „firmowe dyskretne” (company sensitive). Domyślnie,
nadanie użytkownikowi aplikacji przywileju SELECT na tabeli żądania zakupu
pozwoli mu na oglądanie wszystkich informacji. Jednym ze sposobów na rozwiązanie
tego problemu jest utworzenie dwóch perspektyw w bazie danych. Pierwsza
perspektywa wykluczy wszystkie żądania zakupu uznane za company sensitive,
a druga zawierała będzie wszystkie żądania zakupu. Podejście to jest
problematyczne, ponieważ stosowana reguła bezpieczeństwa może ulegać
zmianom i zawierać z czasem nowe poziomy wrażliwości. Dodatkowo, ażeby użytkownicy
aplikacji mogli przeglądać niejawne dane firmy, musieliby zostać przypisani
do właściwych ról w przedsiębiorstwie zależnych od ich uwierzytelnienia.
Rozwój internetu zwiększa zapotrzebowanie na zabezpieczenia na poziomie
wierszy ponieważ więcej informacji jest przechowywanych w pojedynczej
lokalizacji

Oracle 9i Label Security i Etykiety Wrażliwości

Jak już zasygnalizowano wcześniej, Oracle 9i Label Security wykorzystuje
etykiety wrażliwości w celu kontroli dostępu do danych. Określane jest to
czasami jako kontrola dostępu oparta na etykietach (label based access
control, LBAC)
. Etykiety wrażliwości są najważniejszym elementem Oracle
9i Label Security. Stwarzają one ogromne możliwości kontroli dostępu do
informacji, determinują zdolność użytkownika do przeglądania i
uaktualniania danych. Etykieta wrażliwości może być tak prosta jak nazwa
firmy lub też może być kompleksem złożonym z wielu słów kodu. Oracle 9i
Label Security nie umniejsza potrzeby zarządzania przywilejami omówionymi w
poprzednim paragrafie. Umożliwia tak doskonałe zabezpieczenia bazy danych,
jakich nie dostarcza obecnie żaden z producentów. Oprogramowanie to wykonuje
dodatkowe sprawdzenie ochrony danych po zweryfikowaniu przywilejów
standardowych. Eliminuje potrzebę tworzenia zbiorowych perspektyw i potrafi
zarządzać skojarzonymi przywilejami obiektowymi podczas próby
zaimplementowania kontroli dostępu na poziomie wierszy. Dzięki temu swoistemu
wprowadzeniu do bazy danych zabezpieczeń na poziomie wierszy i wyprowadzeniu
ich z logiki aplikacji, zostaje zredukowany rozmiar i złożoność aplikacji
oraz dodatkowo zwiększone bezpieczeństwo. Etykiety wrażliwe w Oracle 9i Label
Security zawierają pojedynczy poziom (level) wrażliwości lub poziom
połączony z przedziałami (compartments), grupami (groups) lub z
obydwoma naraz. Możliwość użycia wszystkich trzech komponentów w etykiecie
wrażliwości dostarcza wielowymiarowego bezpieczeństwa na poziomie wierszy.

Poziomy wrażliwości

Poziom (level) stanowi jeden z komponentów etykiety wrażliwości
wprowadzony przez Oracle 9i Label Security. Aby zrozumieć poziomy, najprościej
jest posłużyć się przykładem. Powieść „Polowanie na Czerwony Październik”
Tom’a Clancy’ego oparta jest na fikcyjnej historii o rosyjskiej
super-cichej łodzi podwodnej. Istnienie tego okrętu podwodnego jest przykładem
ekstremalnie wrażliwego poziomu, takiego jak Ściśle Tajne (Top Secret).
W przykładzie tym personel, którego uwierzytelnienie nie będzie odpowiadało,
lub też przekroczy uwierzytelnienie Top Secret, zostanie wykluczony z
dostępu do szczegółów powiązanych z tym poziomem wrażliwości.

  • Poziom (level) – Poziom jest hierarchicznym komponentem
    oznaczającym wrażliwość (stopień jawności) danych. Typowa organizacja
    rządowa może zdefiniować poziomy: poufny, tajny i ściśle tajny. Nie
    jest jednak wymagane definiowanie więcej niż jednego poziomu. Np.
    organizacja komercyjna może zdefiniować pojedynczy poziom dla swoich
    danych poufnych lub dla wymagań hostowania aplikacji.

Kategorie wrażliwości

Posłużmy się znowu przykładem wspomnianej wcześniej powieści. Typem
dyskretnej technologii, która może być przydzielona do kategorii bezpieczeństwa,
jest system napędu wodnego w „Polowaniu na Czerwony Październik”.
W tym przypadku personel, którego obowiązki nie obejmują tego systemu, nie będzie
miał dostępu do szczegółów powiązanych z tą kategorią bezpieczeństwa.

  • Kategoria (compartment) – nie jest komponentem
    hierarchicznym. Zwykle jedna lub więcej kategorii jest definiowana w celu
    segregacji danych.

Grupy wrażliwości

Kolejnym komponentem etykiety wrażliwości danych dostarczanym przez Oracle
9i Label Security jest grupa. Przykładem potencjalnej grupy może być
organizacja posiadająca okręt podwodny w „Polowaniu na Czerwony Październik”.
Wyobraźmy sobie dwie grupy o nazwach General Operations i Special
Operations
zdefiniowane w Oracle 9i Label Security. General Operations
została zdefiniowana jako „dziecko” grupy Special Operations
(jest jej podległa). W tym przypadku personel należący do grupy General
Operations
nie będzie upoważniony do przeglądania informacji związanych
z grupą Special Operations. Jednakże personel związany ze Special
Operations
będzie miał dostęp zarówno do informacji grupy Special
Operations
jak i General Operations. Grupa Special Operations
posiada szersze uprawnienia do wglądu do informacji.

  • Grupa (group) – komponent „grupa” jest używany
    dla zapisu stanu posiadania i może być używany hierarchicznie.

Zarządzanie etykietami i oznaczanie danych

Etykiety Oracle 9i Label Security zarządzane są przy użyciu Oracle9i
Policy Managera lub linii poleceń API. Definicje etykiet przechowywane są w
bazie danych Oracle9i.

Interfejs graficzny Oracle Policy Manager

Oracle Policy Manager jest narzędziem zarządzania dla Oracle 9i Label
Security typu GUI. Oparty na strukturze Oracle Enterprice Manager, program ten
może być używany do tworzenia nowych reguł, definiowania komponentów
etykiet wrażliwości, tworzenia etykiet, określania uwierzytelnień użytkowników,
stosowania reguł do całych schematów i tabel, usuwania reguł ze schematów i
tabel, wyłączania reguł oraz do konfiguracji poszczególnych opcji
audytowania Oracle 9i Label Security. Dodatkowo, przy użyciu Managera można
dodawać do reguł predykaty SQL.

Reprezentacja zewnętrzna

Zewnętrzna prezentacja etykiety składa się z trzech komponentów,
rozdzielonych dwukropkiem. Etykieta „Poufne : Akwizycja : Azja”
skomponowana została z następujących trzech elementów:

  • Poziom = Poufne
  • Kategoria = Akwizycja
  • Grupa = Azja

Przykład tabeli aplikacji:

Projekt Lokalizacja Budżet Etykieta wrażliwości
AZ834T Chicago $ 145000,00 Public : : Education
WY83R Paryż $ 326000000,00 Confidental : : Europe
PT99X Tokio $ 210000000,00 Sensitive : Aquisitions : Asia

Znaczniki etykiet (tagi)

Znaczniki etykiet są używane wewnętrznie i są przechowywane razem z
danymi w celu optymalizacji. Powyższa przykładowa tabela aplikacji jest tabelą
złożoną z czterech atrybutów: Projekt, Lokalizacja i Budżet. Czwartym
(ostatnim) elementem jest atrybut etykiety dodany przez Oracle9i Label Security.
Wartości znajdujące się pod etykietą wrażliwości są zewnętrznymi
reprezentacjami etykiet. Korespondującymi z nimi znacznikami wewnętrznymi mogą
być 10010, 20005 i 30106.

Oracle9i Label Security – Predykaty SQL

Predykaty SQL używane są w celu rozszerzenia selektywnego egzekwowania reguł
dostępu do danych. Oracle9i Label Security dostarcza interfejs dla predykatów
SQL aby ułatwić dodawanie ich do reguł. Na przykład do algorytmu READ może
zostać dodany następujący predykat:

AND my_function(col1) = 1

innym przykładem może być:

OR SYS_CONTEXT (‚USERENV’,’SESSION_USER’) =
employee_name

Praca sieciowa (networking), replikacja i środowiska rozproszone

Reguły Oracle 9i Label Security zostają zaimplementowane w bazie danych. Są
one egzekwowane niezależnie od tego, czy połączenie z bazą danych następuje
przez internet, klient serwera, n-tier’a, lokalnie czy też przez łącze
bazy danych (database link). Oracle 9i Label Security wspiera zarówno
standardową replikację jak i zaawansowaną, w tym replikację wielonadrzędną
(multimaster) i zmaterializowane perspektywy (zdjęcia, snapshots).
Rozproszone bazy danych w programie Oracle działają w typowy sposób: lokalny
użytkownik kończy jako szczególny użytkownik zdalny. Program chroni
oznaczone dane niezależnie od tego, czy użytkownik łączy się lokalnie czy
też zdalnie. Jeżeli zdalny użytkownik posiada właściwe etykiety, może
uzyskać dostęp do danych. Jeśli nie, nie zostaje do nich dopuszczony.
Łącze bazy danych ustanawia połączenie do zdalnej bazy danych oraz
identyfikuje użytkownika powiązanego ze zdalną sesją. Uwierzytelnienia użytkownika
w zdalnej bazie danych oparte są na jego autoryzacji w łączu bazy danych.

Konteksty aplikacji Oracle9i

Technologia VPD daje możliwość tworzenia i zarządzania kontekstami
aplikacji. Konteksty aplikacji zwane są inaczej lokacjami (komórkami) pamięci
i wprowadzone zostały już w Oracle8i. Konteksty aplikacji są bardzo wygodne
przy przechowywaniu kluczowych, statycznych części informacji i używane są
do egzekwowania ogólnych zasad reguł. Zwykle kontekst aplikacji zostaje
zainicjowany w momencie, gdy użytkownik łączy się z aplikacją lub bazą
danych używając na przykład trigger’a logowania i pozostaje „stały”
podczas trwania połączenia. Konteksty aplikacji mogą zostać zintegrowane ze
szczegółową regułą kontroli dostępu. Poprzez połączenie tych dwóch
elementów uzyskuje się silne narzędzie do egzekwowania reguł bezpieczeństwa.

Audyt, rewidowanie (auditing)

Opcje rewidowania w Oracle 9i Label Security uzupełniają standardowy audyt
Oracle 9i poprzez śledzenie używania jego własnych narzędzi
administracyjnych oraz użycia przywilejów reguł. Do ustanawiania i zmieniania
opcji rewidowania można używać Oracle 9i Policy Managera.
Przy tworzeniu nowej reguły, kolumna etykiety dla tej reguły zostaje dodana do
ścieżki audytowania bazy danych. Kolumna etykiety tworzona jest niezależnie
od tego, czy audytowanie jest włączone lub wyłączone i niezależnie od tego,
czy stosowane jest rewidowanie bazy danych czy też systemu operacyjnego. Kiedy
tylko zostaje zapisany rekord tabeli audytu, każda reguła wytwarza etykietę
dla tego rekordu aby zasygnalizować etykietę sesji. Administrator może
utworzyć perspektywy audytu używając pokietu API do wyświetlenia tych
etykiet. Nota bene, w tabeli audytu etykieta nie kontroluje dostępu do wiersza.
Zamiast tego, po prostu zapisuje „wrażliwość” wiersza.

Podsumowanie

Internet usunął fizyczne granice bezpieczeństwa będące produktem
ubocznym starego modelu dystrybucji baz danych. Informacje, które niegdyś były
przechowywane lokalnie w celu szybkiego dostępu do nich, obecnie przechowywane
są w wielkich centralnych „składnicach” danych. Dostęp do nich
odbywa się poprzez szybkie modemy z wykorzystaniem światłowodów. Oracle 9i
Label Security wprowadza nową, wydajną technologię w odpowiedzi na nowe
problemy bezpieczeństwa powstałe wskutek rozwoju internetu i
zrewolucjonizowania przez niego sposobu tworzenia aplikacji oraz zarządzania
informacją.

Główne cechy Oracle 9i Label Security

Wielowymiarowa kontrola dostępu

  • 10 000 poziomów
  • 10 000 kategorii
  • 10 000 grup
  • Wielokrotne reguły dla pojedynczej bazy danych
  • Wielokrotne reguły dla pojedynczej tabeli
  • Opcja ukrytego wprowadzania reguły kolumny

Egzekwowanie stosowania reguł dostosowywalne do użytkownika

  • READ CONTROL na poziomie wierszy
  • WRITE CONTROL na poziomie wierszy
  • Ochrona WRITEUP etykiety – zakazanie zmniejszania wrażliwości
  • Ochrona WRITEACROSS etykiety – zakazanie modyfikacji kategorii i
    grup
  • Interfejs SQL*Predicate

Opcje oznaczania danych

  • Domyślne użytkownika
  • Jawna specyfikacja etykiety
  • Funkcje inteligentnego obliczania etykiety
  • Zaufane przechowywanie komponentów programu

Ochrona selektywna

  • Ochrona całych schematów lub indywidualnych tabel
  • Egzekwowania dostosowywalne do użytkownika na podstawie tabeli
  • Uwierzytelnienia odczytu zapisu dla poszczególnych grup i kategorii
  • Każda reguła posiada własny zestaw etykiet wrażliwości

Administracyjnie zarządzane indywidualne uwierzytelnienia użytkowników
oparte na etykietach

  • Poziom maksymalny (maximum level) – maksymalny dostępny poziom wrażliwości dla użytkownika
  • Poziom minimalny (minimum level) – minimalny dostępny poziom wrażliwości dla użytkownika
  • Poziom domyślny (default level) – domyślny poziom wrażliwości dla użytkownika nadawany mu podczas łączenia się z bazą danych
  • Poziom wiersza (row level) – poziom wrażliwości przydzielony dla nowej danej wprowadzonej przez użytkownika
  • Przedziały (kategorie) odczytu (read compartments) – lista kategorii, do czytania których upoważniony jest użytkownik. Użytkownik może oczytać dany wiersz pod warunkiem, że posiada wszystkie kategorie z listy w swojej etykiecie. Na przykład, jeżeli użytkownik posiada kategorie A, B i C, może przeglądać dane z kategoriami A i B ale nie dane oznaczone kategoriami A, B, C i D.
  • Kategorie zapisu (write compartments) – lista kategorii, do czytania których upoważniony jest użytkownik. Użytkownik może oczytać dany wiersz pod warunkiem, że posiada wszystkie kategorie z listy w swojej etykiecie Na przykład, użytkownik może otrzymać dostęp READ i WRITE do kategorii A i B oraz dostęp READ-ONLY do kategorii C. Jeżeli rekord aplikacji jest oznaczony kategoriami A, B i C, użytkownik nie będzie mógł uaktualniać danych w rekordzie ponieważ nie posiada dostępu WRITE do kategorii C.
  • Grupy odczytu (read groups) – lista grup, do czytania których upoważniony jest użytkownik. Użytkownik może oczytać dany wiersz pod warunkiem, że posiada wszystkie grupy z listy w swojej etykiecie.
  • Grupy zapisu – lista grup, do których zapisywania jest upoważniony użytkownik. Użytkownik może zapisać dany wiersz pod warunkiem, że posiada wszystkie grupy z listy w swojej etykiecie

Administracyjnie kontrolowane opcje egzekwowania reguł

  • READ CONTROL- ochrona operacji read/select. Tylko autoryzowane wiersze są dostępne dla operacji SELECT, UPDATE i DELETE.
  • INSERT CONTROL – ochrona operacji INSERT
  • UPDATE CONTROL – ochrona operacji UPDATE
  • DELETE CONTROL – ochrona operacji DELETE
  • WRITE CONTROL – ogranicza działanie poleceni INSERT, UPDATE i DELETE. Włączenie tej opcji wymusza INSERT_CONTROL, UPDATE_CONTROL i DELETE_CONTROL.
  • LABEL UPDATE – ochrania modyfikacje w etykiecie
  • LABEL CHECK – nakłada regułę READ_CONTROL na polecenia INSERT i UPDATE w celu upewnienia się, że nowy wprowadzony wiersz etykiety jest „odczytywalny” przez użytkownika.
  • NO CONTROL – wyłącza egzekwowanie
  • LABEL DEFAULT – oznacza etykietami wrażliwości nowe dane, używając domyślnych opcji użytkownika

Administracyjnie kontrolowane specjalne uwierzytelnienia użytkownika

  • READ – Użytkownik z taką autoryzacją może wykonać operację read/select z pominięciem egzekwowania bezpieczeństwa na poziomie wierszy. Pozostałe reguły Oracle 9i Label Security pozostają nadal egzekwowane. Operacje odczytu są nadal ograniczone przez dyskretną kontrolę dostępu Oracle.
  • FULL – Przywilej FULL wyłącza pośrednictwo Oracle 9i Label Security w dostępie do danych. Użytkownik z taką autoryzacją posiada dostęp do wszystkich danych i pozostaje ograniczony jedynie przez standardowe dyskretne kontrole dostępu Oracle.
  • WRITEDOWN – przywilej ten umożliwia użytkownikowi modyfikację komponentów poziomu etykiety i zezwala na zmniejszanie jej wrażliwości.
  • WRITEUP – przywilej ten umożliwia użytkownikowi modyfikację komponentów poziomu etykiety i zezwala na zwiększanie jej wrażliwości. Na przykład, dana aplikacji oznaczona jako Secret: Alpha, Beta może zostać zmieniona na Top Secret: Alpha, Beta.
  • WRITEACCROSS – przywilej ten zezwala użytkownikowi na zmiany kategorii i grup na jakąkolwiek inną ważną kategorię lub grupę zdefiniowaną dla reguły w Oracle 9i Label Security. Na przykład, dane aplikacji oznaczone jako Secret: Alpha, Beta mogą zostac zmienione na Secret: Alpha, Beta, Delta, nawet pomimo tego, że użytkownik nie był upoważniony do kategorii Delta.
  • PROFILE ACCESS – Użytkownik z taką autoryzacją może nadać sobie autoryzację Oracle 9i Label Security innego użytkownika. Na przykład, użytkownik posiadający dostęp do kategorii A, B i C może przejąć profil innego użytkownika aplikacji posiadającego dostęp do kategorii A, B, C i D.

Zarządzanie kontekstami aplikacji

  • Tworzenie kontekstów aplikacji
  • Wyznaczanie zaufanych pakietów dla zarządzania kontekstem
  • Dodawanie kontekstów reguł VPD FGAC do kontekstów aplikacji
  • Określanie metody inicjalizacji kontekstów aplikacji

Zaufane komponenty programu

  • Przydzielenie procedurom składowanym PL/SQL uwierzytelnień READ i FULL zmniejszyło potrzebę autoryzacji poszczególnych użytkowników
  • Wygodne dla raportów administracyjnych wymagających dostępu do wszystkich danych

Surowe zabezpieczenia na poziomie wierszy

  • Funkcjonalność produktu została oparta na surowych rządowych i komercyjnych wymaganiach bezpieczeństwa na poziomie wierszy

Narzędzia zarządzania i administrowania regułami

  • Oracle 9i Policy Manager
  • Pełny API

Standardowe systemy operacyjne

Oracle 9i Label Security jest dostępny w wersjach dla większości
komercyjnych systemów operacyjnych, w tym dla Sun Solaris i HP/UX

Standardy

  • Oracle 9i Label Security zostanie oceniony według głównych kryteriów ISO/IEC 15408

Dokumentacja i szkolenie

  • Razem z Oracle 9i Enterprice Edidtion dostarczany jest kompletny przewodnik administratora Oracle 9i Label Security. Może on być przeglądany w formie PDF-u lub dokumentu HTML.
  • Bezpłatne, sieciowe seminarium dostępne jest w Oracle Learning Network