Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Неявное отклонение доступа




Запрещение доступа.

Неявное разрешение.

Разрешение для команд Transact SQL.

Этот класс разрешений контролирует возможность создания объекта в БД, а также создание самой БД и выполнение процедур резервного копирования (Create view, create table и т.д.).

Этот класс разрешений контролирует действия, которые могут быть выполнены только членами ролей сервера или владельцами объектов в БД. Неявные разрешения не предоставляются пользователям напрямую, он получает их только при определенных обстоятельствах. Например, пользователь может стать владельцем объекта БД, только если он сам создаст этот объект, либо если другой владелец объекта передаст ему права владения своим объектом. Владелец объекта имеет все права для выполнения любых действий с объектом, причем эти права нигде явно не указываются. Для конкретного действия, контролируемого разрешением, возможны три варианта состояния доступа: предоставления, запрещения, неявного отклонения. После создания пользователь не имеет никаких прав доступа кроме тех, которые разрешены для специальной роли БД Public.

В SQL-сервер существует возможность контролировать права доступа не только на уровне таблиц, но и на уровне колонок.

Для предоставления прав доступа используется команда GRANT.

GRANT

{ALL/permissions [..n]}

{[(column [..n])] ON

{table/view}

| ON {table/view} [(column[..n])]

| ON {stored_procedure}

TO security_account

[WITH GRANT OPTION]

[AS {group/role}]

Для разрешения выполнения команд SQL используется следующая инструкция:

GRANT {ALL/Statement [..n]}

TO security_account [...n]

При запрещении доступа к данным или командам Transact SQL аннулируются все разрешения на доступ пользователя на любом уровне иерархии. При этом гарантируется, что доступ останется запрещенным независимо от разрешений, предоставленных на более высоком уровне. Но иногда необходимо временно ограничивать доступ определенным пользователям к таблице. Вместо того чтобы убирать разрешение на доступ, в этом случае можно создать роль, в которой будет запрещен доступ к этой таблице, и включить пользователей в эту роль. Для запрещения пользователям доступа к объектам БД используется команда DENY.

DENY

{ALL/permissions [..n]}

{[(column [..n])] ON

{table/view}

| ON {table/view} [(column[..n])]

| ON {stored_procedure}

TO security_account [..n]

[CASCADE]

Для запрещения выполнения команд Transact SQL:

DENY {ALL/Statement [..n]}

TO security_account [...n]

Неявное отклонение доступа подобно запрещению доступа с тем отличием, что оно действует только на том уровне, на котором определено. Если пользователю на определенном уровне неявно отклонен доступ, он может получить его на другом уровне иерархии через членство в роли, имеющей право просмотра.

Для неявного отклонения доступа к объектам БД используется команда REVOKE.

REVOKE

{ALL/permissions [..n]}

{[(column [..n])] ON

{table/view}

| ON {table/view} [(column[..n])]

| ON {stored_procedure}

TO security_account [..n]

[CASCADE]

[AS {role/group}]

Для неявного отклонения разрешений на использование команд Transact SQL:

REVOKE {ALL/Statement [..n]}

TO security_account [...n]

Значения параметров команд:

ALL – означает, что пользователю будут предоставлены все возможные разрешения.

Permissions – список доступных операций, которые предоставляются пользователю. Можно предоставлять одновременно несколько разрешений.

Statement – предоставление разрешений на выполнение команд Transact SQL.

Security_account – указывается имя объекта системы безопасности, которую необходимо включить в роль. Это могут быть как учетные записи SQL-сервер, так и группы пользователей Windows.

With Grant Option – использование данного параметра позволяет пользователю, которому предоставляются права, назначать права на доступ к объекту для других пользователей.

As role/group – этот параметр позволяет указать участие пользователя в роли, которому предоставляется возможность предоставлять права другим пользователям.

Cascade – позволяет отзывать права не только у данного пользователя, но и у всех пользователей, которым он предоставил данные права.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 399; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.