Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению icon

Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению




Скачати 79.63 Kb.
НазваЛабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению
Дата05.08.2012
Розмір79.63 Kb.
ТипЛабораторная работа

Лабораторная работа 4. Разработка системы пользователей базы данных.


Требования к программному обеспечению:


  1. Компьютер с установленным на нем приложением Borland SQL Explorer.

  2. Компьютер с установленный на нем СУБД MS SQL Server версии 7.0/2000/2003, и с установленной учебной базой CIS.

  3. СУБД MS SQL Server должна иметь запись о пользователе user (пароль-user) с привилегиями db_owner для всех объектов в рабочем пространстве CIS.


Теоретические сведения:


1. Система безопасности СУБД

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

Каждый пользователь проходит два этапа проверки системы безопасности при попытке доступа к данным:

  • Этап 1 – аутентификация,

  • Этап 2 – получение доступа к данным


Первый этап относится к уровню работы всего сервера СУБД. На первом этапе пользователь идентифицирует себя с помощью логического имени (login) и пароля (password).


Логическое имя и пароль хранятся на сервере СУБД в виде учетной записи (account).


Если данные были введены правильно, то считается, что процедура аутентификации пройдена, и данный сервер СУБД разрешает попытку доступа к конкретной базе данных.

Однако сама по себе аутентификация не дает пользователю права доступа к каким бы то ни было данным. Для получения доступа к данным необходимо, чтобы учетной записи пользователя соответствовал некоторый пользователь базы данных (database user).


^ Пользователь базы данных – совокупность разрешений и запретов на работу с данными в конкретной базе данных.


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

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

В том случае, когда учетная запись пользователя не отображается в пользователя базы данных, клиент все же может получить доступ к базе данных под гостевым именем guest (если оно не запрещено администратором БД). Гостевой вход позволяет минимальный доступ к данным только в режиме чтения.


Пользователи баз данных могут объединяться в роли (иногда – группы) для упрощения управления системой безопасности.


^ Роли базы данных объединяют нескольких пользователей в административную единицу и позволяют назначать права доступа к объектам базы данных для роли, наделяя этими правами всех участников этой роли.


Различают пользовательские и встроенные роли. Встроенные роли создаются автоматически при установке сервера СУБД (и не могут меняться). Различают встроенные роли уровня СУБД и уровня конкретной базы данных. Так, например, в SQL Server 2000 есть такие роли сервера:


^ Встроенная роль сервера

Назначение

Sysadmin

Может выполнять любые действия в SQL Server

Serveradmin

Выполняет конфигурирование и выключение сервера

Setupadmin

Управляет связанными серверами и процедурами, автоматически запускающимися при запуске SQL Server

Securityadmin

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

Processadmin

Управляет процессами, запущенными в SQL Server

Dbcreator

Может создавать и модифицировать базы данных

Diskadmin

Управляет файлами SQL Server

Bukladmin

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


SQL Server 2000 поддерживает такие встроенные роли уровня базы данных:


^ Встроенная роль сервера

Назначение

Db_owner

Имеет все права в базе данных

Db_accessadmin

Может добавлять или удалять пользователей

Db_securityadmin

Управляет всеми разрешениями, объектами, ролями и членами ролей

Db_ddladmin

Может выполнять любые команды DDL, кроме GRANT, DENY, REVOKE

Db_backupoperator

Может выполнять команды DBCC, CHECKPOINT, BACKUP

Db_datareader

Может просматривать любые данные в любой таблице

Db_datawriter

Может модифицировать любые данные в любой таблице

Db_denydatareader

Запрещается просматривать данные в любой таблице

Db_denydatawriter

Запрещается модифицировать данные в любой таблице


Кроме указанных ролей существует еще одна, неудаляемая роль – public. Участниками этой роли являются все пользователи, имеющие доступ к базе данных. Нельзя явно указать участников этой роли, т.к. все пользователи уже включены в нее.


^ 2. Манипулирование элементами системы безопасности СУБД

2.1 Создание учетной записи

Для создания учетной записи в MS SQL Server 2000 используется системная хранимая процедура sp_addlogin:

Ее формат таков:

sp_addlogin [@loginname=] login

[, [@passwd=] password]

[, [@defdb=] database]

[, [@deflanguage=] language]

[, [@sid=] SID]

[, [@encryptopt=] encryption_option]


где:

login - логическое имя (login)

password - пароль, который будет ассоциироваться с данной учетной записью

database - база данных по умолчанию. Сразу же после установления соединения с сервером пользователь будет работать в этой базе данных

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

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

encryption_option - определяет, будет ли шифроваться пароль данной учетной записи. По умолчанию пароль шифруется.


Пример 1.

Добавить учетную запись teacher к базе данных CIS.


EXEC sp_addlogin teacher, 123, CIS


^ 2.2 Создание пользователя базы данных


Для создания пользователя базы данных в MS SQL Server 2000 используется системная хранимая процедура sp_grantdbaccess (ранее - sp_adduser):

Ее формат таков:


sp_grantdbaccess [@loginame=] login

[,[@name_in_db=] user [OUTPUT]]


Использование параметра OUTPUT заставляет хранимую процедуру поместить значение параметра user созданного пользователя в некоторую переменную, для дальнейшей обработки.


Формат процедуры sp_adduser таков:


sp_adduser [@loginname=] login

[, [@name_in_db=] user]

[, [@grpname=] role]


где:

login - логическое имя (login)которое необходимо связать с создаваемым пользователем

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

role - роль, в которую данный пользователь будет включен.


Пример 2.

Добавить нового пользователя teacher_adb к базе данных CIS.


EXEC sp_adduser teacher, teacher_adb, db_owner


^ 2.3 Создание роли базы данных


Для создания роли базы данных в MS SQL Server 2000 используется системная хранимая процедура sp_addrole:

Ее формат таков:


sp_addrole [@rolename=] role

[, [@ownername=] owner]


где:

role - имя создаваемой роли. Должно быть уникальным в пределах БД

owner - имя владельца роли. Владельцем может быть только роль или пользователь из этой базы данных. По умолчанию, владелец - dbo


Эта процедура не может быть запущена как часть транзакции, определенной пользователем. Исполнять эту процедуру могут только участники роли сервера sysadmin, либо участники ролей db_securityadmin, db_owner.


Пример 3.

Добавление роли Managers.


EXEC sp_addrole Managers


^ 2.4 Добавление пользователя в роль


Используется процедура sp_addrolemember вида:


sp_addrolemember [@rolename=] role,

[@membername=] security_account]


где:

role - имя роли в которую добавляется пользователь.

security_account – пользователь базы данных, также – роль, что позволяет создавать иерархию ролей


Пример 4.

Добавление пользователя teacher_abd в роль Managers.


EXEC sp_addrolemember Managers, teacher_abd


^ 2.5 Удаление ролей, учетных записей.


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


Процедура sp_droprolemember вычеркивает участника из роли:

sp_droprolemember [@rolename = ] role ,
[@membername = ] security_account


Процедура sp_droprole удаляет роль (в том случае, если предварительно из роли были удалены все участники):


sp_droprole [@rolename=] role


Процедура sp_revokedbaccess (и ее устаревший аналог sp_dropuser) удаляет пользователя базы данных:

sp_revokedbaccess [@name_in_db =] name


Процедура sp_droplogin удаляет учетную запись из реестра сервера СУБД:


sp_droplogin [@loginame=] login


^ 2.6 Просмотр информации об учетных записях, ролях, привилегиях.


Для просмотра информации о текущих назначениях пользователей, ролей используются хранимые процедуры sp_helpuser, sp_helplogins, sp_helprole, sp_helprolemember.


Параметры их вызовов таковы:


sp_helpuser [[@name_in_db=] security_account]

sp_helplogins [[@LoginNamePattern=] login]

sp_helprole [[@rolename=] role]

sp_helprolemember [[@rolename=] role]


^

3. Условие лабораторной работы


  1. Для работы с базой данных будут использованы две роли – studentABD_XX и teacherABD_XX (XX – номер компьютера, за которым сидит исполнитель работы). Назначить роли teacher_XX полный доступ ко всем объектам базы данных на просмотр таблиц и выполнение запросов SELECT, но не на создание новых таблиц и не на изменение данных в таблицах. Назначить роли studentABD_XX доступ владельца базы данных, т.е. полный доступ на чтение и на изменение любых объектов базы данных. Составьте план выполнения необходимых хранимых процедур для того, чтобы выполнить такие действия, на бумаге.

  2. Пусть к данной базе данных будут иметь доступ два пользователя роли teacherABD_XX (teachABD1_XX, teachABD2_XX) и один пользователь роли studentABD_XX (studABD1_XX). Составьте план выполнения необходимых хранимых процедур для того, чтобы выполнить такие действия, на бумаге.

  3. Задайте от одной до трех учетных записей для доступа к серверу. Составьте план выполнения необходимых хранимых процедур для того, чтобы выполнить такие действия, на бумаге.

  4. Откройте CIS в приложении Borland SQL Explorer.

  5. В окне запросов ввести по очереди все запросы на создание системы пользователей и учетных записей для доступа к БД. Выполнить эти запросы.

  6. Пригласить преподавателя для просмотра результатов.

Схожі:

Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Синхронизация idef0 и dfd диаграмм бизнес процесса предприятия со структурой реляционной базы данных, на примере case-систем bpwin/erwin Требования к программному обеспечению
Лабораторная работа Синхронизация idef0 и dfd диаграмм бизнес процесса предприятия со структурой реляционной базы данных, на примере...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Разработка триггера и хранимой процедуры. Требования к программному обеспечению
Компьютер с установленный на нем субд ms sql server версии 0/2000/2003, и с установленной учебной базой cis
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Знакомство с технологией структурного анализа и проектирования sadt, на примере case-системы bpwin Требования к программному обеспечению
Лабораторная работа Знакомство с технологией структурного анализа и проектирования sadt, на примере case-системы bpwin 0
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Использование редактора запросов sql borland sql explorer(TM) для знакомства с основными объектами баз данных. Требования к программному обеспечению
...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Изучение приемов администрирования ресурсов Windows 2000
Цель работы: Научиться работать с учетными записями пользователей и группами пользователей, назначать права пользователей на определенные...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Изучение приемов администрирования ресурсов Windows 2000
Цель работы: Научиться работать с учетными записями пользователей и группами пользователей, назначать права пользователей на определенные...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Знакомство с диаграммами расписаний проектов. Создание Gantt диаграммы расписания проекта. Требования к программному обеспечению
Лабораторная работа Знакомство с диаграммами расписаний проектов. Создание Gantt диаграммы расписания проекта
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа Инструментальные средства Total Quality Management (tqm). Требования к программному обеспечению
Поэтому усилие, направленное на правильные 20 может решить 80 проблем. Двойные (плотные) диаграммы Парето могут использоваться, для...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению icon1 Создание базы данных
Для создания новой базы данных нужно при открытии ms access выбрать опцию Новая база данных. В появившемся диалоговом окне указать...
Лабораторная работа Разработка системы пользователей базы данных. Требования к программному обеспечению iconЛабораторная работа 4 Предложение select в sql oracle. Основные возможности Содержание Цели лабораторной работы 2 Теоретические основы 2
Приобрести практический опыт по поиску данных в таблицах базы данных с использованием sql*Plus
Додайте кнопку на своєму сайті:
Документи


База даних захищена авторським правом ©zavantag.com 2000-2013
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації
Документи