|
Программирование >> Реализация баз данных
Занятие 3 Реализация рирование системы безопасности 405 3. На панели Editor в окне Query введите и исполните следующий код: sp addlogin @loglname = devuser, @passwd = devpass Теперь разработчик сможет подключиться к SQL Server посредством идентификатора DevUser, Задан лишь один из необязательных параметров sswd. поскольку для этого пользователя подходят значения, заданные по умолчанию для других не определяемых в программе параметров. 4. На панели Editor в окне Query введите и исполните следующий код: sp. helplogins На панели Results в окне Query выводятся все учетные имена системы безопасности, имеющие право подключения к SQL Server, Обратите внимание на учетные имена и sa, включенные в список помимо трех добавленных ранее учетных имен. Учетные имена BLIILTlN\AdministratorH sa создаются программой SQL Server Setup. Учетную запись sa из списка аутентификации удалить нельзя. ► Настройка авторизации учетнгх записей в BookShopDB 1. На панели Editor в окне Query введите и исполните следующий код: EXEC sp grantdbacces iname = BUILTIN\user3\ @name in db = All Staff EXEC sp grantbbaccess @ioginame = UBINinanagers EXEC sp grantdbaccess @loginan)e - devuser EXEC spgrantdbaccess Шод±пате = LAB1\manager01 EXEC sp grantdbaccess #loginame = LABAstaffOr EXEC sp grartdbaccess aioginsre = LABINstaffOa Теперь для учетных записей определено соответствие БД BooliShopDB. Труппе Users дан псевдоним All Staff. Записи agerO I создается отдельно от группы Managers, поскольку для нее необходимо назначить специальные привилегии в БД. Две из учетных записей Staffs ffOI А1)2 создаются отдельно от группы Users в силу . же причин. 2. На панели Editor в окне Query введите и исполните следующий код: sp fielouser На панели Results в окне Query выводится список пользователей, авторизованных для доступа к БД BookShopDB. Обратите внимание, что в списке указано учетное имя dbo. Это специальное учетное им ел1:.11:! БД появляется в каждой БД. С его помощью нельзя пройти или авторизацию для доступа к БД. * Настройка разрешения дл ованнмх учетнгх имен L На панели Editor в окне Query введите и исполните следующий код: sp helprotect ©name = NULL, эияегпате = pubii На панели Results в окне Query выводится список разрешений, назначенных роли Public. К этой роли приписаны все авторизованные пользователи, поэтому именно с. нее следует начинать назначение разрешений, чтобы реализовать рхиго системы безопасности. Обратите внимание на список разрешений, в котором видно, что роль Public обладает разрешением SELECT на работу с объектом для многих локальных системных таблиц, но для пользовательских таблиц разрешения на работу с объектами или исполнение SQL-выражений у этой роли отсутствуют. 1. На панели Editor в окне Quer ците и исполните ЮЩМЙ код: GRANT SELECT on authors to public GRANT SELECT on bookauthors to public GRANT SELECT ON oookconditi. TO public . GRANT SELECT ON books TO public .j. SRANT SELECT ON customers TC public GRANT SELECT ON : py . TO public ; grant select, insert, update, delete . .. / ON orders TO public GRANT SELECT, INSERT UPDATE, DELETE ON bookorders TO public grant select, insert, update. delete , , ON orderstatus TO public Теперь роли Public назначается разрешение SELECT для всех пользовательских таблиц кроме Employees и Positions. Роли Public также предоставлены разрешения INSERT, UPDATE и DEEETE для таблиц Orders, UookOrders и OrderSlatus, Запустите helprotcct еще раз, если нужно проверить, какие разрешения установлены. Пр ОДИМ0С1и это можно сделать и в Enterprise Manager. 3. На панели Editor в окне Query введите и исполните код: grant insert, update, delete ON authors TO LAei\inar,agers] grant insert, update, delete ON bookauthors TO [1ав1\таладэг5] grant insert, update, delete ON bookcondition to [LAB1\managers] GRANT insert, update, delete - . , ON books TO [LABIXdianagers] grant insert, update, delete ON customers TO I ! ab1\nianagerf.] grant insert, update, delete ON formofpayment TO [LABIVmanagers] GRANT ALL ON employees TO [LABlViianagers] GRANT ALL ON positions to [LAB1\,managersl В результате формируется иерархия системы безопасности, поскольку группа Managers является членом роли Public, Эта роль получила разрешения, которые наследует группа Managers. Те разрешения, которые не были назначены роли Public, непосредственно группе Managers. Таким образом, действующим набором прав группы Managers является полный набор разрешений для всех пользовательских таблиц. Обратите внимание на последнюю пару операторов GRANT, которые определяют разрешения, которые назначить. Роль не имеет разрешений для работы с таблицами Employees и Positions. 1 Назначение членства uuaiii мп роли 1. На панели Editor в окне введите и исполните следующий код: exe стЬег (Srolename - db.backupoperator, emembername - LABAstaffOI Е?(ЕС spaOdrolfiTiember relenaoie = dtjhackupoperator Теперь два члена персонала являются членами фиксированной роли на уровне БД db backupopcrator и могут создавать резервные копии БД BookShopDB. 2. На панели Editor в окне Query введите и исполните следующий код: EXE iember iloginame - LAB1\managers\ iSirolename = securltyadinin EXE ember giloglname = LABl\inanager01, ®rnlenarne - SysAdmin EXEC ::p addsrvrolemember ©loQinarne - devuser. !M L-iuname = SysAdmin Группа Managers теперь является членом фиксированной роли на уровне серпег а таким образом, всем менеджерам предоставлено право выполнять администрирование системы безопасности SQL Server. MaiiagcrUl и DevUser - члены фиксированной роли на уровне сервера SysAdmin и обладают полным доступом к SQL Server. Обратите внимание, что входные отличаются от таковых для Резюме Для реализации систем шсносиг предусмотрены такие инструменты БД, как Enterprise Manager и Query Analyzer. Первый шаг при решении этой задачи - настройка аутентификации путем создания учетных имен системы безопасности SQL Server и наделение их разрешениями на подключение к SQL Server. Учетными именами также могут быть учетные загни, и пользователей и групп Windows, а также регистрационные идентификаторы SQL Server. Аутентификацию учетной записи настраивают средствами узла Logins консоли Enterprise Manager или системных хранимых процедур и Для конфигурирования аутентификации идентификаторов SQL Server используют процедуры sp addlogin и sp drop!ogin, Второй шаг реализации системы безопасности - авторизация учетных записей для доступа к БД. Настроить авторизацию учетных записей мо толяет вложенный узел Users, в узле консоли Enterprise Manager для данной БД, или системные храни-мы grantdbaccess cdbaccess. Авторизация в БД предоставляет минимальные разрешения для работы с этой БД. Для управления разрешениями предназначены свойства учетной записи в Enterprise Manager или свойства объекта. Также это можно сделать в Query Analyzer, используя операторы GRANT, REVOKE и DENY. Последний шаг при реализации системы безопасности - управление ролями, которое включает создание и удаление ролей, а также управление членством в них. Удаляют и создают роли средствами узла Roles консоли Enterprise Manager или системных хранимых процедур. Для создания ролей служат системные хранимые процедуры spaddrole и spaddapprole, для удаления - процедура roprole. Управляют членством в ролях с по-0щью узлов Roles и Server Roles консоли Enterprise Manager. Для этой же цели предназначены системные хранимые процедуры и Прикладные роли не имеют членов. Для активации прикладных ролей используется системная хранимая процедура
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |