Книга: Обработка баз данных на Visual Basic®.NET

Применение ограничений безопасности в программе SQL Query Analyzer

Применение ограничений безопасности в программе SQL Query Analyzer

Параметры системы безопасности можно контролировать с помощью программы SQL Query Analyzer. Обычно для этого используется тот же пакет команд SQL, что и для создания базы данных. Такой порядок позволяет разработчику учесть и применить все необходимые ограничения безопасности для вновь созданных объектов базы данных.

Для создания новой учетной записи со средствами аутентификации SQL Server с помощью программы SQL Query Analyzer следует использовать хранимую процедуру sp_addlogin. Например, чтобы создать учетную запись Frances, выполните такую команду:

sp_addlogin 'Frances'

А чтобы создать пароль stairmaster для учетной записи Frances, выполните команду

sp_addlogin 'Frances', 'stairmaster'

Если вместо создания учетной записи SQL Server требуется добавить уже существующую учетную запись Windows, то для этого нужно аналогичным образом использовать хранимую процедуру sp_grantlogin. Учтите, однако, что в таком случае нельзя указать пароль, так как в SQL Server пароли не являются отдельной частью определения учетной записи Windows (потому что они поддерживаются системой безопасности Windows).

Чтобы пользователь с учетной записью Frances мог работать с базой данных Novelty, используйте хранимую процедуру sp_adduser.

USE Novelty
GO
sp_adduser 'Frances', 'Frannie'
GO
 

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

USE Novelty
GO
SELECT name, dbname
FROM syslogins

Для включения нового пользователя в состав группы пользователей с ролью базы данных db_datawriter выполните хранимую процедуру sp_addrolemember.

USE Novelty
GO
sp_addrolemember 'db_datawriter', 'Frannie'

Для отображения списка всех ролей базы данных выполните хранимую процедуру sp_helprole.

Чтобы выдать и отменить разрешения для любого объекта базы данных, используйте команды SQL GRANT и REVOKE соответственно. Команда GRANT разрешает пользователю выполнять указанную роль, а команда REVOKE отменяет разрешение. Например, для выдачи членам роли public разрешения на полный доступ к таблице Customer воспользуйтесь следующей командой SQL:

GRANT ALL
ON tblCustomer
TO public

А для выдачи членам роли public разрешения только на выборку данных из таблицы tblCustomer воспользуйтесь командой SQL

GRANT SELECT
ON tblCustomer
TO public

Для отмены разрешения на полный доступ к таблице tblCustomer со стороны членов роли public используйте команду SQL REVOKE.

REVOKE ALL
ON tblCustomer
TO public

Аналогично можно указывать разрешения на обновление, выборку, удаление и вставку данных в таблицы и представления. Более того, разрешения можно выдавать и отменять специально для выполнения хранимых процедур.

Оглавление книги


Генерация: 5.121. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз