Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Система безопасности Database Engine 2011.doc
Скачиваний:
11
Добавлен:
26.08.2019
Размер:
1.06 Mб
Скачать

Роли базы данных Создание роли с использованием Transact-sql.

Можно добавлять роли базы данных, если нужно сгруппировать пользователей в соответствии с требованиями определенных разрешений.

Задание владельца роли (Owner):

Созданная новая роль (Auditors), владелец роли (Ivanov), добавленный член роли (konadmin).

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

Создание роли и добавление члена роли в Transact sql

Пример создает роль базы данных с именем Auditors и добавляет пользователя Peter в эту новую роль.

USE AdventureWorks;

GO

--Создаем роль Auditors в базе данных AdventureWorks.

CREATE ROLE Auditors;

GO

--Добавляем пользователя Peter к роли Auditors

EXECUTE sp_addrolemember ‘Auditors’, ‘Peter’;

Удалить пользователей из роли базы данных можно при помощи системной хранимой процедуры sp_droprolemember. Если нужно удалить роль базы данных, то используется инструкция DROP ROLE.

Пример удаляет пользователя Peter из роли базы данных Auditors, а затем удаляет роль Auditors.

USE AdventureWorks;

GO

--Удаляем пользователя Peter из роли Auditors

EXECUTE sp_droprolemember ‘Auditors’, ‘Peter’;

--Удаляем роль Auditors из текущей базы данных

DROP ROLE Auditors;

Предоставление индивидуальных (гранулярных) разрешений. Управление доступом к таблицам и столбцам.

SQL Server 2005 предоставляет более гранулярную структуру разрешений, что позволяет с большей точностью контролировать операции входа.

Доступом пользователя к таблицам можно управлять при помощи управления разрешениями на таблицу. Эти разрешения можно назначать пользователям базы данных и ролям.

Разрешения, которыми можно управлять для таблиц:

Разрешения на доступ к таблице

Разрешения

Описание

ALTER

Разрешает изменять свойства таблицы

CONTROL

Предоставляет разрешения, аналогичные владению

DELETE

Разрешает удалять строки из таблицы

INSERT

Разрешает добавлять столбцы в таблицу

REFERENCES

Разрешает ссылаться на таблицу из внешнего ключа

SELECT

Разрешает осуществлять выборку строк из таблицы

TAKE OWNERSHIP

Разрешает присвоение схемы или таблицы

UPDATE

Разрешает изменять строки в таблице

VIEW DEFINITION

Разрешает доступ к метаданным таблицы

В SQL Server 2005 есть возможность предоставить или отклонить доступ к отдельным столбцам, вместо того, чтобы работать со всей таблицей. Эта возможность предоставляет гибкость в отклонении доступа, например, к конфиденциальным данным в некоторых столбцах.

Разрешения, которыми можно управлять для столбцов таблицы:

Разрешения для столбцов

Разрешение

Описание

SELECT

Разрешает выполнить выборку из столбца

UPDATE

Разрешает изменять данные в столбце

Управление доступом осуществляется через иерархию разрешений SQL Server 2005. Управлять этой иерархией разрешений можно при помощи SQL Server Management Studio и инструкций GRANT, DENY и REVOKE.