Публикация БД в Интернет

Автор работы: Пользователь скрыл имя, 05 Февраля 2014 в 19:13, дипломная работа

Краткое описание

С распространением сети Интернет возникли «электронные магазины» торгующие самыми различными товарами. По сравнению с обычными магазинами они имеют множество преимуществ, которые способствуют росту доходов в этой сфере торговли.
Целью данного дипломного проекта является рассмотрение принципов и методов публикации БД в Интернет и разработка модели базы данных «Книжный Интернет-магазин», а также реализация информационной системы в виде Web-приложения в архитектуре «клиент-сервер».

Прикрепленные файлы: 9 файлов

~WRL3594.tmp

— 112.00 Кб (Скачать документ)

диплом.doc

— 3.38 Мб (Скачать документ)
  • id_cat, уникальный код категории книги;
  • name_cat, название категори.

4. Таблица Basket_Books (Состав_Корзины) содержит:

  • id_bask, уникальный код книги в корзине;
  • id_book, уникальный код книги;
  • kolvo, количество книг в корзине.

5. Таблица Customers (Покупатели) содержит:

  • id_cust, уникальный код покупателя;
  • fam, фамилия покупателя;
  • im, имя покупателя;
  • addr, адрес покупателя;
  • mail, электронный адрес покупателя;
  • login, логин покупателя;
  • pass, пароль покупателя.

6. Таблица Orders (Заказы) содержит:

  • id_order, уникальный код заказа;
  • date_ord, дата оформления заказа;
  • id_cust, уникальный код покупателя.

7. Таблица Order_Books (Состав_Заказа) содержит:

  • id_order, уникальный код заказа;
  • id_book, уникальный код книги;
  • kolvo, количество заказанных книг.

C целью построения модели данных и генерации кода серверной и клиентской части используется продукт ERwin фирмы PLATINUM technology. ERwin имеет два уровня представления модели - логический и физический. На логическом уровне данные не связаны с конкретной СУБД, поэтому могут удобно отобрать структура представления данных в базе. Физический уровень фактически отображает системный каталог, который зависит от конкретной СУБД. По корректной физической модели ERwin может генерировать физическую схему (системный каталог или SQL -скрипт) для заданной СУБД [5,20].

Логическая модель.

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

 

Рисунок 2.1. Логическая схема структуры базы данных

 

Физическая модель.

На этом этапе проектируется  физическая модель базы данных. Описываются  типы данных, их физическое расположение и размерность. На рис. 2.2 показана физическая модель.

 

Рисунок 2.2. Физическая схема структуры базы данных

 

В данной физической модели были использованы  типы связей , представленные в таблице 2.1.

Таблица 2.1

Классификация связей

Номер связи

Родительская таблица

Дочерняя таблица

Тип связи

1

Категории

Книги

1:M

2

Издатели

Книги

1:M

3

Книги

Состав_Корзины

1:M

4

Книги

Состав_Заказа

1:M

5

Заказы

Состав_Заказа

1:M

6

Покупатели

Заказы

1:М


 

 

2.3 Разработка даталогической модели

В этом рaзделе разрабатываются таблицы базы данных Books. Для кaждого поля тaблицы выбирается рaзмер поля (количеcтво cимволов), тип. Для первичных ключей необходимо ввеcти зaпрет неопределенных знaчений. Для оcтaльных полей возможноcть зaпретa неопределенных знaчений определяетcя cемaнтикой предметной облacти.

В таблице 2.2 приведены  сведения об атрибутах сущностей.

 

Таблица 2.2

Сведения об атрибутах  отношений

Имя атрибута

Тип (размер)

Допустимость

неопределенных значений

Ключ

Книги

id_book

int

Not null

PK

id_publ

int

Not null

FK

id_cat

int

Not null

FK

name_book

varchar(100)

Not null

 

Author

varchar (50)

Not null

 

Pages

int

Not null

 

Price

int

Not null

 

Image

varchar(50)

Not null

 

Издатели

id_publ

Int

Not null

PK

name_publ

varchar(50)

Not null

 

Категории

id_cat

Int

Not null

PK


Продолжение таблицы 2.2

Name_cat

varchar(50)

Not null

 

Состав_Корзины

id_bask

char(15)

Not null

РK

id_book

Int

Not null

FK

kolvo

Int

Not null

 

Покупатели

id_cust

Int

Not null

PK

fam

varchar(30)

Not null

 

Im

varchar(30)

Not null

 

addr

varchar(100)

Not null

 

mail

varchar(30)

Not null

 

login

varchar(15)

Not null

 

pass

varchar(15)

Not null

 

Заказы

id_order

char(15)

Not null

РК

date_ord

datetime

Not null

 

id_cust

Int

Not null

FK

Состав_Заказа

id_order

char(15)

Not null

FK

id_book

Int

Not null

FK

Kolvo

Int

Not null

 

 

 

    1. Реализация базы данных

Создаем базу данных books в MS SQL Server 2008 с использованием полных SQL-скриптов  создаем обьекты базы данных.

На рисунке 2.3 показана диаграмма базы данных в SQL Server.

 

Рисунок 2.3. Диаграмма базы данных в MS SQL Server 2008

    1. Обеспечение безопасности базы данных в SQL Server

Обеспечение безопасности SQL Server можно представить как последовательность шагов в четырех областях: платформа, проверка подлинности, объекты (в том  числе данные) и приложения, которые обращаются к системе.

Безопасность платформы  и сети. Платформа для SQL Server включает в себя физическое оборудование и  сетевые компьютеры, с помощью  которых клиенты соединяются  с серверами базы данных, а также  двоичные файлы, применяемые для  обработки запросов базы данных [4].

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

2.5.1 Безопасность участников и объектов базы данных

Участники — это отдельные  пользователи, группы и процессы, которым  предоставлен доступ к ресурсам SQL Server. Защищаемые объекты — это сервер, база данных и объекты, которые содержит база данных. У каждого из них существует набор разрешений, с помощью которых можно уменьшить контактную зону SQL Server.

Участники системы безопасности. Под участниками безопасности приложения - это такие сущности, как пользователи, учетные записи, группы и роли, которые могут обращаться к базе данных, серверу или к схеме. Группы и роли известны также как коллекции, поскольку могут включать в себя других участников безопасности.

В модели безопасности приложения существование участников безопасности допускается на трех уровнях: уровне Windows (Active Directory), уровне SQL Server и уровне базы данных [15].

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

Уровень SQL Server. На уровне SQL Server участниками безопасности являются имена входа SQL Server и серверные роли. Имена входа SQL Server использовать в приложениях не рекомендуется, они допустимы только после предоставления заказчику подробного обоснования этой необходимости, которое в обязательном порядке согласуется со службой безопасности заказчика.

Имена входа SQL Server обычно используются для внешних пользователей  компании, например для тех, кто подключается к базе данных через веб-сайт. Кроме  того, у каждого экземпляра SQL Server есть встроенное имя входа «sa»  и могут также быть имена входа NETWORK SERVICE и SYSTEM (в зависимости от конфигурации экземпляра), которые не должны использоваться Приложением.

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

Пользователи базы данных - это сущности, связанные с именами  входа Windows или SQL Server, которым назначен определенный набор разрешений и  привилегий к отдельным объектам (например, к таблицам) базы данных. Стандартные (встроенные) пользователи баз данных SQL Server: guest, dbo, INFORMATION_SCHEMA и sys не должны использоваться Приложением. Guest - это специальный пользователь, который добавляется к базе данных, чтобы дать возможность любому обладателю имени входа SQL Server получить доступ к базе данных, и, как правило, он заблокирован. Владелец базы данных (или dbo) - это специальный тип пользователя базы данных (обычно создатель базы данных), которому предоставлены все разрешения и привилегии доступа к базе данных, включая право назначать разрешения другим пользователям. Владельца БД могут олицетворять другие пользователи, если это предусматривается логикой работы Приложения. Желательно не предоставлять набор прав dbo подключающимся через приложение пользователям, оставив подобные задачи администратору баз данных. Пользователи INFORMATION_SCHEMA и sys предназначены только для внутрисистемного использования (для обращения к представлениям метаданных) [16].

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

Посредством роли приложения допускается создавать защищенные паролем роли для конкретных приложений. Например, пользователь может подключиться к базе данных через веб-приложение, которое может активировать соответствующую роль, обеспечив пользователя разрешениями и привилегиями этой роли.

Роли базы данных можно  использовать для назначения разрешений на уровне базы данных. Например, вы можете создать роль Users, которая позволяет пользователям применять операторы EXECUTE, SELECT, INSERT и UPDATE к определенным таблицам базы данных. Затем можно назначить эту роль некоторым пользователям, вместо того чтобы назначать разрешения каждому из них по отдельности.

Ниже, в таблице 2.3 приведен список предопределенных ролей SQL Server, которые есть в каждой базе данных.

Для упрощения администрирования SQL Server в производственной среде  рекомендуется поместить учетные  записи Windows всех доменных пользователей, которым нужны одинаковые привилегии SQL Server, в одну группу учетных записей Windows. Затем нужно назначить этой группе подходящую серверную роль. В общем случае следует избегать назначения ролей напрямую индивидуальным учетным записям Windows [8].

 

Таблица 2.3

Назначение предопределенных ролей SQL Server

Роли SQL Server

Предназначение

Public

Роль по умолчанию, назначается  всем пользователям базы данных. Если необходимо предоставить всем пользователям  базы данных определенный набор разрешений, назначьте эти разрешения роли public. Не допускается предоставлять этой роли весь набор прав, ограничивая доступ пользователей на уровне Приложения. Права на объекты базы данных пользователя не должны зависеть от места подключения.

Db_accessadmin

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

Db_backupoperator

Предназначена для пользователей, которым необходимо выполнять резервное  копирование базы данных

db_datareader

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

db_datawriter

Предназначена для пользователей, которым необходимо добавлять или изменять любые данные в любой пользовательской таблице базы данных. Члены этой роли могут выполнять следующие задачи: DELETE, INSERT и UPDATE. Для пользователей Приложения предоставление прав через эту роль нежелательно

db_ddladmin

Предназначена для пользователей, которым необходимо выполнять задачи, связанные с языком определения  данных (DDL) SQL Server. Члены этой роли могут  выполнять любые операторы DDL, за исключением GRANT, REVOKE и DENY

db_dеnуdаtаrеаdеr 

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

db_denydatawriter

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

ОтзывАстанаева.doc

— 34.50 Кб (Просмотреть файл, Скачать документ)

ПРИЛОЖЕНИЕ Б1.doc

— 123.00 Кб (Просмотреть файл, Скачать документ)

Приложение Б2.doc

— 98.00 Кб (Просмотреть файл, Скачать документ)

ПРИЛОЖЕНИЕ Б4.doc

— 308.00 Кб (Просмотреть файл, Скачать документ)

ПРИЛОЖЕНИЕ Б5 .doc

— 672.50 Кб (Просмотреть файл, Скачать документ)

ПРИЛОЖЕНИЕБ3 .doc

— 265.50 Кб (Просмотреть файл, Скачать документ)

Информация о работе Публикация БД в Интернет