Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум_ИСРКЭС_Сусленкова.doc
Скачиваний:
271
Добавлен:
16.03.2015
Размер:
3.35 Mб
Скачать

Лабораторная работа № 9 - Безопасность вMssqlServer

Цель работы: Познакомиться с политикой безопасности MS SQL Server, с возможностями Transact – SQL по созданию схем, логинов, пользователей и определения прав пользователей. Научиться организовывать со стороны клиентского приложения удаленное управление правами доступа к данным БД.

Задание №1: Создание логинов, пользователей и предоставление прав пользователям средствами transact-sql.

Указание: Перед выполнением работы ознакомьтесь с теоретическим материалом в презентации к лекции Введение в SQL Server, тема Безопасность.

Ход работы:

  1. Запустите MS SQL Server Management Studio, подключитесь к серверу, используя технологию 1

  2. Выберите контекстом свою базу данных свою БД, используя технологию 6

  3. Найдите на панели инструментов среды кнопку «Создать запрос» и нажмите ее.

  4. С помощью команд Transact – SQL создадим новый логин для вашей базы данных с именем «qwerty» и паролем «123456». Для создания логинов используется запрос CREATE LOGIN. Ознакомьтесь с синтаксисом запроса, представленным на рисунке 20.

Рисунок 20 – Синтаксис запроса Create Login

  1. Для создания нашего логина необходимо набрать и выполнить следующий запрос:

CREATE LOGIN qwerty WITH PASSWORD='123456'

  1. После создания логина, можно приступить к созданию пользователя для этого логина. Создадим одноименного пользователя «qwerty». Для создания пользователей используется запрос CREATE USER. Ознакомьтесь с синтаксисом запроса, представленным на рисунке 21.

Рисунок 21 – Синтаксис запроса Create User

  1. Для создания нашего пользователя необходимо набрать и выполнить следующий запрос:

CREATE USER qwerty FOR LOGIN qwerty

  1. После добавления логина и пользователя отключитесь от сервера, нажав в обозревателе объектов кнопку «Отключить», изображение которой представлено на рисунке 22.

Рисунок 22 – Отключение от сервера

  1. Подключитесь к серверу с помощью нажатия на кнопку «Подключение» под именем qwerty с паролем 123456

  2. Разверните в обозревателе объектов свою БД, разверните узел «Таблицы» и убедитесь, что данный пользователь не имеет доступа ни к каким таблицам БД.

  3. Отключитесь и подключитесь заново к серверу с правами администратора (то есть пользователь sa).

  4. Добавим для пользователя qwerty возможность просмотра таблицы Модель и добавления записей в таблицу Модель. Для передачи прав пользователю используется SQL запрос GRANT. Ознакомьтесь с синтаксисом запроса, представленным на рисунке 23.

Рисунок 23 – Синтаксис запроса GRANT

  1. Для передачи прав пользователю qwerty на просмотр и добавления записей в таблице Модель необходимо набрать и выполнить следующие два запроса:

Grant Select On модель to qwerty;

Grant Insert On модель to qwerty;

  1. После успешного выполнения предыдущих запросов, отключитесь и подключитесь заново к серверу как пользователь qwerty.

  2. Разверните в обозревателе объектов свою БД, разверните узел «Таблицы» таблица Модель, просмотрите записи, добавьте новую и убедитесь, что данный пользователь имеет права просмотра и добавления для таблицы.

Задание №2: В среде MS Visual Studio необходимо создать Windows-приложение, которое позволит добавлять новых пользователей для вашей БД вида, представленного на рисунке 24.

Рисунок 24 – Форма для добавления пользователя

Ход работы:

  1. Добавьте в проект новую форму. Добавьте на форму следующие компоненты: 2 Label, 2 textBox, 1 Button и измените их свойства в соответствии с рисунком 24.

  2. Добавьте обработчик для открытия только что добавленной формы при выборе в главном меню проекта пункта АдминистрированиеДобавить пользователя.

  3. Добавьте в код формы ссылку на пространства имен для работы с объектами ADO: Imports System.Data

Imports System.Data.SqlClient

  1. В коде формы «Добавить пользователя», в процедуре-обработчике кнопки «Добавить» опишите переменную и создайте экземпляр объекта Connection и задайте ей параметры подключения, используя технологии 9,10.

  2. Опишите переменную и создайте экземпляр объекта Cоmmand, используя технологию 11. Создаваемый вами объект Command должен быть подключен к ранее (в четвертом пункте) созданному объекту Connection.

  3. Задайте для только что созданного объекта Command текст запроса на добавление логина (CREATE LOGIN) с использованием информации из текстовых полей на форме, используя технологию 12 ИЛИ технологию 13.

  4. Откройте подключение к БД, используя технологию 15.

  5. Выполните одним из методов объект Command, используя ОДНУ из следующих технологий 16,17,18.

  6. Закройте подключение к БД, используя технологию 15.

  7. Запустите проект, добавьте нового пользователя к вашей БД.

  8. Подключитесь к базе данных МММ в среде MS SSMS, используя технологию 1 под именем только что добавленного пользователя. Убедитесь что это возможно.

Задание №3. В среде MS Visual Studio необходимо создать Windows-приложение, которое позволит добавлять новых пользователей для вашей БД вида, изображенного на рисунке 25.

Рисунок 25 – Форма для добавления привилегий пользователя

Ход работы:

  1. Добавьте в проект новую форму. Добавьте на форму следующие компоненты: 3 Label, 2 ComboBox, 1 textBox, 1 Button и измените их свойства в соответствии с рисунком 25. В список ComboBox1 занести перечень значений:

  • INSERT;

  • UPDATE;

  • DELETE.

В список ComboBox2 занести перечень значений = название таблиц Вашей БД, например:

  • Модель;

  • Готовый_продукт;

  • Заказ;

  • Состав_заказа;

  • Магазин.

  1. Добавьте обработчик для открытия только что добавленной формы при выборе в главном меню проекта пункта АдминистрированиеДобавить права для пользователя

  2. Добавьте в код формы ссылку на пространства имен для работы с объектами ADO: Imports System.Data

Imports System.Data.SqlClient

  1. В коде формы «Добавить права для пользователя», в процедуре-обработчике кнопки «Назначить привилегию» опишите переменную и создайте экземпляр объекта Connection и задайте ей параметры подключения, используя технологии 9,10.

  2. Опишите переменную и создайте экземпляр объекта Cоmmand, используя технологию 11. Cоздаваемый вами объект Command должен быть подключен к ранее созданному объекту Connection.

  3. Задайте для только что созданного объекта Command текст запроса на добавление Прав пользователю (GRANT) с использованием информации из полей со списком и текстовых полей на форме, используя технологию 12 ИЛИ технологию 13.

  4. Откройте подключение к БД, используя технологию 15.

  5. Выполните одним из методов объект Command, используя ОДНУ из следующих технологий 16,17,18.

  6. Закройте подключение к БД, используя технологию 15.

  7. Запустите проект, добавьте для какого-либо пользователя права на просмотр таблицы Модели вашей БД.

  8. Подключитесь к базе данных МММ в среде MS SSMS под именем только что добавленного пользователя. Убедитесь что возможно просматривать записи из таблицы Модели.