Управление доступом

Содержание

Слайд 2

Управление доступом

Управление доступом

Слайд 3

Каждая СУБД должна поддерживать механизм, гарантирующий, что доступ к базе данных смогут получить только

Каждая СУБД должна поддерживать механизм, гарантирующий, что доступ к базе данных смогут
те пользователи, которые имеют соответствующее разрешение. 

Слайд 4

В языке SQL предусмотрен набор операторов, предназначенный для организации защиты таблиц в

В языке SQL предусмотрен набор операторов, предназначенный для организации защиты таблиц в
базе данных:
GRANT
REVOKE
Механизм защиты построен на использовании:
- идентификаторов пользователей;
- предоставляемых прав;
- привилегии.

Слайд 5

Идентификатором пользователя называется обычный идентификатор языка SQL, применяемый для обозначения некоторого пользователя базы данных.
 Каждому пользователю назначается собственный

Идентификатором пользователя называется обычный идентификатор языка SQL, применяемый для обозначения некоторого пользователя
(уникальный) идентификатор, присваиваемый администратором базы данных.
Идентификатор пользователя связывается с паролем.

Слайд 6

Каждый выполняемый СУБД SQL-оператор выполняется от имени какого-либо пользователя. 
Идентификатор пользователя определяет, на какие

Каждый выполняемый СУБД SQL-оператор выполняется от имени какого-либо пользователя. Идентификатор пользователя определяет,
объекты базы данных пользователь может ссылаться и какие операции с этими объектами он имеет право выполнять.

Слайд 7

Каждый созданный SQL-объект имеет своего владельца, который изначально является единственной персоной, знающей о

Каждый созданный SQL-объект имеет своего владельца, который изначально является единственной персоной, знающей
существовании данного объекта и имеет право выполнять с ним любые операции.

Слайд 8

Привилегиями, или правами, называются действия, которые пользователь имеет право выполнять в отношении данной таблицы базы данных

Привилегиями, или правами, называются действия, которые пользователь имеет право выполнять в отношении
или представления.
В стандарте SQL определяется следующий набор привилегий:
SELECT – право выбирать данные из таблицы;
INSERT – право вставлять в таблицу новые строки;
UPDATE – право изменять данные в таблице;
DELETE – право удалять строки из таблицы;
REFERENCES – право ссылаться на столбцы указанной таблицы в описаниях требований поддержки целостности данных;
USAGE – право использовать домены, проверки и наборы символов.

Слайд 9

Привилегии INSERT и UPDATE могут ограничиваться лишь отдельными столбцами таблицы, в этом случае пользователю разрешается модифицировать значения только

Привилегии INSERT и UPDATE могут ограничиваться лишь отдельными столбцами таблицы, в этом
указанных столбцов.
Привилегия REFERENCES распространяется исключительно на отдельные столбцы таблицы, что позволяет использовать их имена в формулировках требований защиты целостности данных (например для CHECK и FOREIGN KEY при определении в других таблицах).

Слайд 10

Когда пользователь с помощью оператора CREATE TABLE создает новую таблицу, он автоматически

Когда пользователь с помощью оператора CREATE TABLE создает новую таблицу, он автоматически
становится ее владельцем и получает по отношению к ней полный набор привилегий.
Для обеспечения доступа пользователям, владелец должен явным образом предоставить необходимые права, для чего используется оператор GRANT.

Слайд 11

Предоставление привилегий пользователям
Оператор GRANT применяется для предоставления привилегий в отношении поименованных объектов

Предоставление привилегий пользователям Оператор GRANT применяется для предоставления привилегий в отношении поименованных
базы данных указанным пользователям. Обычно его использует владелец таблицы с целью предоставления доступа к ней другим пользователям .

Слайд 12

Предоставление привилегий пользователям
Оператор GRANT имеет следующий формат:
<предоставление_привилегий>::=
GRANT {<привилегия>[,...n] | ALL PRIVILEGES}

Предоставление привилегий пользователям Оператор GRANT имеет следующий формат: ::= GRANT { [,...n]

ON имя_объекта TO {<идентификатор_пользователя> [,...n]| PUBLIC}
[ WITH GRANT OPTION]
ALL PRIVILEGES – все привилегии для указанного пользователя
PUBLIC – всем пользователям, существующим и создаваемым заново
WITH GRANT OPTION – право передачи привилегий другим пользователям, указанных в операторе GRANT

Слайд 13

Предоставление привилегий пользователям
Параметр <привилегия> представляет собой:
<привилегия>::=
{SELECT | DELETE | INSERT [(имя_столбца[,...n])] | UPDATE

Предоставление привилегий пользователям Параметр представляет собой: ::= {SELECT | DELETE | INSERT
[(имя_столбца[,...n])]} |
REFERENCES [(имя_столбца[,...n])] |
USAGE }

Слайд 14

Отмена предоставленных пользователям привилегий
Оператор REVOKE имеет следующий формат:<отмена_привилегий>::=
REVOKE [GRANT OPTION FOR] {<привилегия>[,...n] |

Отмена предоставленных пользователям привилегий Оператор REVOKE имеет следующий формат: ::= REVOKE [GRANT
ALL PRIVILEGES}
ON имя_объекта
FROM {<идентификатор_пользователя> [,...n]|PUBLIC}
[RESTRICT | CASCADE]
ALL PRIVILEGES – отмена всех привилегий предоставленных ранее
GRANT OPTION FOR – отменяет возможность передачи привилегий
RESTRICT – успешно выполняется команда REVOKE если привилегии не образуют у других пользователей «оставленных» привилегий.
CASCADE – удаляет все привилегии, которые остались у других пользователей
Имя файла: Управление-доступом-.pptx
Количество просмотров: 152
Количество скачиваний: 0