35124 ullman229 (2)

35124 ullman229 (2)



464 7 SYSTEMOWE ASPEKTY JĘZYKA SOL T

PRZYKŁAD 7.25

Przedstawimy teraz za pomocą abstrakcyjnych przykładów kilka problemów bardziej subtelnych. Po pierwsze, jeśli odbiera się pewne ogólne prawa p, to nie oznacza, że odbiera się jakiś ich podzbiór, nadany osobno. Rozważmy następujący ciąg działań, gdzie użytkownik U- właściciel relacji R - nadaje prawo insert do R użytkownikowi V, a poza tym nadaje dodatkowo prawo do insert (A) do tej samej relacji.

Nr czynności

Kto

Czynność

1

U

GRANT INSERT ON R TO V

2

U

GRANT INSERT(A) ON R TO V

3

U

REVOKE INSERT ON R FROM V RESTRICT

Po odebraniu prawra INSERT od V ma on nadal prawo INSERT (A). Ma rysunku 7.17 przedstawiono diagram grant powstały kolejno w czynnościach 2 i 3.



(a) Po czynności 2    (b) Po czynności 3

RYSUNEK 7.17

Po odebraniu praw ogólnych prawa szczegółowe obowiązują nadal

Zauważmy, że po czynności 2 istnieją dwa oddzielne wierzchołki z podobnymi, ale nieidentycznymi prawami użytkownika V. Zauważmy także, że opcja RESTRICT w czynności 3 nie zapobiegnie odebraniu prawr, ponieważ, użytkownik V nie udzielał praw innym użytkownikom. A w ogóle nie mógł ich nadawać, ponieważ otrzymał je bez opcji grant.

PRZYKŁAD 7.26

Rozważmy teraz podobny przykład, w którym U nadaje użytkownikowi V prawo p z opcją grant, a potem odbiera tylko tę opcję. W tym przypadku trzeba zmienić w-ierzchołek odpowiadający V po to, by widać było zmianę ro-dząju praw posiadanych przez użytkownika V, oraz trzeba usunąć wszystkie krawędzie ilustrujące nadanie prawa p przez użytkownika V. Zostanie wykonany następujący ciąg instrukcji:

Nr czynności

Kto

Czynność

1

U

GRANT p TO V WITH GRANT OPTION

2

V

GRANT p TO W

3

U

RE70KE GRANT OPTION FOR p FROM V CASCADE

W pierwszej instrukcji U nadaje prawa p użytkownikowi V z opcją grant. W czynności 2 Vkorzysta z opcji grant i udziela praw'/? do W. Diagram został przedstawiony na rys. 7.18(a).

RYSUNEK 7.18

Przy odebraniu prawa do nadawania praw. prawa uprzednio nadane obowiązują nadal



(b) Po kroku 3


Następnie w czy nności 3 użytkownik U odbiera użytkownikowi V opcję grant do praw p, ale nie odbiera samych praw. A więc znika gwiazdka z wierzchołka VIp. Ale z wierzchołka pozbawionego * nie może wychodzić żadna krawędź, ponieważ taki wierzchołek nie może być źródłem praw'. A więc trzeba usunąć także krawędź wychodzącą z wierzchołka V/p, która prowadzi do w ierzchołka W/p.

Teraz z kolei do wierzchołka W/p nie dochodzi żadna ścieżka rozpoczynająca się w wierzchołku z dwiema gwiazdkami, który jest źródłem praw p, a zatem wierzchołek W/p zostaje usunięty z diagramu. Ale wierzchołek V/p pozostaje. Zmienił się tylko typ tego wierzchołka, znikła gwiazdka, oznaczająca opcję grant. Wynikowy diagram grant został przedstawiony na rys. 7.18(b).

7.4.7. Ćwiczenia do podrozdziału 7.4

Ćwiczenie 7.4.1. Należy podać, jakie są niezbędne prawa do uruchomienia następujących zapytań. W każdym przypadku należy- podać prawa minimalne oraz ogólne które wystarczają do uruchomienia zapytania.

a)    Zapytanie z rys. 5.3.

b)    Zapylanie z rys. 5.5.

*c) Wstawienie z rys. 5.12.


Wyszukiwarka

Podobne podstrony:
ullman208 (2) 422 7. SYSTEMOWE ASPEKTY JĘZYKA SQL PRZYKŁAD 7.3 Przedstawimy tu funkcję C. która służ
18974 ullman230 (2) 400 7. SYSTEMOWE ASPEKTY JĘZYKA SQL d)    Usuwanie z przykładu 5.
ullman218 (2) 7. SYSTEMOM ASPEKTY JĘZYKA SOL Można także poinformować system SQL o tym, żc transakcj
17514 ullman224 (2) 454 7 SYSTEMOWE ASPEKTY JĘZYKA SQI.7.4. Bezpieczeństwo i autoryzacja użytkownika
42485 ullman206 (2) 41$ 7. SYSTEMOWE ASPEKTY JĘZYKA SQI.7.1.2. Interfejs między językiem SQL i
47839 ullman216 (2) 438 7. SYSTEMOWE ASPEKTY JĘZYKA SQI. do. Wartości atrybutów określają więc numer

więcej podobnych podstron