T\J\J 7. SYSTEMOWE ASPEKTY JĘZYKA $QL
Następnie piotr udziela tych praw użytkownikowi stefan, ale już bez opcji grant.
GRANT SELECT, INSERT ON Studio TO Stefan;
GRANT SELECT ON Film TO Stefan;
Także zaroi nadaje Stefanowi minimalne prawa, które są niezbędne do uruchomienia funkcji z rys. 7.14, a nominalnie prawa SELECT i INSERT (nazwa) do tabeli studio oraz SELECT do tabeli Film. W tym celu wykonuje następujące instrukcje.
GRANT SELECT, INSERT(nazwa) ON Studio TO stefan;
GRANT SELECT ON Film TO stefan;
A więc stefan otrzymał prawo do wykonania SELECT do tabel Film i Studio od dwóch różnych użytkowników. Poza tym dostał dwukrotnie prawo do wykonywania INSERT (nazwa) dla tabeli studio: bezpośrednio od karola i pośrednio przez prawo do INSERT od piotra.
□
Ze względu na to, że prawa nadawania praw tworzą złożoną sieć, a ponadto końcowe prawa mogą powstawać w wyniku nakładania się różnych nadań, jest wygodnie przedstawiać te zależności w postaci graficznej tzw. diagramu gram. Jest on implementowany w systemie SQL i w len sposób zawsze wiadomo, jakie są prawa i skąd się wzięły (co staje się ważne w przypadku ich odbierania, p. 7.4.6). Wierzchołki w tym diagramie reprezentują użytkowników i prawa. Jeśli użytkownik U nadaje prawo P użytkownikowi V, a jest to możliwe dlatego, że U ma prawa Q (gdzie O może być takie samo jak P z. opcją grant lub pewnym rozszerzeniem P, także z opcją grant), wówczas powstaje krawędź skierowana od wierzchołka U/Q do wierzchołka ViP.
PRZYKŁAD 7.23
Na rysunku 7.15 przedstawiono diagram grant, który powstał w wyniku wykonania ciągu instrukcji grant z przykładu 7.22. Stosujemy konwencję polegającą na tym, że gwiazdka * umieszczona przy prawach oznacza, że prawo zawiera opcję grant. Z kolei dwie gwiazdki ** oznaczają, że prawa wynikają z prawa własności elementu bazy danych, a w'ięc nic są poprzedzone żadnym nadaniem. Ta różnica okaże się istotna, gdy będziemy omawriać odbieranie praw' w' p. 7.4.6. Prawa opatrzone podwójną gwiazdką z natury zawierają opcję grant.
□
RYSUNEK 7.15 Diagram grani
Prawa nadane można w każdej chwili odebrać. Procedura odbieram praw może tworzyć kaskadą, w tym znaczeniu, że odebranie praw udzieli nych z opcją grant może wymagać odebrania także praw, które powstał w wyniku korzystania z tej opcji. Poniżej przedstawiamy prostą postać ii strukcji revoke.
1. Słowo kluczowe REVOKE.
2. Lista praw'.