- •Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «тюменский государственный нефтегазовый университет»
- •Инструментальные средства информационных систем
- •Часть I
- •Содержание
- •Пояснительная записка
- •Основные правила по технике безопасности Требования по электрической безопасности
- •Особенности электропитания монитора
- •Особенности электропитания системного блока
- •Система гигиенических требований
- •Общие требования к выполнению и оформлению лабораторных работ Допуск студентов к выполнению лабораторных работ
- •Порядок выполнения лабораторных работ
- •Требования к структуре, содержанию и оформлению отчетов по лабораторным работам
- •Порядок защиты лабораторных работ
- •Порядок оценивания лабораторной работы
- •Лабораторная работа №1 «Установка sql Server. Проверка установки»
- •Ход работы:
- •Контрольные вопросы:
- •Лабораторная работа №2 «Создание и управление базами данных»
- •Ход работы: Контрольные точки и их создание
- •Проверка целостности базы данных
- •Режимы выполнения команды dbcc
- •Dbcc checkalloc
- •Dbcc checkdb
- •Dbcc checktable
- •Dbcc checkfilegroup
- •Команды update statistics и recompile
- •Импорт/экспорт данных в sql Server
- •Общие правила разграничения доступа
- •Архитектура системы безопасности
- •Примечание
- •Предупреждение
- •Примечание
- •Примечание
- •Примечание
- •Пользователи
- •Внимание
- •Примечание
- •Роли сервера
- •Роли баз данных
- •Примечание
- •Роли приложения
- •Примечание
- •Создание и управление учетными записями
- •Примечание
- •Примечание
- •Шифрование данных
- •Примечание
- •Права доступа
- •Права на доступ к объектам баз данных
- •Примечание
- •Права на исполнение команд Transact sql
- •Неявные права
- •Запрещение доступа
- •Неявное отклонение доступа
- •Конфликты доступа
- •Обзор средств Transact sql
- •Ход работы:
- •Контрольные вопросы:
- •Лабораторная работа №4 «Создание, заполнение и просмотр баз данных»
- •3 Порядок выполнения работы
- •3.1 Проектирование баз данных
- •3.2 Проверка правильности, триггеры
- •3.3 Заполнение баз данных
- •3.4 Связывание баз данных и целостность ссылочной системы
- •3.5 Просмотр содержимого баз данных
- •Контрольные вопросы
- •Лабораторная работа №5 «Проектирование экранной формы»
- •Теоретический материал
- •Контрольные вопросы:
- •Лабораторная работа №6 «Анализ баз данных sql-запросы»
- •Теоретические сведения:
- •Ход работы:
- •Контрольные вопросы:
- •Список литературы
- •Основная литература
- •Дополнительная литература
- •Шарафутдинова Светлана Анатольевна инструментальные средства информационных систем
- •625000, Тюмень, ул. Володарского, 38.
- •625039, Тюмень, ул. Киевская, 52
Неявное отклонение доступа
Помимо уже рассмотренных операций предоставления и запрещения доступа, в системе безопасности MS SQL Server 2000 используется неявное отклонение доступа (revoke access). Неявное отклонение подобно запрещению доступа с тем отличием, что оно действует только на том уровне, на котором определено. Если пользователю на определенном уровне неявно отклонен доступ, он все же может получить его на другом уровне иерархии через членство в роли, имеющей право просмотра. По умолчанию доступ пользователя к данным неявно отклонен. Это можно рассматривать как «среднее состояние» между предоставлением и запрещением доступа или как отсутствие каких-либо разрешений.
Используйте команду REVOKE для неявного отклонения доступа к объектам базы данных:
REVOKE [GRANT OPTION FOR]
{ ALL [PRIVILEGES] | permission[,...n] }
{
[(column[,...n])] ON {table|view}
| ON {table|view} [(column[,...n])]
| ON {stored_procedure | extended_procedure}
}
TO security_account[,...n]
[CASCADE]
[ AS { group | role } ]
Для неявного отклонения разрешения на выполнение команд Transact SQL используется следующая команда:
REVOKE { ALL | statement[,...n] }
FROM security_account[,...n]
Смысл параметров аналогичен параметрам команд GRANT и DENY. Параметр GRANT OPTION FOR используется, когда необходимо отозвать право, предоставляемое параметром WITH GRANT OPTION команды GRANT. Пользователь при этом сохраняет разрешение на доступ к объекту, но теряет возможность предоставлять это разрешение другим пользователям.
В качестве примера рассмотрим такую ситуацию. Пользователю Malari, который является участником роли Centaurs, предоставлены права на доступ к таблице Materials. Если при помощи команды REVOKE мы отклоняем доступ к таблице для роли Centaurs, пользователь Malari все равно сможет обращаться к данной таблице, поскольку права для него определены явно. И только когда мы применим команду REVOKE персонально для него, он потеряет право доступе к таблице.
Неявное отклонение доступа позволяет более гибко конфигурировать систему безопасности.
Конфликты доступа
Разрешения, предоставленные роли или группе, наследуются их членами. Хотя пользователю может быть предоставлен доступ через членство в одной роли, роль другого уровня может иметь запрещение на действия с объектом. В таком случае возникает конфликт доступа.
При разрешении конфликтов доступа SQL Server руководствуется принципом, состоящим в том, что разрешение на предоставление доступа имеют самый низкий приоритет, а запрещение доступа — самый высокий. Это значит, что доступ к данным может быть получен только явным его предоставлением при отсутствии запрещения доступа на любом другом уровне иерархии системы безопасности. Если доступ явно не предоставлен, пользователь не сможет работать с данными.
Обзор средств Transact sql
В табл. 4 приведен список хранимых процедур и команд Transact SQL предназначенных для управления системой безопасности.
Табл. 3 Хранимые процедуры и команды Transact SQL, используемые для управления системой безопасности
Команда Transact SQL |
Назначение |
Sp_addapprole |
Создать роль для приложения |
Sp_addlogin |
Создать новую учетную запись SQL Server |
Sp_addrole |
Создать новую роль в базе данных |
Sp_addrolemember |
Добавить члена в роль базы данных |
Sp_addsrvrolemember |
Добавить нового члена в фиксированную роль сервера |
Sp_approlepassword |
Изменить пароль для роли приложения |
Sp_defaultdb |
Изменить базу данных по умолчанию для учетной записи |
Sp_defaultlanguage |
Изменить язык по умолчанию для учетной записи |
Sp_denylogin |
Запретить доступ пользователю или группе Windows NT |
Sp_dropapprole |
Удалить роль приложения |
Sp_droplinkedserver |
Удалить отображение учетной записи с другого сервера |
Sp_droplogin |
Удалить учетную запись SQL Server |
Sp_droprole |
Удалить роль базы данных |
Sp_droprolemember |
Удалить пользователя из роли базы данных |
Sp_dropsrvrolemember |
Удалить члена из роли сервера |
Sp_dropuser |
Удалить пользователя из базы данных |
Sp_grantdbaccess |
Разрешить доступ к базе данных учетной записи пользователям и группам Windows NT |
Sp_grantlogin |
Разрешить доступ к SQL Server |
Sp_helpdbfixedrole |
Выдать список фиксированных ролей в базе данных |
Sp_helplogins |
Просмотреть информацию об учетной записи |
Sp_helpntgroup |
Просмотреть информацию о группах Windows NT, которым предоставлен доступ к SQL Server |
Sp_helprole |
Просмотреть роли, определенные для базы данных |
Sp_helpsrvrole |
Выдать список фиксированных ролей сервера |
Sp_helpsrvrolemember |
Выдать информацию о члене роли сервера |
Sp_helpuser |
Просмотреть информацию о пользователе |
Sp_password |
Изменить пароль учетной записи SQL Server |
Sp_revokelogin |
Удалить пользователя или группу Windows NT |
Sp_setapprole |
Инициализировать роль приложения |
GRANT |
Предоставить доступ |
DENY |
Запретить доступ |
REVOKE |
Неявно отклонить доступ |