ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.04.2021

Просмотров: 3453

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

131

п ред ста в лениях

д а же

если

са ми

э ти

п ред ста в ления

обнов ляемые

Та к

ка к

в нешние

ключ и

не

п рименяются

в

п ред ста в лениях

то

и

п рив илегия

REFERENCES

никогд а

не

исп ользуется

п ри

соз д а нии

п ред ста в лений

.  

6.6.1. 

О граничение

привил егии

SELECT

дл я

определ енны х

ст ол бц ов

Пред п оложим

необход имо

обесп еч ить

п ользов а телю

PETROV

в оз можность

д оступ а

только

к

столбца м

STUDENT

_

ID

и

SURNAME

та блицы

STUDENT

Э то

можно

сд ела ть

п оместив

имена

э тих

столбцов

в

п ред ста в ление

CREATE

VIEW

STUDENT

_

VIEW

 AS

SELECT

STUDENT

_

ID

SURNAME

FROM

STUDENT

и

п ред оста в ить

п ользов а телю

PETROV

п рив илегию

SELECT

в

соз д а нном

п ред ста в лении

а

не

в

са мой

та блице

STUDENT

GRANT

SELECT

ON

STUDENT

_

VIEW 

TO

PETROV

Д ля

столбцов

можно

соз д ать

раз лич ные

п рив илегии

од на ко

след ует

иметь

в

в ид у

ч то

д ля

кома нд ы

INSERT

э то

буд ет

оз на ч а ть

в ста в ку

з на ч ений

п о

умолч а нию

а

д ля

кома нд ы

DELETE

огра нич ение

столбца

не

буд ет

в ообщ е

иметь

з на ч ения

.  

6.6.2. 

О граничение

привил егий

дл я

определ енны х

строк

  

Пред ста в ления

п оз в оляют

огра нич ить

  (

фильтров а ть

п р ив илегии

д ля

оп ред еленных

строк

та блицы

Д ля

э того

естеств енно

исп ользов а ть

в

п ред ста в лении

п ред ика т

который

оп ред елит

ка кие

строки

в ключ ены

   

в

п ред ста в ление

Ч тобы

п ред оста в ить

п ользов а телю

PETROV

п р ив илегию

в ид а

UPDATE

в

та блице

UNIVERSITY

д ля

в сех

з а п исей

о

М осков ских

унив ерситета х

можно

соз д а ть

след ующ ее

п ред ста в ление

CREATE

VIEW

  

MOSC

_

UNIVERSITY 

AS

SELECT

 * 

FROM

UNIVERSITY

WHERE

CITY

 = 

М о ск

ва

WITH

CHECK

OPTION


background image

132

За тем

можно

п еред а ть

п рив илегию

UPDATE

в

э той

та блице

п ользов а телю

PETROV

GRANT

UPDATE

ON

MOSC

_

UNIVERSITY

TO

PETROV

В

отлич ие

от

п рив илегии

UPDATE

д л я

оп ред еленных

столбцов

которая

расп ространена

на

в се

строки

та блицы

UNIVERSITY

д а нна я

п рив илегия

относится

только

к

строка м

д ля

которых

з на ч ение

п оля

CITY

рав но

М о ск

ва

Пред ложение

WITH

CHECK

OPTION

п ред охраняет

п ользов а теля

PETROV

от

з а мены

з на ч ения

п ол я

CITY

на

любое

з на ч ение

кроме

з на ч ения

М о ск

ва

6.6.3. 

П редост авл ение

доступа

т ол ь ко

к

из вл еченны м

данны м

Д руга я

в оз можность

состоит

в

том

ч тобы

уста на в лив а ть

п ользов а телям

п рив илегии

на

д оступ

к

уже

из в леч енным

д а нным

а

не

к

з на ч ениям

в

та блице

Д ля

э того

уд обно

исп ользов а ть

а грегирующ ие

функции

Н а п ример

соз д а д им

п ред ста в ление

которое

д а ет

информа цию

о

колич еств е

оценок

сред нем

и

общ ем

ба лла х

д ля

студ ентов

на

ка жд ый

д ень

CREATE

VIEW 

DATETOTALS 

AS

  

SELECT 

EXAM

_

DATE

COUNT

 (*) 

AS

KOL

SUM

 (

MARK

AS

SUMMA

,   

             

AVG

 (

MARK

)  

AS

 TOT 

FROM

EXAM

_

MARKS

GROUP

BY

EXAM

_

DATE

Теп ерь

можно

п еред а ть

п ользов а телю

PETROV

п рив илегию

SELECT

в

соз д а нном

п ред ста в лении

DATETOTALS

с

п омощ ью

з а п роса

GRANT

SELECT

ON

DATETOTALS

TO

PETROV


background image

133

6.6.4. 

И спол ь з ование

представл ений

в

качест ве

ал ь т ернат ивы

ограничения м

Пред ста в ления

с

WITH

CHECK

OPTION

могут

исп ользов а ться

в

ка ч еств е

а льтерна тив ы

огра нич ениям

Н а п р имер

необход имо

уд остов ериться

ч то

в се

з на ч ения

п оля

CITY

в

та блице

STUDENT

ра в ны

на з в а ниям

конкретных

город ов

Д ля

э того

можно

уста нов ить

огра нич ение

CHECK

неп осред ств енно

на

столбец

CITY

О д на ко

п оз же

его

из менение

буд ет

з а тр уд нено

В

ка ч еств е

а льтерна тив ы

можно

соз д а ть

п ред ста в ление

исключ а ющ ее

неп ра в ильные

з на ч ения

CITY

CREATE VIEW 

CURCITYES

 AS 

SELECT

 * 

FROM

STUDENT

WHERE

CITY

IN

 (

М о сква

Во р о н еж

WITH

CHECK

OPTION

Теп ерь

в место

того

ч тобы

п ред оста в лять

п ользов а телям

п рив илегии

обнов ления

в

та блице

STUDENT

можно

п ред оста в ить

соотв етств ующ ие

п рив илегии

в

п ред ста в лении

CURCITYES

Преимущ еств о

та кого

п од ход а

состоит

в

том

ч то

п ри

необход имости

из менения

можно

уд а лить

э то

п ред ста в ление

соз д а ть

нов ое

и

п ред оста в ить

в

э том

нов ом

п р ед ста в лении

п рив илегии

п ользов а телям

Та ка я

оп ерация

в ып олняется

п рощ е

ч ем

из менение

огр а нич ений

в

та блице

Н ед оста тком

э того

метод а

яв ляется

то

ч то

в ла д елец

та блицы

STUDENT

та кже

д олжен

исп ользов а ть

э то

нов ое

п ред ста в ление

ина ч е

его

собств енные

кома нд ы

та кже

не

буд ут

п риняты

.  

6.7. 

Д ругие

т ипы

привил егий

  

Д о

сих

п ор

   

не

рассмотрены

в оп росы

уста нов ки

целого

ряд а

д ругих

п рив илегий

а

именно

К то

имеет

п р а в о

соз д а в а ть

та блицы

К то

имеет

п р а в о

из менять

уд а л ять

или

огранич ив а ть

та блицы

Д олжны

ли

п ра в а

соз д а ния

ба з ов ых

та блиц

отлич а ться

от

п рав

соз д а ния

п ред ста в лений

Д олжен

ли

сущ еств ов а ть

супер по льзо в а т ель

то

есть

п ользов а тель


background image

134

отв еч а ющ ий

з а

п од д ержа ние

ба з ы

д а нных

и

след ов а тел ьно

имеющ ий

на ибольшие

или

п олные

п р ив илегии

которые

не

п ред оста в ляются

обыч ному

п ользов а телю

Прив илегии

которые

не

оп ред еляются

в

термина х

сп ециа льных

объектов

д а нных

на з ыв а ются

пр и в и лег и ям и

си ст ем ы

или

пр а в а м и

ба зы

д а нны х

Э ти

п рив илегии

в ключ а ют

в

себя

п ра в о

соз д а в а ть

объекты

д а нных

отлич а ющ иеся

от

ба з ов ых

та блиц

  (

обыч но

соз д а в а емых

несколькими

п ользов а телями

и

п ред ста в лений

  (

обыч но

соз д а в а емых

большинств ом

п ользов а телей

). 

Прив илегии

системы

д ля

соз д а ния

п ред ста в лений

д олжны

д оп олнять

а

не

з а менять

п рив илегии

объекта

которые

ста нд а рт

тр ебует

от

соз д а телей

п ред ста в лений

  (

оп иса ны

ранее

). 

К роме

того

в

любой

системе

в сегд а

имеются

некоторые

тип ы

суп ер п ользов а телей

то

есть

п ользов а телей

которые

имеют

большинств о

или

в се

п рив илегии

и

которые

могут

п еред а ть

св ой

ста тус

суп ерп ользов а теля

кому

-

л ибо

с

п омощ ью

п рив илегии

или

груп п ы

п р ив илегий

Та кого

род а

п ользов а телем

яв л яется

та к

на з ыв а емый

а д м и ни ст р а т о р

ба зы

д а нны х

или

 DBA (DataBase Administrator)

6.8.  

Т ипичны е

привил егии

систем ы

При

общ ем

п од ход е

имеется

три

ба з ов ых

п рив илегии

системы

CONNECT

  (

Подключить

),  

RESOURCE

 (

Ресурс

и

  

DBA

 (

Администратор

Базы

Данных

). 

Прив илегия

CONNECT

состоит

из

п ра в а

з а регистриров а ться

и

п рав а

соз д а в а ть

п ред ста в ления

и

синонимы

если

п еред а ны

п р ив илегии

объекта

.  

Прив илегия

RESOURCE

состоит

из

п ра в а

соз д а в а ть

ба з ов ые

та блицы

.  

Прив илегия

DBA

э то

п рив илегия

а д министратора

ба з ы

д а нных

то

есть

суп ер п ользов а теля

которому

п ред оста в ляются

са мые

в ысокие

п олномоч ия

п ри

ра боте

с

ба з ой

д а нных

Э ту

п рив илегию

может

иметь

од ин

или

более

п ользов а телей

с

функциями

а д министра тора

ба з ы

д а нных

К ома нд а

GRANT

 (

в

из мененной

форме

может

п р именяться

ка к

с

п р ив илегиями

объекта

та к

и

с

системными

п рив илегиями

.  


background image

135

6.9.   

С оз дание

и

удал ение

пол ь з оват ел ей

В

большинств е

реа лиз а ций

  SQL 

нов ого

п ользов а теля

соз д а ет

п ользов а тель

с

п рив илегией

DBA

то

есть

а д министра тор

баз ы

д а нных

который

а в тома тич ески

п ред оста в ляет

нов ому

п ользов а телю

п р ив илегию

CONNECT

В

э том

случ а е

обыч но

д оба в ляется

п ред ложение

IDENTIFIED

BY

ука з ыв а ющ ее

п а р оль

д ля

э того

п ользов а теля

Н а п р имер

кома нд а

GRANT

CONNECT

TO

PETROV

IDENTIFIED

BY

PETROVPASSWORD

п рив ед ет

к

соз д а нию

п ользов а теля

с

именем

PETROV

п ред оста в ит

ему

п рав о

регистриров а ться

в

ба з е

д а нных

и

на з на ч а ет

ему

п а р оль

PETROVPASSWORD

После

э того

та к

ка к

PETROV

уже

яв ляется

з а р егистриров а нным

п ользов а телем

он

  (

или

п ользов а тел ь

DBA)

может

исп ользов а ть

э ту

же

кома нд у

д ля

из менения

д а нного

п а роля

PETROVPASSWORD

К огд а

п ользов а тель

A

п ред оста в ляет

п рив илегию

CONNECT

д ругому

п ользов а телю

B

гов орят

ч то

п ользов а тель

  

A

со зд а ет

п ользов а теля

 B

При

этом

п ользов а тель

A

обяз а тельно

д олжен

иметь

п р ив илегию

DBA

Е сли

п ользов а тель

B

буд ет

соз д а в а ть

ба з ов ые

та блицы

  (

а

не

только

п ред ста в ления

), 

ему

та кже

д олжна

быть

п ред оста в лена

п рив илегия

RESOURCE

Н о

п ри

э том

в оз ника ет

д руга я

п роблема

Пр и

п оп ытке

уд а ления

п ользов а телем

A

п р ив илегии

CONNECT

п ользов а теля

  B

который

уже

имеет

соз д а нные

им

та блицы

э та

кома нд а

уд а ления

п рив илегии

буд ет

отклонена

п оскольку

ее

д ейств ие

оста в ит

э ти

та блицы

без

в ла д ельца

ч то

не

д оп уска ется

Поэ тому

п режд е

ч ем

уд а лить

п рив илегию

CONNECT

ка кому

-

либо

п ользов а телю

сна ч а ла

необход имо

уд а лить

из

ба з ы

д а нных

в се

соз д а нные

э тим

п ользов а телем

та блицы

Прив илегию

RESOURCE

уд а лять

отд ельно

не

требуется

д оста точ но

уд а лить

CONNECT

ч тобы

уд а лить

п ользов а теля

УП Р АЖ НЕ НИ Я

116.

Перед а йте

п ользов а телю

PETROV

п рав о

на

из менение

в

ба з е

д а нных

з на ч ений

оценок

д ля

з а п исей

о

студ ента х

117.

Перед а йте

п ользов а телю

SIDOROV

п р а в о

п еред а в а ть

д ругим