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

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

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

Добавлен: 02.04.2021

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

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

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

6. 

О пр еделен и е

пр а в

до ступа

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

к

да н н ы м

6.1. 

П ол ь з оват ел и

и

привил егии

К а жд ый

кто

имеет

д оступ

к

ба з е

д а нных

на з ыв а ется

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

SQL 

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

обыч но

в

многоп ользов а тельских

сред а х

которые

требуют

раз гранич ения

п ра в

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

с

точ ки

з рения

д оступ а

к

д а нным

и

п рав

на

в ып олнение

с

ними

тех

или

иных

ма нип уляций

Д ля

э тих

целей

в

  SQL 

реа лиз ов а ны

сред ств а

п оз в оляющ ие

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

и

контролиров а ть

п рив илегии

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

ба з ы

д а нных

.  

К а жд ый

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

в

сред е

  SQL 

имеет

сп ециа льное

имя

или

ид ентифика тор

с

п омощ ью

которого

осущ еств ляется

ид ентифика ция

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

д ля

уста нов ки

и

оп ред еления

его

п ра в

с

точ ки

з рения

д оступ а

к

д а нным

К а жд а я

п осла нна я

к

СУ Б Д

кома нд а

  SQL-

з а п р оса

а ссоциируется

СУ Б Д

с

ид ентифика тором

д оступ а

к

д а нным

конкретного

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

.  

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

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

с

п омощ ью

след ующ ей

кома нд ы

CREATE USER

 <

и м я

_

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

IDENTIFIED BY 

<

па р о ль

После

в ып олнения

э той

кома нд ы

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

ста нов ится

из в естен

ба з е

д а нных

но

п ока

не

может

в ып олнять

ника ких

оп ера ций

.  

У д а ление

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

п роиз в од ится

кома нд ой

DROP USER

 <

и м я

_

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

> . 

Н а з на ч а емые

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

п рив илегии

э то

то

ч то

оп р ед еляет

может

ли

ука з а нный

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

в ып олнить

д а нную

кома нд у

на д

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

объектом

ба з ы

д а нных

или

нет

Имеется

несколько

тип ов

п р ив илегий

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

нескольким

тип а м

оп ераций

Прив илегии

д а ются

и

отменяются

д в умя

кома нд а ми

 SQL, 

соотв етств енно

GRANT

уста нов ка

п рив илегий

и

  

REVOKE

отмена

п р ив илегий


background image

127

6.2. 

С т андарт ны е

привил егии

Прив илегии

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

ста нд а р том

  SQL 

э то

п рив илегии

объекта

Э то

оз на ч а ет

ч то

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

имеет

п рив илегию

  (

п ра в о

на

в ып олнение

д а нной

кома нд ы

только

на

оп ред еленном

объекте

в

ба з е

д а нных

Прив илегии

объекта

св яз а ны

од нов ременно

и

с

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

и

с

та блица ми

ба з ы

д а нных

То

есть

п рив илегия

д а ется

оп ред еленному

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

в

ука з а нной

та блице

Э то

может

быть

ка к

ба з ов а я

та блица

та к

и

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

.  

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

соз д а в ший

та бл ицу

  (

л юбого

в ид а

), 

яв ляется

в ла д ельцем

э той

та блицы

Э то

оз на ч а ет

ч то

э тот

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

имеет

в се

п р ив илегии

относящ иеся

к

э той

та блице

в

том

ч исле

он

может

п еред а в а ть

п рив илегии

на

работу

с

э той

та блицей

д ругим

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

.  

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

могут

быть

на з на ч ены

след ующ ие

п рив илегии

SELECT

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

может

в ып олнять

з а п росы

к

та блице

INSERT

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

может

в ып олнять

в

та блице

кома нд у

 INSERT

UPDATE

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

может

в ып олнять

в

та блице

кома нд у

UPDATE

.

Э та

п рив илегия

может

быть

огранич ена

д ля

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

столбцов

та блицы

DELETE

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

может

в ып олнять

в

та блице

кома нд у

DELETE

REFERENCES

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

может

оп р ед елить

в нешний

ключ

  (

только

д ля

ORACLE

), 

который

исп ользует

од ин

или

более

столбцов

э той

та блицы

ка к

р од ительский

ключ

Воз можно

огранич ение

э той

п рив илегии

д ля

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

столбцов

К роме

того

могут

быть

неста нд а р тные

п р ив илегии

объекта

та кие

ка к

INDEX

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

имеет

п р а в о

соз д а в а ть

инд екс

в

та блице

SYNONYM

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

имеет

п ра в о

соз д а в а ть

синоним

д ля

объекта

;  

ALTER

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

имеет

п рав о

в ып олнять

кома нд у

ALTER

TABLE

в

та блице

;  

EXECUTE

п оз в оляет

в ып олнять

п роцед уру

Н а з на ч ение

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

э тих

п рив илегий

осущ еств ляется

с

п омощ ью

кома нд ы

GRANT


background image

128

6.3. 

Ком анда

GRANT

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

яв л яющ ийся

в ла д ельцем

та блицы

STUDENT

может

п еред а ть

д ругому

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

  (

п усть

э то

буд ет

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

с

именем

IVANOV

п р ив илегию

SELECT

с

п омощ ью

след ующ ей

кома нд ы

GRANT

SELECT

ON

STUDENT

TO

IVANOV

Теп ерь

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

с

именем

IVANOV

может

в ып олнять

SELECT

-

з а

-

п росы

к

та блице

STUDENT

Б ез

на лич ия

д ругих

п р ив илегий

он

может

только

в ы би р а т ь

з на ч ения

но

не

может

в ып олнять

любые

д ейств ия

которые

бы

в оз д ейств ов а ли

на

з на ч ения

в

та блице

STUDENT

в ключ а я

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

та блицы

STUDENT

в

ка ч еств е

род ительской

та блицы

в нешнего

кл юч а

К огд а

SQL 

п олуч а ет

кома нд у

GRANT

п ров еряются

п рив илегии

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

д а в шего

э ту

кома нд у

ч тобы

оп р ед елить

д оп устимость

кома нд ы

GRANT

д ля

э того

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

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

IVANOV

са мостоятельно

не

может

з а д а ть

э ту

кома нд у

О н

та кже

не

может

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

п ра в о

SELECT

д ругому

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

та к

ка к

та бл ица

п р ина д лежит

не

ему

  (

ниже

буд ет

п ока з а но

ка к

в ла д елец

та блицы

может

п еред а ть

д ругому

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

п рав о

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

п рив илегий

).  

К ома нд а

      

GRANT

INSERT

ON

EXAM

_

MARKS

TO

IVANOV

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

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

IVANOV

п рав о

в в од ить

в

та блицу

EXAM

_

MARKS

нов ые

строки

В

кома нд е

GRANT

д оп устимо

ука з ыв а ть

ч ерез

з а п ятые

сп исок

п ред оста в ляемых

п рив илегий

и

сп исок

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

которым

они

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

Н а п ример

GRANT SELECT

INSERT

ON

SUBJECT

TO

IVANOV

PETROV

При

этом

в есь

ука з а нный

сп исок

п р ив илегий

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

в сем

ука з а нным

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

В

строгой

  ANSI-

интерп рета ции

нев оз можно

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

п рив илегии

д ля

нескольких

та блиц

од ной

кома нд ой

GRANT


background image

129

6.4. 

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

аргум ент ов

ALL

и

PUBLIC

А ргумент

ALL

PRIVILEGES

  (

в се

п рив илегии

или

п росто

ALL

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

в место

имен

п рив илегий

в

кома нд е

GRANT

ч тобы

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

в се

п рив илегии

в

та блице

Н а п ример

кома нд а

  

GRANT

ALL

PRIVILEGES

ON

STUDENT

TO

IVANOV

или

более

коротко

GRANT

ALL

ON

STUDENT

TO

IVANOV

п еред а ет

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

IVANOV

в есь

на бор

п рив илегий

в

та блице

STUDENT

.  

А ргумент

PUBLIC

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

д ля

п ер ед а ч и

ука з а нных

в

кома нд е

п рив илегий

в сем

оста льным

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

Н а иболее

ч а сто

э то

п рименяется

д ля

п рив илегии

SELECT

в

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

ба з ов ых

та блица х

или

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

которые

необход имо

сд ела ть

д оступ ными

д ля

любого

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

Н а п ример

ч тобы

п оз в олить

любому

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

п олуч а ть

информа цию

из

та блицы

EXAM

_

MARKS

можно

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

кома нд у

GRANT

SELECT

ON

EXAM

_

MARKS

TO

PUBLIC

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

в сех

п рив илегий

к

та блице

в сем

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

обыч но

яв ляется

нежела тельным

Все

п р ив илегии

з а

исключ ением

SELECT

п оз в оляют

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

из менять

(

или

в

случ а е

REFERENCES

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

сод ержа ние

та блицы

п оэ тому

ра з решение

в сем

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

из менять

сод ержа ние

та блиц

может

в ыз в а ть

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

п роблемы

обесп еч ения

безоп а сности

и

з а щ иты

д а нных

Тем

более

ч то

п рив илегия

PUBLIC

не

огра нич ена

в

п еред а ч е

п рав

только

текущ им

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

Л юбой

нов ый

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

д оба в ляемый

к

системе

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

п олуч а ет

в

э том

случ а е

п олный

на бор

п рив илегий

на з на ч енный

ранее

в сем

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

Поэ тому

д ля

огр а нич ения

д оступ а

к

та блице

в сем

и

в сегд а

луч ше

в сего

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

п рив илегии

отлич ные

от

SELECT

только

инд ив ид уа льным

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

.  


background image

130

6.5. 

О т м ена

привил егий

О тмена

п р ив илегии

осущ еств ляется

с

п омощ ью

кома нд ы

REVOKE

котора я

имеет

синта ксис

а на логич ный

кома нд е

GRANT

.  

Н а п ример

кома нд а

  

REVOKE

INSERT

ON

STUDENT

FROM

PETROV

отменяет

п рив илегию

INSERT

в

та блице

STUDENT

д ля

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

PETROV

Воз можно

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

в

кома нд е

REVOKE

сп исков

п рив илегий

и

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

Н а п ример

REVOKE

INSERT

DELETE

ON

STUDENT

  

FROM

PETROV

SIDOROV

След ует

иметь

в

в ид у

ч то

п рив илегии

отменяются

тем

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

который

их

п ред оста в ил

и

п р и

э том

отмена

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

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

на

в сех

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

п ол уч ив ших

от

него

э ту

п рив илегию

6.6. 

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

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

дл я

ф ил ь т рац ии

привил егий

Д ейств ия

п рив илегий

можно

сд ела ть

более

точ ными

исп ользуя

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

При

п еред а ч е

п р ив илегии

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

в

ба з ов ой

та блице

она

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

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

на

в се

строки

а

п р и

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

в оз можных

исключ ений

UPDATE

и

REFERENCES

и

на

в се

столбцы

та блицы

Соз д а в а я

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

котор ое

ссыла ется

на

ба з ов ую

та блицу

и

з а тем

п еред а в а я

п р ив илегию

уже

на

э то

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

можно

огранич ить

э ти

п рив илегии

любыми

в ыражениями

в

з а п росе

сод ержа щ емся

в

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

Та кой

метод

расширяет

в оз можности

кома нд ы

GRANT

Д ля

соз д а ния

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

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

д олжен

обла д а ть

п рив илегией

SELECT

в о

в сех

та блица х

на

которые

он

ссыла ется

в

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

Е сли

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

мод ифицир уемое

то

люба я

из

п рив илегий

INSERT

UPDATE

и

DELETE

котора я

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

   

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

в

ба з ов ой

та блице

буд ет

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

расп ространяться

на

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

Е сли

п рив илегии

на

обнов ление

отсутств уют

то

их

нев оз можно

п олуч ить

и

в

соз д а нных