Asp примеры программного администрирования


Содержание

Администрирование пользователей в ASP.NET >

В этой статье мы завершим создание инструмента администрирования пользователей, добавив возможность редактирования и удаления. В примере ниже вы можете увидеть изменения, которые я сделал в файле Views/Admin/Index.cshtml:

Удаление пользователей

Класс управления пользователями UserManager определяет метод DeleteAsync(), который принимает экземпляр класса пользователя (IdentityUser) и удаляет его из базы данных. В следующем примере вы можете увидеть, как я использовал этот метод в контроллере Admin:

Метод действия Delete принимает уникальный идентификатор пользователя в качестве строкового параметра, после чего мы используем метод FindBy >IdentityResult, который я проверяю также, как и в предыдущих примерах на наличие ошибок. Вы можете протестировать новую функциональность — создайте нового пользователя, а затем нажмите «Удалить» рядом с именем пользователя в представлении Index.

В данном примере мы не создавали отдельного представления Delete, поэтому для отображения ошибок создайте файл с названием Error.cshtml в папке /Views/Shared со следующей разметкой:

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

Редактирование пользователей

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

В следующем примере мы добавили два новых метода действий Edit в контроллер Admin:

Первый метод действия Edit обрабатывает GET-запросы с идентификатором пользователя, выполняет поиск с помощью метода FindByIdAsync() и возвращает представление Edit.cshtml с возможностью редактирования если пользователь найден, иначе перенаправляет обратно на представление Index.

Второй метод обрабатывает POST-запросы с данными пользователя, которые передаются в качестве параметров: имя, адрес почты и пароль. В этом методе мы должны решить несколько задач, связанных с редактированием пользователей.

Первая задача — выполнить валидацию значений, которые мы получаем из формы. В данном примере мы работаем с простым объектом данных пользователя, однако, позже я покажу вам, как взаимодействовать с более сложными объектами. Итак, нам необходимо выполнить проверки данных пользователя и пароля, которые мы добавили в предыдущей статье в класс AddUserManager. Начинаем с проверки адреса электронной почты:

Следующий шаг — сменить пароль, если таковой был предоставлен. ASP.NET Identity не хранит пароли в чистом виде, а использует их хэш. Поэтому, мы сначала проверяем пароль, затем генерируем его хэш и сохраняем в свойстве PasswordHash.

Пароли преобразуются в хэш через реализацию интерфейса IPasswordHasher (в данном случае используется свойство AppUserManager.PasswordHasher). Интерфейс IPasswordHasher определяет метод HashPassword(), который принимает строковый аргумент и возвращает его хэшированное значение:

Изменения пользовательских данных не сохраняются в базе данных вплоть до вызова метода UpdateAsync():

Теперь нам осталось добавить только представление для редактирования данных пользователя, которое будет выводить в текстовых полях текущие значения имени и адреса электронной почты пользователя. Добавьте в проект файл /Views/Admin/Edit.cshtml со следующим содержимым:

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

Asp примеры программного администрирования

Этот текст предназначен для тех, кто никогда не имел дела с ASP и вообще смутно себе представляет возможности программирования на стороне сервера. Я ставил себе задачу создать у читателя общее представление о предмете. Отдельные неточности при этом менее важны — пожалуйста, громко не ругайтесь.

Общие сведения

ASP (Active Server Pages) – это мощная технология от Microsoft, позволяющая легко разрабатывать приложения для WWW. ASP работает на платформе Windows NT и IIS (Internet Information Server), начиная с версии 3, хотя вроде есть реализации на других платформах. ASP – это не язык программирования, это внутренняя технология, позволяющая подключать программы к Web-страницам. Основа успеха ASP – простой скриптовый язык (Visual Basic Script или Java Script) и возможность использования внешних COM-компонент.

Как это все происходит?

Вы пишете программу и складываете в файл на сервере. Браузер клиента запрашивает файл. Файл сначала интерпретируется сервером, на выходе производится HTML-код. Этот HTML посылается клиенту. Файлы с программами имеют расширение .asp. Файлы asp – это обычные текстовые файлы, содержащие исходные тексты программ. Файлы делаются с помощью любого текстового редактора. Каталог, в котором размещены файлы asp должен иметь права на выполнение, так как сервер исполняет эти файлы, когда браузер их запрашивает. Собственно программы пишутся на любом скриптовом языке, который установлен в системе. По умолчанию поддерживаются VBScript и JavaScript. Можно доустановить другие (например, Perl). Если ничего специально не указывать используется VBScript. В дальнейшем будем ссылаться только на него. Программные фрагменты заключаются в скобки . Можно ставить открывающую скобку в начале файла, закрывающую – в конце, все что между ними – программа на Visual Basic’е.

Какие средства есть для программирования?

Web – нормальная среда программирования, если правильно понять, что есть что. В VBScript есть все нормальные конструкции структурного программирования (if, while, case, etc). Есть переменные (описывать не обязательно, тип явно не задается). Поддерживаются объекты. Работа с ними обычная – Object.Property, Object.Method. Есть ряд встроенных объектов (Request, Response, Session, Server, Connection, Recordset). Можно доустанавливать другие компоненты (скачивать, покупать, программировать), например для работы с электронной почтой.

Вывод

Понятия «экран», куда можно выводить данные нет. Все, что надо показать пользователю, выбрасывается в выходной поток на языке HTML. Браузер пользователя интерпретирует этот HTML. Для упрощения вывода существует объект Response . Вывод осуществляется с помощью метода Write .

Так производится запись во внутренний буфер объекта Response. Когда скрипт заканчивает работу, весь буфер выдается клиенту. Надо заметить, что клиент получает «чистый» HTML, таким образом программы на ASP не зависят от клиентского ПО, что очень важно. Если внутри выводимой строки нужно использовать кавычку, кавычка удваивается. Другие методы и свойства Response позволяют управлять выводом. Так Response.Buffer регулирует, получает ли клиент данные по мере из записи в Response, или все сразу по завершении исполнения страницы. Метод Response.Redirect перенаправляет браузер на другую страницу. Чтобы им пользоваться, нельзя до него на странице использовать Response.Write.

Программа на ASP не может явно спросить пользователя о чем-то. Она получает данные из других страниц, либо через URL. Передаваемые параметры помещаются во входной поток и доступны через объект Request . Чтобы передать переменную var в программу test.asp , надо написать:

Чтобы из программы получить значение этой переменной, надо написать:

Несколько переменных разделяется знаком &:

Кроме того, чтобы задавать параметры в URL, можно воспользоваться формами HTML. В вызывающей странице пишем так:

Так это выглядит:

При этом пользователь увидит форму из одного поля ввода (var1), в нем будет значение по умолчанию «default». Второе поле (var2) будет невидимо и будет передавать всегда фиксированное значение «var2value». Кнопка «Submit Form» завершает заполнение формы и передает все переменные на test.asp (action). Если method=»get», переменные передаются через URL (test.asp?var1=default&var2=var2value). Если method=»post», передаются вместе с запросом так, что внешне передача переменных не заметна. В вызываемой программе безразлично, какой метод изпользовался (почти). Если у вас нет специальных аргументов за метод GET, используйте метод POST.

Формы

Формы HTML используются для организации диалога с пользователем. Поддерживаются стандартные элементы управления. Все многообразие задается немногими тэгами:

  • INPUT (с параметром TYPE=)
  • SELECT
  • TEXTAREA

Описание – в документации по HTML.

Взаимосвязь между отдельными страницами

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

Один из методов решения этой проблемы — cookies . Пользователю при первом обращении выдается специальный идентификатор, после этого браузер пользователя предъявляет этот идентификатор при каждом обращении, и сервер может распознать, что это тот же самый пользователь. Пользователь может отключить cookies, в этом случае этот метод не работает.

ASP, используя cookies, предоставляет программисту более простое средство — объект Session (сессия). Сессия стартует, когда новый пользователь обращается к любому asp-файлу приложения. Сессия заканчивается при отсутствии активности пользователя в течение 20 минут, либо по явной команде. Специальный объект Session хранит состояние сессии. Туда можно записывать переменные, которые доступны из любой страницы в этой сессии. Записать данные в этот объект можно просто:

Считать потом еще проще:

Сессия, таким образом, – это еще один метод передачи данных между страницами. Одна страница пишет данные в сессию, другая – берет потом оттуда.

Наряду с объектом Session существует объект Application . Если сессия создается для каждого нового пользователя, до Application существует в единственном экземпляре, и может использоваться всеми страницами приложения.

Управление приложением

Программисту предоставляется возможность реагировать на 4 события: старт/стоп приложения и старт/стоп каждой сессии. Для реализации этих событий предназначен файл global.asa , который должен располагаться в корневом каталоге приложения. Вот его примерный скелет:

Нужно «просто» вписать Ваш код на соответствующее место. Нужно заметить, что отлаживать код для global.asa довольно непросто, так как он выполняется при очень специфических обстоятельствах (к примеру при старте или остановке сервера).

Использование внешних компонент

Если на сервере установлены дополнительные компоненты, их можно использовать из ASP. Стандартные объекты (например из библиотек ADO (Connection и Recordset) и Scripting (Dictionary, FileSystemObject)) доступны всегда. Установка новой компоненты обычно состоит в копировании dll-файла в каталог на сервере и ее регистрации с помощью программы regsvr32.exe. [В COM+ используется своя процедура инсталляции объектов, это однако не влияет на использования объектов.]

Создать экземпляр объекта можно так:

Class.Object указываются в документации на компоненту. В переменной var запоминается ссылка на созданный экземпляр объекта. Когда объект не нужен, ссылку нужно обнулить с помощью команды:

Пожалуйста всегда обнуляйте все ссылки на объекты, когда они больше не нужны. Теоретически это должно происходить автоматически при завершении процедуры/страницы, однако в стандартной сборке мусора есть определенные «проблемы».

В остальном использование компоненты зависит от самой этой компоненты.

Работа с базами данных

Из ASP можно легко и просто работать с любыми базами данных. Это делается через две промежуточные технологии: ODBC и ADO.

ODBC позволяет организовать доступ к любым базам данных через унифицированный интерфейс с помощью языка SQL. Специфика конкретных СУБД учитывается при помощи специальных драйверов БД. Такие драйверы существуют для всевозможных СУБД (в частности SQL Server, Oracle, Access, FoxPro). Поддержка ODBC обеспечивается на уровне операционной системы Windows (NT). Настройка – через Control Panel/ODBC. Базовым понятием является источник данных или data source. Источник данных – это совокупность сведений о базе данных, включая ее драйвер, имя компьютера и файла, параметры. Чтобы пользоваться базой надо создать источник данных для нее. Важно, чтобы источник данных был «системным», в отличии от «пользовательского». После этого надо лишь знать имя источника данных. [В настоящее время ODBC отступает перед натиском технологии OLE DB. На практике это однако практически ничего не изменяет. Вместо имени источника данных нужно использовать Connection String, в которой указывается имя ODBC-драйвера и все его параметры.]

ADO – это совокупность объектов, доступных из ASP, позволяющих обращаться к источнику данных ODBC [или OLE DB]. Фактически нужны лишь 2 объекта – Connection , представляющий соединение с базой данных и Recordset , представляющий набор записей, полученный от источника. Сначала необходимо открыть соединение, потом к нему привязать Recordset, потом, пользуясь методами Recordset’а, обрабатывать данные. Вот пример:

Если команда SQL не возвращает данных, recordset не нужен, надо пользоваться методом Conn. Execute (SQL_COMMAND).

Если Вы хотите вызывать хранимые процедуры сервера БД с параметрами, нужно воспользоваться объектом Command , который в свою очеред содержит объекты Parameter .

Методики программирования, советы


Описание переменных

VBScript — очень нетребовательный к программисту язык. Так он не требует описывать переменные и не содержит явных типов данных. Все переменные принадлежат одному типу Variant . Из-за отсутствия описаний могут произойти очень трудно обнаруживаемые ошибки. Одна опечатка может стоить полдня поисков.

Однако, есть возможность явно потребовать описания переменных. Для этого первой строкой в ASP-файле нужно написать Option Explicit . После этого обращение к переменной, которая не была объявлена с помощью Dim , вызывает ошибку с указанием номера строки.

Кстати, где расположены описания Dim в процедуре — совершенно не важно. Они могут стоять как до использования переменной, так и после, и даже в цикле. Видимо они отрабатываются препроцессором. Явно задать тип переменной с помощью Dim Var as Typ , как в Visual Basic, все равно нельзя.

Чередование ASP/HTML

Если нужно выдать большой кусок HTML, можно не пользоваться Response.Write. Если в asp-файле встречается кусок текста вне скобок , он трактуется просто как HTML, который надо вывести. Пример:

Обработка ошибок

Для отслеживания ошибок используется специальный объект Err . Он устанавливается в ненулевое значение, если предыдущая команда породила ошибку. Ее можно проверять с помощью If, и таким образом реагировать на ошибки. Чтобы из-за ошибки не прерывалось выполнение программы, в начале нужно включить команду

Включение других файлов

Можно выносить повторяющийся код в отдельный файл, и подключать к разным другим по мере необходимости с помощью команды include . Это очень удобно, если вы хотите вынести повторяющийся код в отдельный файл и использовать снова и снова в разных страницах:

Важно: все includes в тексте отрабатываются до исполнения файла. Т.е. даже если include стоит внутри if, то сначала будут включены все includes во всех ветках, и только потом, во время исполнения, будет принятно решение, какую ветку выполнять. Т.е. следующий код не дает условного включения файлов:

Обработка форм

Если надо что-то спросить у пользователя и на основании этого что-то сделать, в простейшем случае создается два файла: один с формой, второй – с ее обработчиком. Обработчик выполняет все действия. Пример:

Рекурсивная обработка форм

Удобный метод состоит в том, чтобы сбор данных и обработку осуществлял один и тот же файл. Для этого пишется asp, в котором есть разные разделы. Специальная переменная отвечает за выбор раздела при запуске. Пример:

Переменные HTTP

Запрос от браузера, кроме запрашиваемой страницы несет еще некоторые данные. Эти данные, например, IP-адрес клиента, доступны через специальные переменные объекта Request. IP-адрес – Request(«REMOTE_ADDR»). Другие — см.документацию (ASPSamp\Samples\srvvar.asp).

Переадресация

Очень легко написать на ASP скрипт, который будет производить некоторые расчеты, и в зависимости от результатов переадресовывать браузер на разные URL (например, подставлять нужный баннер). Делается это так:

Только надо следить, чтобы до выполнения команды redirect ничего не было записано в Response (даже коментарии HTML).

Электронная почта

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

Но это приводит к тому, что при отправке формы делается попытка на клиентской машине запустить почтовую программу и создать новое сообщение с данными формы. Если это не получается (почтовая программа не настроена, пользователь не отправил почту, и т.д.) — письмо и не будет отправлено. Гораздо надежнее работает серверное решение.

Для этого существуют внешние компоненты, есть и бесплатные. Например, компонента Jmail от Dimac. Все, что для нее нужно – это адрес SMTP-сервера. Вот пример ее использования:

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

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

Проблемно-ориентированное прикладное программное обеспечение

Методо-ориентированное прикладное программное обеспечение

Прикладное программное обеспечение общего назначения

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

К этому классу ППП относятся:

§ Текстовые и графические редакторы;

§ Системы управления базами данных (СУБД);

§ Оболочки экспертных систем и систем искусственного интеллекта.

Методо-ориентированное прикладное программное обеспечение отличается тем, что в его алгоритмической основе реализован какой-либо экономико-математический метод решения задачи.

К ним относятся ППП:

§ математического программирования (линейного, динамического, статистического);

§ сетевого планирования и управления;

§ теории массового обслуживания;

Примером таких программ могут служить программы Time Line, Microsoft Project, Sure Trak, Open Plan Professional.

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

Из всего многообразия проблемно-ориентированных ПО можно выделить группы, предназначенные для комплексной автоматизации функций управления в промышленной и непромышленной сферах, а также ППП для предметных областей.

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


В качестве примера можно привести программное обеспечение глобальной сети Интернет:

§ средства доступа и навигации — Netscape Navigator, Microsoft Internet Explorer;

§ почтовые программы для электронной почты – (e-mail). Наиболее распространёнными в настоящее время являются MS Outlook Express, The Bat, Eudora и почтовая программа из пакета Netscape Messenger.

Для этих целей в локальных и глобальных вычислительных сетях более чем в 50% систем мира используется ППП фирмы Bay Networks (США), управляющий администрированием данных, коммутаторами, концентраторами, маршрутизаторами, трафиком сообщений.

Вопросы для самоконтроля:

1. Что понимается под программным обеспечением?

2. Какие основные функции выполняет базовое ПО?

3. Какое назначение основных групп прикладного ПО?

4. Какие программные средства относятся к базовому ПО?

5. Какое прикладное ПО относится к классу универсальных?

6. Какое прикладное ПО относится к классу проблемно-ориентированных?

7. В чём особенности операционной системы windows?

Графическое представление в виде последовательности блоков, соединённых стрелками.

1. Схема алгоритма (блок-схема).

2. Система управления базами данных (СУБД).

3. Системные программы.

4. Операционная система.

Заранее заданное понятное и точное предписание возможному исполнителю совершить определенную последовательность действий для получения решения задачи за конечное число шагов это:

2. Электронная таблица.

Во время исполнения программа находится в

1. оперативной памяти

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

1. Системные программы.

2. Операционная система.

3. Система управления базами данных

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

Специально написанная небольшая программа, которая может «приписывать» себя к другим программам для выполнения каких-либо вредных действий — портит файлы, «засоряет» оперативную память.

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

1. Электронная почта.

4. Информационно-поисковая система

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

1. Операционная система.

2. Системные программы

3. Система управления базами данных

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

2. Антивирусные программы

3. Системные программы

4. Операционная система

Программы, предотвращающие заражение компьютерным вирусом и ликвидирующие последствия заражения это:

1. Антивирусные программы

2. Системные программы

3. Операционная система

Специальность (шифр), форма обучения 030503.51, форма обучения дневная
Название дисциплины «Информационные технологии в профессиональной деятельности»
Курс, семестр 3 курс, 5 семестр
Ф.И.О. преподавателя – разработчика программы Комина Лидия Вениаминовна

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Да какие ж вы математики, если запаролиться нормально не можете. 8426 — | 7330 — или читать все.

188.64.174.135 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

Выбираем язык для системного администрирования

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

PowerShell

За последний месяц мы уже дважды рассмотрели, как скриптовые языки операционных систем могут стать добрым другом сисадминщика. PowerShell — продукт экосистемы Windows, он понятен, удобен и весьма функционален. Из минусов можно выделить сравнительно невысокое быстродействие, особенно по сравнению со следующим языком. Но так как Windows всё еще доминирующая ОС на стационарных компьютерах, то знание PowerShell — номер один в списке абстрактных must-have языков для системного администратора.

Линуксовый старший брат Powershell, обладающий куда большей производительностью и опытом, но чуть меньшим удобством, во всяком случае, для новичка. Потребуется тем, кто собирается идти работать в науку и в организации, которые умеют считать деньги. Собственно туда, где линуксовые системы всегд были в почёте.

Python

С Python вы можете делать что угодно, а уж помощь в системном деле — одна из основных зон ответственности. При использовании нужных модулей вы без труда обойдете ограничения скриптовых языков, не затратив на это много времени и усилий. Python вообще может стать вашим основным кроссплатформенным инструментом, ведь он будет удобен и для текущих задач, и для вашего карьерного роста. Ведь за вас удобный и относительно простой язык, мощная экосистема и новые интересные творческие задачи. Начать изучение можно с бесплатного интенсива «Основы языка Python».

Perl — язык, разработанный специально для тесного взаимодействия с текстом, впитавший всё лучшее от Unix Shell, Awk и С. Это означает, что по определению он превосходит в своих возможностях и удобстве скриптовые языки, а функциональный перечень необычайно широк. При всём этом стоит сделать одну небольшую оговорку: большинство административных решений на Perl, описанных в соответствующей литературе, сегодня с куда большей эффективностью реализуется на других языках, в том числе Python или Ruby. Поэтому хоть Perl формально и популярен, но уже понемногу уходит в прошлое.

Трудно представить ситуацию, в которой системному администратору бы не потребовалось использовать базы данных. Это и управление сервером, и администрирование учётных записей, и формирование отчётов. А если так, то без знания SQL хотя бы на уровне запросов и элементарной работы с данными не обойтись.

Visual Basic

Несмотря на достаточно спорное наследие, VB сегодня является прекрасным инструментом в среде Windows. В частности, упрощённая реализация VBA позволит вам писать полезные скрипты для MS Office, AutoCAD, SolidWorks, а также компонентов ActiveX.

Языки веба

Вообще в IT трудно представить какую-то область, где бы знание HTML, CSS и JavaScript вам не пригодилось. В качестве вариантов интереса для системщиков — сетевые экраны, системы регистрации и учёта пользователей, управление сетями предприятия и многое другое.

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

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

PowerShell

За последний месяц мы уже дважды рассмотрели, как скриптовые языки операционных систем могут стать добрым другом сисадминщика. PowerShell — продукт экосистемы Windows, он понятен, удобен и весьма функционален. Из минусов можно выделить сравнительно невысокое быстродействие, особенно по сравнению со следующим языком. Но так как Windows всё еще доминирующая ОС на стационарных компьютерах, то знание PowerShell — номер один в списке абстрактных must-have языков для системного администратора.

Линуксовый старший брат Powershell, обладающий куда большей производительностью и опытом, но чуть меньшим удобством, во всяком случае, для новичка. Потребуется тем, кто собирается идти работать в науку и в организации, которые умеют считать деньги. Собственно туда, где линуксовые системы всегд были в почёте.

Python

С Python вы можете делать что угодно, а уж помощь в системном деле — одна из основных зон ответственности. При использовании нужных модулей вы без труда обойдете ограничения скриптовых языков, не затратив на это много времени и усилий. Python вообще может стать вашим основным кроссплатформенным инструментом, ведь он будет удобен и для текущих задач, и для вашего карьерного роста. Ведь за вас удобный и относительно простой язык, мощная экосистема и новые интересные творческие задачи. Начать изучение можно с бесплатного интенсива «Основы языка Python».

Perl — язык, разработанный специально для тесного взаимодействия с текстом, впитавший всё лучшее от Unix Shell, Awk и С. Это означает, что по определению он превосходит в своих возможностях и удобстве скриптовые языки, а функциональный перечень необычайно широк. При всём этом стоит сделать одну небольшую оговорку: большинство административных решений на Perl, описанных в соответствующей литературе, сегодня с куда большей эффективностью реализуется на других языках, в том числе Python или Ruby. Поэтому хоть Perl формально и популярен, но уже понемногу уходит в прошлое.

Трудно представить ситуацию, в которой системному администратору бы не потребовалось использовать базы данных. Это и управление сервером, и администрирование учётных записей, и формирование отчётов. А если так, то без знания SQL хотя бы на уровне запросов и элементарной работы с данными не обойтись.

Visual Basic

Несмотря на достаточно спорное наследие, VB сегодня является прекрасным инструментом в среде Windows. В частности, упрощённая реализация VBA позволит вам писать полезные скрипты для MS Office, AutoCAD, SolidWorks, а также компонентов ActiveX.

Языки веба

Вообще в IT трудно представить какую-то область, где бы знание HTML, CSS и JavaScript вам не пригодилось. В качестве вариантов интереса для системщиков — сетевые экраны, системы регистрации и учёта пользователей, управление сетями предприятия и многое другое.

Создание серверных компонентов для ASP-приложений

ASP (Active Server Pages) — технология создания Web-страниц, содержащих код, выполняемый Web-сервером (подробнее об истории и современном состоянии этой технологии см. в статье Алексея Федорова «Технология ASP+», № 9’2000, а о практических вопросах применения ASP см. в цикле статей Рубена Садояна , № 9-11’2000. — Прим. ред.). Современная версия данной технологии позволяет использовать в ASP-страницах сторонние серверные компоненты, созданию которых и посвящена данная статья.

В качестве средства разработки ASP-объектов будет использоваться Borland Delphi 5, Enterprise-версия которого позволяет это делать. К сожалению, в документации, поставляемой с Delphi 5, крайне скупо сказано о назначении, последовательности создания и тестирования серверных объектов ASP; кроме того в комплекте поставки Delphi 5 отсутствуют примеры работающих ASP-объектов. Настоящая публикация частично восполняет эти пробелы.

Клиентское приложение, использующее ASP-объекты, представляет собой HTML-документ (этот документ может также включать клиентский и серверный коды на скриптовых языках. — Прим. ред.), который в принципе можно прочесть с помощью любого Web-браузера. Обычно такие HTML-документы размещаются на каком-либо Web-сервере (как правило, это Microsoft Internet Information Server версии 3.0 и выше). Web-сервер, получив требование о предоставлении документа, считывает его из локального хранилища и передает клиенту, при этом часть информации вносится в документ Web-сервером динамически; сам же Web-сервер может обращаться к ASP-объектам, входящим в комплект поставки Internet Information Server или созданным сторонними разработчиками. Обычно Web-документы, содержащие обращения к ASP-объектам, имеют расширение *.asp. Примеры подобных документов можно найти в каталогах, создаваемых при установке Internet Information Server.

Некоторые Web-дизайнеры полагают, что технология ASP заключается, грубо говоря, в замене расширения *.htm в HTML-файле на расширение *.asp. Действительно, при работе с Internet Information Server изменение расширения файла позволит корректно отображать находящийся в нем HTML-документ. Однако на самом деле технология ASP — это обращение к методам специальных объектов, называемых ASP-объектами и представляющих собой COM-серверы. Типичный пример обращения к ASP-серверу из HTML-документа, представляющий собой фрагмент кода на языке VBScript, выглядит следующим образом:

Несмотря на наличие кода на скриптовых языках (VBScript или JavaScript), ASP-страница может быть доступна клиентам, работающим в других операционных системах, например в UNIX. На первый взгляд это может показаться странным, поскольку UNIX-компьютеры не используют ни Basic, ни тем более VBScript. Но дело в том, что скрипты, содержащиеся в ASP-документах, выполняются на сервере, а клиент получает HTML-документ, который является результатом выполнения этого скрипта.

Серверные объекты ASP выполняются в адресном пространстве Internet Information Server (Internet Information Services), работающего под управлением операционной системы Windows NT (Windows 2000) либо Windows 98.

По существу ASP-сервер представляет собой сервер автоматизации, в котором предопределено несколько интерфейсов; среди них — IRequest и IResponse. Интерфейс IRequest содержит методы, вызов которых позволяет передать параметры, введенные пользователем и заполненные на клиенте (об этом будет рассказано ниже). IResponse содержит методы, вызов которых приводит к формированию HTML-документа и передаче данного документа пользователю. Наличие этих признаков делает ASP-сервер похожим на CGI-приложения и ISAPI/NSAPI DLLl (далее — Web-приложения). Идеология выполнения методов в ASP-объекте и Web-приложениях также аналогична: сначала анализируется запрос клиента, затем динамически формируется отклик. Различие заключается в том, что Web-приложения формируют HTML-документ целиком, в то время как отклик ASP-объекта вставляется в исходную HTML-страницу. Например, если документ ASP представлен в виде:

и результат выполнения метода ScriptContent возвращает строку ‘First call to ASP server’, то пользователь, получивший данный документ, увидит следующее (рис. 1).

Иными словами, отклик ASP-объекта добавляется к HTML-документу. В одном документе допустимо обращение к нескольким ASP-объектам, и результат их отклика формируется в единый документ — этого невозможно достичь при использовании Web-приложений. Впрочем, имеется одно ограничение: набор ASP-серверов, к которым производится обращение из одного документа, должен быть зарегистрирован на одном и том же Internet Information Server — нельзя обращаться по различным адресам для формирования одного HTML-документа.

Как было сказано выше, Enterprise-версия Delphi 5 содержит эксперт для создания ASP-объектов. Для запуска этого эксперта следует выбрать пункт главного меню File|New среды разработки Delphi, а затем со страницы ActiveX репозитария объектов — пиктограмму Active Server Object.

ASP-сервер, содержащий ASP-объекты, реализуется в виде как исполняемых файлов *.exe, так и библиотек *.dll — это разрешается при создании серверов автоматизации. ASP-сервер, реализованный в виде исполняемого файла, запускается каждый раз в ответ на запрос клиента. При использовании внутренних (in-process) ASP-серверов, выполненных в виде динамически загружаемых библиотек, один экземпляр DLL, загруженный в адресное пространство Internet Information Server, способен обслуживать одновременно нескольких клиентов. При этом возможно либо создание отдельного экземпляра COM-объекта для каждого клиента, либо обслуживание нескольких клиентов единственным экземпляром COM-объекта. Это зависит от модели работы в потоках (Threading Model), выбранной при заполнении диалога, который появляется при запуске эксперта создания ASP-объектов.

Рассмотрим теперь, каким образом работает ASP-сервер на конкретном примере создания внутреннего (in-process) ASP-сервера. Для простоты ограничимся сервером, который выполняет один запрос. Итак, выберем пункт главного меню File|New среды разработки Delphi, со страницы ActiveX репозитария объектов — пиктограмму ActiveX Library и нажмем кнопку OK. В итоге получим новый проект, который сохраним, например, под именем ASP01. Теперь снова выберем пункт главного меню File|New среды разработки Delphi, со страницы ActiveX репозитария объектов — пиктограмму Active Server Object. В появившемся диалоге определим имя будущего COM-класса, например Test.

Поскольку мы создаем in-process-сервер, параметр Instancing не имеет значения — он важен только для исполняемых файлов. Зато в данном случае серьезную роль играет параметр Threading Model. При значении этого параметра равным Single работа сервера неэффективна, поскольку при одновременном обращении к нему нескольких клиентов сервер выполняет запросы последовательно, и если один из клиентов обращается с длительным запросом, то остальные вынуждены ожидать его окончания, даже если их запросы не требуют большого количества времени для выполнения. При этом у пользователей создается впечатление «зависания» браузера, что зачастую приводит к попыткам разными методами прервать задачу. Значение Apartment приводит к разделению запросов клиентов по потокам, причем для каждого клиента будет создан свой экземпляр COM-объекта, в данном примере — класса TTest. При этом при написании методов COM-класса не требуется защиты переменных класса внутри потоков — клиент может свободно модифицировать их, что упрощает разработку кода приложения. Недостаток данной модели состоит в следующем: проект оказывается ресурсоемким и переменные класса инициализируются при каждом обращении, что увеличивает время отклика на запрос. Этих недостатков лишена модель Free, в которой единственный экземпляр COM-объекта обслуживает нескольких клиентов. Однако возможность изменения данных внутри COM-объекта влечет за собой необходимость защиты общих переменных от их изменений из разных потоков, что существенно усложняет процедуру реализации кода приложения и является потенциальным источником трудноуловимых ошибок. Как правило, эту модель используют в ASP-серверах, которые только предоставляют данные, но не позволяют клиенту их модифицировать.

Группа элементов управления Active Server Type дает возможность выбрать назначение ASP-сервера. Если сервер планируется использовать под управлением Internet Information Server версий 3 или 4, то выбирается опция Page Level Events Methods. Объекты, созданные с применением этой опции, можно будет использовать и с Internet Information Services 5.0, но в этом случае опция Object Context позволит создать объект, работающий более эффективно. Эту же опцию следует выбирать, если работой ASP-сервера управляет Microsoft Transaction Server (Windows NT) или Component Services (Windows 2000). Фактически Internet Information Services 5.0 также управляет этим сервером при помощи Component Services, так как оба этих продукта тесно интегрированы.

Опцию Generate a Template Test Script for this object следует оставлять всегда включенной. В этом случае Delphi создаст небольшой HTML-документ, который можно использовать для тестирования ASP-сервера.

Заполнив опции диалога, необходимо нажать кнопку OK, после чего будет создан файл реализации интерфейсов Unit1.pas, который следует сохранить (например, под именем U1_01). Кроме того, будет создана библиотека типов, появятся ее редактор и файл, описывающий библиотеку типов, в данном примере — TEST_TLB.pas.

Если была выбрана опция Page Level Events Methods (как в нашем примере), то библиотека типов будет содержать два предопределенных метода — OnStartPage и OnEndPage. Также будет создан файл Test.asp, который содержит HTML-документ с заготовками на языке VBScript для тестирования сервера. Если заглянуть в файл реализации (U1_01.pas) , то можно увидеть, что класс ТТest является потомком класса TASPObject.

Если была выбрана опция Object Context, библиотека типов не будет содержать предопределенных методов, а сам класс Ttest будет являться потомком класса TASPMTSObject. Оба класса-предка TTest содержат абсолютно одинаковые методы и свойства, но класс TASPObject дополнительно содержит пару методов интерфейса IASPObject — OnStartPage и OnEndPage.

Далее создадим метод, который будет заполнять HTML-документ. Для этого в редакторе библиотеки типов (рис. 2) отметим интерфейс ITest и вызовем команду New Method нажатием кнопки 1.

Назовем вновь созданный метод ScriptContent, отредактировав его название, заданное по умолчанию. Данный метод не должен иметь параметров. Затем вызовем команду Refresh нажатием кнопки 2. После этого в модуле реализации (U1_01.pas) появится заготовка, где следует описать реализацию. Метод реализуем следующим образом:

В данном примере происходит обращение к методу Write интерфейса IResponse. Проверка Assigned(Response) гарантирует, что в момент записи сообщений имеется ссылка на интерфейс.

После этого следует модифицировать созданный Delphi HTML-документ для тестирования сервера, хранящегося в файле Test.asp. В этом документе имеется следующий фрагмент кода на языке VBScript:

В таком виде этот скрипт работать не будет. Необходимо заменить фразу в фигурных скобках на имя метода ASP-сервера, который генерирует отклик. В нашем примере это имя ScriptContent. Исправленный фрагмент выглядит следующим образом:

Теперь наш проект необходимо скомпилировать, после чего можно приступить к тестированию созданного ASP-объекта. Для этого необходимо создать виртуальную директорию Internet Information Server, которая обязана иметь разрешение как на чтение (из нее будут читаться данные), так и на выполнениe (из нее будет загружена и запущена библиотека ASP01.dll). Альтернатива — разместить эти файлы в разных директориях, одна из которых имеет доступ Read, а вторая — Execute. Однако в любом случае выбранные директории должны быть доступны с помощью протокола HTTP. Поэтому в первую очередь необходимо обратиться к WWW-сервису Internet Information Server, посмотреть список доступных директорий и при необходимости создать новые с соответствующими правами доступа.

В нашем примере на компьютере, который имеет IP-адрес 10.10.10.65, была создана виртуальная директория /Test, имеющая права доступа Read и Execute и соответствующая физическому адресу на компьютере C:\ASPTest. В эту директорию были скопированы оба файла. Далее в Microsoft Internet Explorer в поле Address был введен следующий URL: HTTP://10.10.10.65/Test/Test.asp. Результат выполнения этого запроса показан на рис. 1. Видно, что скрипт (текст между ) был замещен результатом выполнения метода ScriptContent созданного нами ASP-объекта.

Теперь подробнее рассмотрим, каким образом выполняется скрипт на странице Test.asp. Internet Information Server, получающий запрос о показе этой страницы, считывает ее содержимое, находит скрипт и выполняет его. При этом запускается интерпретатор VBScript и вызывается команда CreateObject. В случае если ASP01.dll ранее не была загружена, происходит ее загрузка. Для данного запроса создается COM-объект — экземпляр класса TTest (он описан в модуле реализации, для данного примера — U1_01.pas). Ссылка на интерфейс IDispatch (он поддерживается в классе TTest) сохраняется в переменной DelphiASPObj.

При последующем написании кода после имени переменной, хранящей ссылку на интерфейс IDispatch, можно набирать практически любой текст. Интерпретатор VBScript использует текст, который содержится в скрипте и следует после имени переменной (в нашем примере: переменная — DelphiASPObj, метод — .ScriptContent), для того чтобы передать его ASP-серверу. Если ASP-сервер найдет метод с данным именем, он его выполнит. В противном случае генерируется исключение. Поэтому при написании скриптов для ASP-сервера следует быть внимательным в названиях методов и при наличии исключений в первую очередь проверить корректность имен методов. При вызове какого-либо метода ASP-серверу становятся доступными интерфейсы IRequest и IResponse.

А теперь рассмотрим пример создания более сложного ASP-сервера, где запрос клиента анализируется при помощи методов интерфейса IRequest. Задачу поставим следующим образом: дадим возможность клиенту найти запись по фрагменту поля ENAME таблицы EMP в базе данных ORCL, сгенерированной Oracle 8.0.4 при его установке. Для этого в каком-либо редакторе форм создадим форму, содержащую однострочный редактор текста и кнопку Submit. HTML-документ с такой формой выглядит следующим образом:

При реализации этой формы вместо IP-адреса 10.10.10.65 следует указать IP-адрес компьютера, на котором установлен ASP-сервер.

Поместим этот документ в директорию C:\ASPTest, которая имеет доступ на чтение и выполнение (см. выше) под именем Name.htm. Но прежде чем создавать модуль данных и обращаться к серверу баз данных, необходимо выяснить, каким образом анализируется запрос клиента в ASP-объекте.


Запрос клиента можно анализировать при помощи вызова методов интерфейса IRequest, ссылка на который находится в свойстве Request класса TASPObject — предка класса, где реализуется ASP-объект. Интерфейс IRequest предоставляет три свойства: QueryString, Form и Body, в которых находятся ссылки на интерфейс IRequestDictionary. QueryString содержит параметры запроса, Form — список элементов управления, предоставляемых клиенту, а Body — данные, которые клиент ввел в эти элементы управления. Нам потребуются данные, поэтому мы будем анализировать свойство Body, однако все сказанное ниже о методах IRequestDisctionary применимо и к любому другому свойству типа ICustomDictionary — QueryString и Form.

IRequestDictionary определен в модуле ASPTlb.pas следующим образом:

Документация о свойствах этого интерфейса в Delphi отсутствует, и остается только догадываться, каким образом из него можно извлечь параметры запроса, введенные пользователем. Привлекая документацию по компоненту TWebDispatcher, который используется при создании CGI-приложений и ISAPI DLL, где также можно анализировать параметры запроса пользователя, можно понять, что свойство Count содержит число элементов управления на форме — для формы, содержащейся в документе Name.htm, оно равно 2. Свойство Key содержит имена элементов управления; для формы, содержащейся в документе Name.htm, это имена T1 (текстовое поле) и B1 (кнопка). И наконец, свойство Item содержит введенные пользователем значения.

Свойство Count работает как положено, то есть возвращает двойку для примера, приведенного выше. При попытке же извлечь имена элементов управления обнаруживается неприятная особенность: в коллекции Key[] индексы начинаются с единицы, а не с нуля, как это принято в приложениях подобного типа. Но все же, обращаясь к коллекции Key с соответствующим индексом — 1 или 2 для нашего примера, можно получить названия элементов управления в виде строковых переменных.

Аналогичная попытка извлечь данные, введенные пользователем в элементы управления, ни к чему хорошему не приводит. Так, при присвоении строковой переменной значения из коллекции Item[] (которая объявлена аналогично коллекции Key[]) происходит исключение. При анализе значения, возвращаемого коллекцией Item[I], обнаруживается, что возвращается интерфейс — потомок IDispatch. Методы и свойства этого интерфейса также не описаны.

Отсутствие описания интерфейса, а также возврат ссылки на него в переменной типа OLEVariant (а не IDispatch) обычно характерно для продуктов, которые находятся в стадии разработки. В этом случае заголовки методов интерфейса, список параметров методов и их число постоянно меняются, а во избежание исключений в клиентских приложениях часто используется позднее связывание. Этот факт настораживает: не исключена возможность изменения методов интерфейса в будущем, что может привести к потере работоспособности созданных ранее ASP-серверов. Однако хочется надеяться, что данный интерфейс устоялся, а в Microsoft по какой-либо причине просто забыли внести изменения в интерфейсный модуль.

Интерфейс — потомок IDispatch имеет два свойства: Count, которое всегда возвращает 1, и Item[]-коллекцию, которая возвращает текст, введенный клиентом в элементах управления. Коллекция Item начинается с индекса 1.

Для понимания и тестирования запроса в ASP-объекте сделаем небольшое дополнение к проекту. Воспользовавшись редактором библиотек типов, создадим новый метод RequestProp, как это было описано ранее (см. рис. 2). Напишем следующий код для метода RequestProp:

Скомпилируем проект и в созданном ранее файле Test.asp изменим код на языке VBScript следующим образом: вместо строки DelphiASPObj.ScriptContent напишем строку DelphiASPObj. RequestProp. После этого в Internet Explorer необходимо обратиться к странице Name.htm командой http://10.10.10.65/Test/Name.htm, где вместо 10.10.10.65 следует набрать IP-адрес сервера.

В полученной форме (рис. 3) введем какое-либо значение в элемент управления для редактирования данных и нажмем кнопку Submit. В итоге имеем результат выполнения приведенного выше кода метода RequestProp:

Итак, для определения параметров, введенных клиентом в какой-либо элемент управления, необходимо просмотреть всю коллекцию Keys, найти индекс интересующего нас элемента управления (в нашем примере — это 1, что соответствует ключу T1) и извлечь значение, введенное клиентом, посредством вызова команды Request.Body.Item[Index].Item[1].

Теперь можно перейти к модификации имеющегося сервера — созданию нового метода для доступа к базам данных.

Модуль данных, в который можно помещать невизуальные компоненты, экспертом создания ASP-объекта не генерируется — его необходимо создавать отдельно. Поэтому выберем пункт File|New главного меню среды разработки и из репозитария объектов выберем пиктограмму Data Module. В результате к проекту будет добавлен модуль данных, который мы сохраним под именем U1_02.pas. В этот модуль данных будут помещены невизуальные компоненты доступа к данным (визуальные компоненты в ASP-объектах использовать нельзя).

Вообще говоря, в Web-приложениях (ASP, ISAPI/NSAPI, CGI) показ модальных форм с элементами управления (а диалоги — частный вид таких форм) ни к чему хорошему не приводит. При попытке показать диалог элементы управления на диалоге будут созданы, и приложение будет ожидать, когда диалог будет закрыт (нажатием кнопки OK или Cancel), чтобы продолжить свою работу. Особенность заключается в том, что диалог невидим. Поэтому его нельзя закрыть ни с помощью нажатия на кнопки (они не получают сообщения OnClick), ни с помощью клавиш-акселераторов (сигналы с клавиатуры не посылаются невидимым элементам управления). Визуально программист наблюдает следующее: приложение «висит», отклика от ASP-объекта клиент не получает, а для повторной компиляции проекта требуется перезапуск Internet Information Server либо перезагрузка операционной системы. Даже если команды показа диалогов в ASP-сервере отсутствуют, они могут быть показаны в процессе работы приложения — например, какая-либо из библиотек, используемых приложением, пришлет сообщение об ошибке. Данный факт надо принимать во внимание при написании кода, в котором следует тщательно проверять данные перед их использованием, чтобы внешние приложения или библиотеки не присылали сообщений об ошибках в виде диалогов.

Традиционно доступ к данным в Delphi оcуществляется с помощью механизма Borland Database Engine (BDE), при этом необходимо использовать компоненты TSession, TDatabase и TQuery. Однако при создании ASP-объектов для доступа к данным выяснилось, что в них нельзя использовать BDE для доступа к SQL-серверам — при попытке соединиться с базой данных после передачи параметров, содержащих имя пользователя и пароль, происходит исключение (данный факт был проверен для Oracle 8.0.4 и IB Database 5.5). Через BDE удалось получить доступ только к базе данных DBDEMOS, которая не требует аутентификации пользователя при обращении к данным. К сказанному следует добавить, что в Windows 2000 нельзя получить доступ к данным через BDE в традиционных Web-серверных приложениях ISAPI DLL и CGI, в отличие от предыдущих версий Windows (95/98/NT).

К счастью, в Delphi 5 имеется альтернативный способ доступа к данным — с помощью ADO (ActiveX Data Objects). Для работы с ADO прежде всего необходимо использовать компонент TADOConnection. Поместим его в модуль данных. В инспекторе объектов выберем свойство ConnectionString и вызовем диалог для создания строки. В предложенном диалоге выберем Microsoft OLE DB Provider for Oracle и нажмем кнопку Next (рис. 4).

На второй странице диалога необходимо указать имя сервера (в данном примере — beq-local) и параметры аутентификации: имя пользователя (SCOTT) и пароль (TIGER). Обязательно следует отметить опцию Allow Saving Password, иначе ASP-объект попытается показать диалог ввода имени пользователя и пароля. Протестировать соединение можно нажатием кнопки Test Connection — должно появиться сообщение об успешном соединении с сервером.

Далее в инспекторе объектов следует установить свойство LoginPromp равным False. При работе с другими примерами нужно также изменять свойство DefaultDatabase — имя базы данных, но для данного примера это не обязательно. Проверить правильность установок можно при помощи установления свойства Connected равным True, при этом не должны появляться ни диалог ввода имени пользователя и пароля, ни информация об исключении.

Поместим компонент TADOQuery в модуль данных и в его свойстве Connection сошлемся на определенный выше компонент ADOConnection1.

Следует учесть, что только что разработанный модуль данных автоматически при загрузке ASP-сервера или при обращении клиента к ASP-объекту создаваться не будет. Поэтому необходимо переписать конструктор и деструктор класса TTest, реализация которого находится в файле U1_01.pas. Сошлемся на модуль U1_02.pas в модуле U1_01.pas. В объявлении класса TTest в секции private определим переменную FData типа TDataModule1. В секции public объявим процедуры AfterConstruction и BeforeDesctruction c обязательной директивой override:

Реализуем процедуры AfterConstruction и BeforeDestruction в секции реализации:

Далее в библиотеке типов (см. рис. 2) следует создать новый метод, который назовем QueryResponse. Реализуем его следующим образом:

В данном методе динамически создается SQL-запрос, при этом используются параметры, введенные клиентом в форму на рис. 3. С этим запросом происходит обращение к серверу баз данных, и возвращаемые данные помещаются в HTML-документ. В созданном ранее файле Test.asp изменим код на VBScript следующим образом: вместо строки DelphiASPObj.ScriptContent напишем строку DelphiASPObj. QueryResponse. После этого запустим Microsoft Internet Explorer и снова обратимся к странице Name.htm. Результат выполнения запроса приведен на рис. 5.

При использовании ASP-объекта необходимые для его работы параметры можно поместить, в HTML-документ. Параметры могут редактироваться в документе, что позволит изменять опции для конкретного сайта. Это удобно при поставке ASP-сервера: купившая его компания может изменить начальные установки так, чтобы они соответствовали требованиям компании. Для этого достаточно отредактировать HTML-документ, что возможно даже силами специалистов низкой квалификации.

Пример проиллюстрируем следующим образом: определим в заголовке класса TTest (U1_01.pas) две переменные: FCompanyName:string и FCopyrightYear:string. Определим в библиотеке типов (см. рис. 2) два новых свойства: CompanyName:string и CopyrightYear:integer. В методах *Read и *Wirte для этих свойств определим чтение и возврат данных из описанных выше переменных. В библиотеку типов добавим новый метод ShowCopyright, который реализуем следующим образом:

В созданном ранее файле Test.asp изменим код на языке VBScript:

Результатом обращения к ASP-объекту при помощи команды http://10.10.10.65/Test/Test.asp (вместо 10.10.10.65 следует ввести IP-адрес вашего сервера) будет генерация следующей страницы (рис. 6).

Если в файле Test.asp изменить имя компании (а это можно сделать при помощи любого текстового редактора), соответствующие изменения отобразятся в HTML-документе.

При помощи ASP-объектов можно передавать не только текстовую информацию, но и двоичную, например графические изображения. Создадим обычную HTML-страницу следующего вида:

Файл Test1.asp выглядит следующим образом:

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

Метод GetPicture реализуем следующим образом:

Для передачи двоичных данных необходимо указать их тип в свойстве Response.ContentType и воспользоваться методом BinaryWrite объекта Response. В качестве параметра этого метода используется переменная типа OLEVariant. В этой переменной должны находиться двоичные данные в виде массива байтов. Этот массив передается как отклик. В результате обращения к исходному HTML-документу клиент получит отклик (рис. 7).

До сих пор мы рассматривали in-process-серверы, которые работают в адресном пространстве Internet Information Server и реализуются в динамически загружаемых библиотеках — DLL. В заключение следует сказать и о создании out-of-process ASP-серверов. Такие серверы реализуются в виде исполняемых файлов и работают в отдельном адресном пространстве.

Для создания out-of-process-сервера необходимо открыть готовый проект, компиляция которого приводит к созданию исполняемого файла, или создать новый проект с помощью пункта меню File|New Application. После этого следует выбрать пункт главного меню File|New среды разработки Delphi, а затем со страницы ActiveX репозитария объектов — пиктограмму Active Server Object. В результате будет сгенерирована библиотека типов, содержащая методы OnStartPage и OnEndPage. Все, что было сказано выше по поводу in-process-сервера, справедливо и в отношении out-of-process-сервера: разработка ASP-объекта заключается в создании новых методов, которые будут вызываться из VBScript-кода ASP-страницы.

Сложности возникают при попытке протестировать out-of-process-сервер. По умолчанию параметры настройки Internet Information Server таковы, что запуск им приложений запрещен, а разрешена только загрузка DLL. Более того, в администраторе Internet Information Server отсутствует опция, позволяющая разрешить или запретить использование приложений как ASP-серверов. Для разрешения запуска исполняемого файла как ASP-сервера необходимо выполнить следующий код:

Для выполнения данного скрипта необходимо, чтобы пользователь, инициирующий его выполнение, имел статус администратора. По этой причине данный скрипт бесполезно определять в HTML-документе и запускать его с использованием Internet Explorer, так как любой пользователь Internet имеет статус гостя (Guest), а не администратора. Скрипт необходимо поместить в обработчик какого-либо события в среде разработки Visual Basic или VBA и запустить его оттуда (либо использовать Windows Scripting Host. — Прим.ред.).

К сожалению, в Delphi отсутствует метод, аналогичный методу VBScript GetObject. Очевидно, что метод GetObject возвращает ссылку на интерфейс IDispatch Internet Information Server. Однако при этом в качестве параметра он использует строку, которая не является классовой (ее GUID отсутствует в системном реестре). В Delphi аналогичных методов нет, по крайней мере, в виде простых вспомогательных функций. Возможно, подобный метод станет доступным в следующих версиях Delphi.

ASP в России: суть и технологии, проблемы и решения

Сегодня в отечественной прессе все чаще можно встретить аббревиатуру ASP (application service providing).

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

С точки зрения пользователей ИТ-услуг, ASP — это возможность использования на условиях аренды вычислительной техники, глобальных и локальных сетей, базового и прикладного программного обеспечения, а также многого другого, что, собрав вместе, можно назвать ИТ-инфраструктурой. На практике это означает, что приложения не устанавливаются на компьютерах, принадлежащих предприятию, а работают на серверах у провайдера. Удаленный доступ к приложениям осуществляется через локальные компьютеры.

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

На Западе среди клиентов услуги аренды приложений наибольшим спросом пользуются ПО управления отношениями с заказчиками (CRM — customer relationship management), планирования корпоративных ресурсов (ERP — enterprise resource planning), управления цепочками поставок (SCM — supply chain management), управления транспортными потоками (TSM — transport stream management) и управления хранилищами данных.

Сегодня большинство субъектов российского бизнеса, будь то крупная нефтяная корпорация или частная пекарня, используют информационные технологии для автоматизации своих бизнес-процессов. Для того чтобы стало возможным использование информационных технологий, предприятие должно приобрести в собственность, установить, наладить, сопровождать и модернизировать комплекс вычислительного (серверы, рабочие станции, мобильные устройства), сетевого (провода, концентраторы, маршрутизаторы и т.д.), кабельного (коммутаторы) и периферийного (принтеры, сканеры, мониторы и др.) оборудования.

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

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

К чему все это? Неужели сейчас прозвучит предложение полностью отказаться от использования всего этого? Конечно, нет! Хотя, отчасти, да.

Модель ASP

ИТ-индустрия, как и история человечества в целом, развивается по спирали. Всего лет пятнадцать назад фраза «посидеть за компьютером» означала работу в терминальном зале, где все станции подключены к одному операционному блоку мэйнфрейма с единым адресным пространством, исполняемыми программами, последовательностью запросов и т.д. Многое сегодня изменилось, но основная идея ASP и модели предоставления услуг, к которой мы привыкли с юности, одна и та же.

Развитие технологий Internet предоставляет возможность не приобретать ИТ-ресурсы в собственность, а арендовать их у провайдера прикладных услуг — ASP.

Рис. 1. Модель ASP

Модель ASP (рис. 1) работает следующим образом. Компания ASP организует у себя узел и концентрирует там ИТ-ресурсы, на основе которых и предлагает услуги. Клиент (арендатор) пользуется предлагаемыми услугами на условиях аренды, выплачивая за их пользование ежемесячную плату. Клиент имеет возможность управлять арендуемыми ресурсами через Internet или частные каналы. За свою арендную плату клиент, при наличии доступа к провайдеру услуг, может получить полностью готовую ИТ-инфраструктуру компании.

С точки зрения клиента у модели ASP имеется ряд преимуществ.

  • «Выравнивание» возможностей. Ранее, многие приложения и услуги были по финансовым соображениям недоступны клиенту. Тогда как, необходимость в них есть. Модель ASP позволяет предприятиям малого и среднего бизнеса использовать программное обеспечение, серверы, услуги технической поддержки и регулярные обновления, к которым имеют доступ более крупные компании, но по более низкой цене.
  • Снижение затрат, за счет отсутствия: поиска и внедрения дорогостоящих систем; стартового приобретения оборудования и базового программного обеспечения; содержания персонала, обслуживающего ИТ-ресурсы.
  • Услуги предоставляются квалифицированным персоналом ASP. Например, резервное копирование и оперативное восстановление данных, круглосуточная техническая поддержка, автоматический переход на новые версии ПО.
  • Финансовое планирование. Поскольку клиенты свободны от ИТ-имущества на балансе и только арендуют его у провайдера, то они в любой момент могут отказаться от дальнейшего получения услуг ASP или оперативно переконфигурировать их.

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

Объекты аренды

Рассмотрим теперь примеры того, какие ИТ-ресурсы и каким образом могут быть арендованы через ASP.

Web-хостинг. Простейшая форма аренды ИТ-ресурсов. Реально арендуется дисковое пространство на сервере, подключенном к Сети. Другими словами, это возможность получения пользователями Internet доступа к информации арендатора. Этот вид аренды получил очень широкое распространение вследствие существенной разницы между затратами на организацию собственного Web-сервера и стоимостью аренды его у провайдера (от 0 до 50 долл. в месяц).

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

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

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

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

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

Аренда программных приложений. Основная часть ASP, что, собственно и заложено в самом названии — это распространение услуг доступа к приложениям, аренда ПО. Конечно, точнее говорить об аренде сервисов, построенных на основе программных приложений.

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

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

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

Решение от ASP

Провайдер приложений устанавливает у себя компьютер, например, с операционной системой Windows 2000, поддерживает на нем корректную работу СУБД, скажем, с Microsoft SQL Server 7.0 и готового многофункционального Internet-магазина. На этом сервере сотрудники ASP-компании выполняют корректную настройку приложения и обеспечивают регулярное техническое сопровождение, резервное копирование и, что важно, оперативное обновление версий магазина. Переход на новые и совместимые версии продукта приводит к улучшениям в электронном бизнесе клиента.

Исходя из схемы ASP, клиенты получают доступ к приложению на сервере через Internet с использованием клиентской утилиты администрирования.

Учитывая, что реальная арендная плата за Internet-магазин не превышает 5% в месяц от стоимости его создания или покупки в собственность готового решения, то это становится выгодно для компании, входящей в Internet-бизнес. Если через три месяца проект закроют — убытки составят «всего» 15% от возможных при обычной схеме. Нет стартового финансового порога, а для того чтобы выйти на рынок, не нужны начальные инвестиции — сначала открывается Internet-бизнес, а все расходы можно растянуть во времени и платить уже из прибыли.

Клиент получает в свое распоряжение нужный ему Internet-магазин с привычным интерфейсом и может использовать его для получения информации и оперативного обновления данных. Что очень важно, клиент освобождается от необходимости покупать лицензии на СУБД, устанавливать программное обеспечение, настраивать, резервировать данные, а еще и оплачивать услуги программистов. В результате:

  • клиент за меньшую сумму получает необходимую ему услугу. Иными словами, стоимость аренды приложения для него намного ниже совокупной стоимости отдельного экземпляра программы совместно со стоимостью владения этой копией;
  • выигрывает поставщик программного обеспечения, так как услугой смогли воспользоваться клиенты, которые раньше не могли себе позволить покупку в собственность Internet-приложения, а, следовательно, число постоянно платящих клиентов увеличилось. Это значит, что отсутствует такая головная боль всех руководителей компаний-разработчиков ПО как колебания cash flow (денежных потоков) от версии к версии продукта;
  • выигрывает провайдер услуг, который несет определенные, но покрываемые взимаемой арендной платой дополнительные расходы при подключении всё новых и новых пользователей. Многие клиенты будут параллельно на одном сервере запускать и выполнять приложения, однажды настроенные администратором. Как следствие, стоимость аренды приложения не включает существенных статей расходов.

Так, «Гарант-Парк-Интернет» запрашивает за аренду Internet-магазина чуть менее 100 долл. в месяц, причем установка и настройка производится бесплатно в течение одного-трех дней. Предоставляются также дополнительные услуги по оформлению и презентации магазина.

Помимо электронной торговли примеров вариантов услуг для аренды у ASP множество: обработка электронной почты предприятия, офисные приложения, поиск вирусов, системы ERP, бухгалтерский учет, различные расчетные (биллинговые) системы, системы обратной связи (интерактивные консультации, форумы, чаты) и т.д.

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

Отечественная специфика

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

Согласно исследованиям компании ARC Advisory Group, рынок аренды ПО через Internet, когда программы выступают в роли услуг, а не продуктов, к концу 2004 года возрастет до 8 млрд. долл. Причина такого роста заключается в том, что созрели технологии и появилось много специализированных приложений. Современные инструменты разработки позволяют быстро создавать и внедрять приложения, а каналы связи обеспечивают достаточную скорость доступа и надежность.

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

Нам, как всегда, приходится догонять. К тому же, помимо общемировых, в России есть специфические причины, тормозящие развитие рынка ASP. В первую очередь, это общее отставание нашей экономики и, как следствие, более вялое внедрение современных информационных систем в деятельность предприятий. Скудный классический комплект ПО, использующийся в малом и среднем бизнесе, — Microsoft Office и бухгалтерия. На корпоративном рынке ситуация с внедрением выглядит, на первый взгляд, получше. Однако вследствие относительно слабых менеджмента и формализации бизнес-процессов на большинстве крупных российских предприятий, современные системы управления используются не столь эффективно, как хотелось бы.

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

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

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

Тем не менее, все эти проблемы постепенно будут решаться, и развитие рынка аренды приложений в России, хоть и медленно, но произойдет. Какие же программные системы могут работать в режиме аренды уже сегодня?

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

Интересным может оказаться рынок аренды системы групповой работы, включающий в себя возможность использования сотрудниками предприятия таких служб, как электронная почта (внутренняя и внешняя), индивидуальное и групповое планирование, хранение больших архивов электронной информации.

Большие игры для маленьких компаний

Расширение рынка ASP в мире способно cерьезно повлиять на развитие всей ИТ-индустрии. Изменятся отношения между разработчиками ПО, провайдерами разных типов, продавцами, клиентами и другими игроками этого рынка. Отрадно, что и нашу страну тоже захватил этот процесс. Эволюция Internet — естественный процесс, и хотим мы этого или нет, мы станем частью происходящих в ИТ-бизнесе изменений.

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

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

Об авторах

Максим ЗахаренкоАлександр Печников сотрудники компании «Гарант-Парк-Интернет». С ними можно связаться по адресам: max/avp@park.ru соответственно.

Решение для групповой работы

Крупные организации, имеющие собственные клиент-серверные системы, и, как следствие, всю необходимую инфраструктуру, могут самостоятельно внедрить, например, средства групповой работы. А что делать предприятиям малого и среднего бизнеса, не имеющим пока достаточных собственных ИТ-ресурсов? Ведь этому предприятию, точно также необходимы внутренняя и внешняя электронная почта, средства для планирования мероприятий и событий, механизм постановки и контроля исполнения заданий, система документооборота, возможность оперативного обсуждения проблем и т.д.

Такие заказчики могут арендовать Microsoft Exchange Server, точнее не само программное обеспечение, а услуги, которые оно предоставляет. Провайдер на своей территории (узле) устанавливает и подключает к Internet сервер с установленным на нем Exchange Server, производит необходимые настройки и заводит почтовые ящики пользователей. Предприятие организует (возможно, с помощью провайдера) подключение к Internet, например, по коммутируемой линии. На рабочих станциях сотрудников устанавливается почтовая программа-клиент (Outlook, Outlook Express и др.), либо браузер. Начиная с этого момента, любой сотрудник предприятия может пользоваться всеми функциями Exchange, как будто сервер электронной почты расположен непосредственно в офисе.

Предприятие пользуется услугами на условиях аренды, ежемесячно выплачивая определенную сумму провайдеру. Компания «Гарант-Парк-Интернет», предоставляющая подобную услугу, взимает порядка 5-6 долл. на рабочее место, не считая аренды оборудования и платного трафика.

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

Поделитесь материалом с коллегами и друзьями

«Администрирование программного обеспечения»

Федеральное агентство по образованию


Государственное образовательное учреждение

«Северо-Кавказский государственный технический университет»

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению лабораторных работ

по дисциплине

«Администрирование программного обеспечения»

для студентов специальности

351– «Прикладная информатика

Ставрополь 2005

Методические указания к выполнению лабораторных работ по дисциплине «Администрирование программного обеспечения» составлены в соответствии с программой дисциплины для студентов специальности 351«Прикладная информатика (в экономике)».

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

Составитель: к. ф.– м. н., доцент

Резензент: к. т. н., доцент

Лабораторная работа № 1

Администрирование баз данных. Парольная защита БД, спроектированных в СУБД Access

Цель и содержание: познакомить студентов с основными методами защиты и администрирования баз данных, рассмотреть парольную защиту в качестве одного из методов администрирования базы данных.
Теоретическое обоснование

В процессе администрирования баз данных (БД) существенное внимание должно уделяться их защите. Основными методами защиты БД являются парольная защита, защита на уровне пользователя и шифрование.

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

Парольная защита является наиболее простым и распространенным способом защиты данных и администрирования БД. В этом случае этот пароль называют паролем базы данных.

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

Однако использование методов парольной защиты совместно с защитой на уровне пользователей недопустимо. Это возможно только в том случае, если доступ по пароля к БД получает её администратор.

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

Парольная защита БД не может быть использована в том случае, если в дальнейшем предполагается создание копий (или репликаций) БД. В частности, СУБД Access не поддерживает такой возможности.

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

Аппаратура и материалы. Для выполнения лабораторной работы необходим персональный компьютер со следующими характеристиками: процессор Intel с тактовой частотой 1800 МГц и выше; оперативная память — не менее 128 Мбайт, свободное дисковое пространство — не менее 500 Мбайт, устройство для чтения компакт – дисков, монитор типа Super VGA (число цветов — 256) с диагональю не менее 17 ². Программное обеспечение – операционная система WINDOWS 2000 / XP, система управления базами данных Access 2000 и выше.

Указания по технике безопасности. Техника безопасности при выполнении лабораторной работы совпадает с общепринятой для пользователей персональных компьютеров. В частности, самостоятельно не производить ремонт персонального компьютера, установку и удаление программного обеспечения; в случае неисправности персонального компьютера сообщить об этом обслуживающему персоналу лаборатории (оператору, администратору); соблюдать правила техники безопасности при работе с электрооборудованием; не касаться электрических розеток металлическими предметами; рабочее место пользователя персонального компьютера должно содержаться в чистоте; не разрешается возле персонального компьютера принимать пищу, напитки.

Методика и порядок выполнения работы

Методика и порядок выполнения задания 1

При выполнении задания 1 студенты должны использовать практические навыки проектирования баз данных, полученные при изучении дисциплин «Базы данных», «Предметно-ориентированные экономические информационные системы».

Задание 1. Для заданной предметной области сформируйте Базу данных. Предметную область выберите либо из списка предлагаемого преподавателем, либо предложите самостоятельно.

Список предметных областей для выполнения задания 1

3. Спортивные соревнования.

4. Паспортный стол.

6. Поставка и реализация программного обеспечения на CD – дисках.

9. Учет материальных ценностей.

11. Обзор компаний мобильной связи.

13. Станция технического обслуживания автомобилей.

14. Аптечный склад.

15. Поставка и реализация продуктов питания.

16. Поставка и реализация бытовой техники.

18. Санкции ГИБДД (ГАИ).

20. Операции с недвижимостью.

21. Налогообложение малых предприятий.

24. Железнодорожный вокзал.

25. Банковские операции.

26. Рынок Internet – провайдеров.

27. Жилищно-коммунальное хозяйство.

29. Учет сетевого и компьютерного оборудования.

30. Страховая компания.

32. Поставка и реализация легковых автомобилей российских производителей.

33. Поставка и реализация сельскохозяйственной продукции.

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

36. Автозаправочная станция.

37. Отпуск изделий.

38. Учет бегущих строк на телевидении.

39. Энциклопедия «Формулы – 1».

Методика и порядок выполнения задания 2

1. Закройте базу данных, для которой следует установить парольную защиту. В том случае, если она является сетевой, то необходимо закрыть её на всех рабочих станциях.

2. Перейдите в главное меню СУБД Access, нажав клавишу F10, или выполнив щелчок правой кнопкой мыши на любом его пункте.

3. Затем в опции File (файл) активизируйте команду Open (открыть) и нажмите клавишу Enter.

4. В диалоговом окне Open databases (открытие базы данных) установите флажок в поле Монопольно (Exclusive), что позволяет открыть базу данных в режиме монопольного доступа.

5. Для установки парольной защиты базы данных перейдите в опцию меню Сервис (Tools), в которой затем выберите команду Защита (Security).

6. В появившемся контекстном меню активизируйте команду Задать пароль базы данных (Set Database Password).

7. В поле Password (пароль) диалогового окна Задать пароль базы данных (Set Database Password) введите кодовое слово, учитывая регистр и раскладку клавиатуры.

8. Для записи, введенного пароля в специальный файл, необходимо выполнить операцию его подтверждения. Для этого перейдите в поле Verify (подтверждение) окна Задать пароль базы данных (Set Database Password) и вновь введите пароль, а затем нажмите кнопку ОК.

Задание 2. Для созданной в задании №1 базы данных, задайте парольную защиту.

Методика и порядок выполнения задания 3

1. Откройте сформированную ранее БД в режиме монопольного доступа.

2. Перейдите в главном меню СУБД Access в опцию Сервис, а затем выполните следующие команды: Защита → Удалить пароль базы данных: F10 → Tools → Security → Unset Database → Password. Следует заметить, что команда удаления пароля будет доступна только в том случае, если он был установлен ранее.

3. После нажатия на клавишу Enter на экран будет выведено диалоговое окно Удалить пароль базы данных.

4. В нем перейдите в поле Пароль (Password) и введите заданный пароль базы данных.

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

Задание 3. Удалите парольную защиту базы данных, спроектированной в задании 1.

Содержание отчета и его форма

Отчет по лабораторной работе должен состоять из:

1) названия лабораторной работы;

2) ответов на контрольные вопросы;

3) формулировки задания (заданий) и порядка его (их) выполнения.

Отчет о выполнении лабораторной работы в письменном виде сдается преподавателю.

Вопросы для защиты работы

1. Перечислите основные методы защиты базы данных.

2. Охарактеризуйте парольную защиту базы данных как метод администрирования БД.

3. Каким образом установить защиту БД с помощью пароля?

4. Снятие парольной защиты БД. Алгоритм.

Лабораторная работа № 2

Администрирование баз данных. Защита на уровне пользователя

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

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

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

Вся информация о каждой из рабочих групп сохраняются в соответствующем файле рабочих групп (РГ). В нем содержится информация об отдельных пользователях и их группах, учетные записи отдельных пользователей и групп пользователей. Для каждой из учетных записей в СУБД сохраняются права доступа к объектам базы данных. По умолчанию СУБД создается две группы пользователей: администраторы (имя группы Admins), пользователи (Users)

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

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

1. Группы Admins и Users не могут быть удалены, так как создаются системой по умолчанию.

2. Группа Admins не может быть пустой, в ней должен храниться хотя бы один пользователь.

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

4. Удаление пользователей базы данных из группы Admins невозможно.

5. Иерархия групп пользователей баз данных недопустима, то есть нельзя размещать создаваемые рабочие группы в ранее созданных.

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

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

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

Аппаратура и материалы. Для выполнения лабораторной работы необходим персональный компьютер со следующими характеристиками: процессор Intel с тактовой частотой 1800 МГц и выше, оперативная память — не менее 128 Мбайт, свободное дисковое пространство — не менее 500 Мбайт, устройство для чтения компакт – дисков, монитор типа Super VGA (число цветов — 256) с диагональю не менее 17 ². Программное обеспечение – операционная система WINDOWS 2000 / XP, система управления базами данных Access 2000 и выше.

Указания по технике безопасности. Техника безопасности при выполнении лабораторной работы совпадает с общепринятой для пользователей персональных компьютеров. В частности: самостоятельно не производить ремонт персонального компьютера, установку и удаление программного обеспечения; в случае неисправности персонального компьютера сообщить об этом обслуживающему персоналу лаборатории (оператору, администратору); соблюдать правила техники безопасности при работе с электрооборудованием; не касаться электрических розеток металлическими предметами; рабочее место пользователя персонального компьютера должно содержаться в чистоте; не разрешается возле персонального компьютера принимать пищу, напитки.

Методика и порядок выполнения работы


Методика и порядок выполнения задания 1

1. Загрузите созданную Вами базу данных.

2. Войдите в главное меню Access и перейдите в опцию Сервис (Tools), в которой затем активизируйте команду Защита (Security).

3. В появившемся контекстном подменю выберите команду Пользователи и группы (User and Group Accounts) и нажмите кнопку ОК.

4 В диалоговом окне Пользователи и группы (User and Group Accounts) активной является вкладка Пользователи. По умолчанию в ней установлен пользователь Admin.

5. Для установки защиты базы данных на уровне пользователя перейдите на вкладку Изменение пароля. В ней следует пустым оставить поле Текущий пароль (Old Password), а в поле Новый пароль (New Password) ввести пароль.

6. Для подтверждения заданного пароля его необходимо ввести в поле Verify (подтверждение).

Задание 1. Для спроектированной в задании 1 лабораторной работы № 1 базы данных, установите защиту на уровне пользователя. При этом предусмотрите, что для рабочих групп Admins и Users пароли для входа в базу данных будут различными.

Методика и порядок выполнения задания 2

1. Загрузите СУБД Access.

2. Откройте спроектированную Вами базу данных.

3. Выполните следующую последовательность действий для создания рабочей группы: 1) F10 → Tools → Security → Users and Group Accounts (F10 → Сервис → Защита → Пользователи и рабочие группы); 2) в диалоговом окне Пользователи и группы перейдите на вкладку Группы; 3) в этой вкладке в поле «Имя» введите название группы; 4) затем вернитесь во вкладку Пользователи и введите в поле «Имя» имя пользователя, принадлежащего этой группе.

4. Пароль для доступа к базе данных для пользователя новой группы создается, используя с помощью алгоритма приведенного в задании 1.

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

Методика и порядок выполнения задания 3

1. Запустите СУБД Access и откройте спроектированную базу данных.

2. Войдите в главное меню Access, нажав F10.

3. В главном меню СУБД выберите опцию Сервис (Tools), в которой затем последовательно выполните команды Защита → Разрешения (Security → User And Group Permission).

4. После нажатия на кнопку ОК на экран будет выведено диалоговое окно Разрешения (User And Group Permission), которое содержит две вкладки Разрешения (User And Group Permission) и Смена Владельца (Change Owner).

5. Для определения прав пользователей базы данных и рабочих групп следует выполнить следующие действия6

1) в поле Пользователи и группы выберите имя пользователя или наименование рабочей группы;

2) в поле Имя объекта укажите к какому из объектов получает доступ пользователь;

3) установите переключатель в положение «пользователи» или «группы»;

4) в ниспадающем меню «Тип объекта» выберите элемент базы данных, для которого следует установить разрешения;

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

6. Для завершения установки разрешений к объектам базы данных нажмите кнопку Apply (Применить).

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

Методика и порядок выполнения задания 4

1. Запустите СУБД Access

2. Подключитесь к базе данных в режиме администратора, то есть члена группы Admins.

4. Предоставьте членам группы Users полные прав доступа к базе данных.

5. Выйдите из системы Access.

Задание 4. Отмените защиту базы данных на уровне пользователя, для спроектированной Вами в заданий 1 лабораторной работы №1 базы данных.

Содержание отчета и его форма

Отчет по лабораторной работе должен состоять из:

1) названия лабораторной работы;

2) цели лабораторной работы;

3) ответов на контрольные вопросы;

4) формулировки заданий и порядка их выполнения.

Отчет о выполнении лабораторной работы в письменном виде сдается преподавателю.

Вопросы для защиты работы

1. Охарактеризуйте защиту базы данных на уровне пользователя как один из способов администрирования баз данных.

2. Каким образом устанавливается защита на уровне пользователя в СУБД Access.

3. Создание пользователей в Access.

4. Создание рабочих групп в Access.

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

6. Снятие защиты на уровне пользователя в Access.

Лабораторная работа № 3

Администрирование баз данных. Шифрование баз данных

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

Теоретическое обоснование

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

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

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

Аппаратура и материалы. Для выполнения лабораторной работы необходим персональный компьютер со следующими характеристиками: процессор Intel с тактовой частотой 1800 МГц и выше, оперативная память — не менее 128 Мбайт, свободное дисковое пространство — не менее 500 Мбайт, устройство для чтения компакт – дисков, монитор типа Super VGA (число цветов — 256) с диагональю не менее 17 ². Программное обеспечение – операционная система WINDOWS 2000 / XP, система управления базами данных Access 2000 и выше.

Указания по технике безопасности. Техника безопасности при выполнении лабораторной работы совпадает с общепринятой для пользователей персональных компьютеров. В частности: самостоятельно не производить ремонт персонального компьютера, установку и удаление программного обеспечения; в случае неисправности персонального компьютера сообщить об этом обслуживающему персоналу лаборатории (оператору, администратору); соблюдать правила техники безопасности при работе с электрооборудованием; не касаться электрических розеток металлическими предметами; рабочее место пользователя персонального компьютера должно содержаться в чистоте; не разрешается возле персонального компьютера принимать пищу, напитки.

Методика и порядок выполнения работы
Методика и порядок выполнения задания 1

1. Запустите СУБД Access.

2. Закройте базу данных, которую необходимо зашифровать. Если она доступна группе пользователей, то она должна быть закрыта одновременно на всех машинах.

3. Войдите в главное меню (F10) и выполните последовательность действий: F10 → Tools→ Security → Encrypt Database (F10 → Сервис→ Защита → Шифрование базы данных).

4. После нажатия на ОК на экран будет выведено диалоговое окно Шифровать базу данных (Encrypt Database), в котором выберите имя базы данных, которую следует зашифровать и нажмите ОК.

5. Укажите путь доступа к зашифрованной базе данных и её новое имя.

Задание 1. Зашифруйте базу данных, спроектированную Вами в задании 1 лабораторной работы №1.

Методика и порядок выполнения задания 2

1. Загрузите СУБД Access.

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

3. Вызовите диалоговое окно Дешифрация базы данных (Decrypt Database), выполнив последовательность действий: F10 → Tools→ Security → Decrypt Database (F10 → Сервис→ Защита → Дешифровать базу данных).

4. В появившемся на экране диалоговом окне выберите имя базы данных, которую следует дешифровать, и нажмите ОК.

5. Затем укажите имя дешифрованной базы данных и полный путь доступа к ней.

Задание 2. Выполните операцию дешифрации базы данных.

Содержание отчета и его форма

Отчет по лабораторной работе должен состоять из:

1) названия лабораторной работы;

2) ответов на контрольные вопросы;

3) формулировки заданий и порядка их выполнения.

Отчет о выполнении лабораторной работы в письменном виде сдается преподавателю.

Вопросы для защиты работы

1. Шифрование баз данных как метод администрирования баз данных.

2. Последовательность действий при шифровании баз данных.

3. Алгоритм дешифрования баз данных.

Лабораторная работа № 4

Администрирование баз данных. Обслуживание баз данных

Цель и содержание: познакомить студентов с методами администрирования и обслуживания баз данных.

Теоретическое обоснование

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

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

Повреждение базы данных может быть вызвано следующими причинами: 1) воздействие компьютерных вирусов; 2) наличие дефектов (логических и физических) на дисках; 3) повреждениями во время эксплуатации.

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

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

Аппаратура и материалы. Для выполнения лабораторной работы необходим персональный компьютер со следующими характеристиками: процессор Intel с тактовой частотой 1800 МГц и выше, оперативная память — не менее 128 Мбайт, свободное дисковое пространство — не менее 500 Мбайт, устройство для чтения компакт – дисков, монитор типа Super VGA (число цветов — 256) с диагональю не менее 17 ². Программное обеспечение – операционная система WINDOWS 2000 / XP, система управления базами данных Access 2000 и выше.

Указания по технике безопасности. Техника безопасности при выполнении лабораторной работы совпадает с общепринятой для пользователей персональных компьютеров. В частности: самостоятельно не производить ремонт персонального компьютера, установку и удаление программного обеспечения; в случае неисправности персонального компьютера сообщить об этом обслуживающему персоналу лаборатории (оператору, администратору); соблюдать правила техники безопасности при работе с электрооборудованием; не касаться электрических розеток металлическими предметами; рабочее место пользователя персонального компьютера должно содержаться в чистоте; не разрешается возле персонального компьютера принимать пищу, напитки.

Методика и порядок выполнения работы
Методика и порядок выполнения задания 1

Методика выполнения задания № 1 заключается в правильном использовании программ «файловых менеджеров»

Задание 1. Создайте резервную копию базы данных, разработанной Вами в задании 1 лабораторной работы № 1.

Методика и порядок выполнения задания 2

1. Запустите СУБД Access.

2. Если открытая Вами ранее база данных совершает непредсказуемые действия, то её вначале следует закрыть. В том случае, если база данных является сетевой, то её должны закрыть все пользователи, работающие с ней в данный момент.

3. Создайте резервную копию базы данных.

4. Для восстановления файла базы данных выполните следующую последовательность действий: F10 → Сервис → Служебные программы → Восстановить → Ввод (F10 → Tools → Database Utilities → Repair Database → Enter).

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

Задание 2. Выполните восстановление поврежденной базы данных. Перед выполнением данного задания допустите ошибки при загрузке базы данных, сформированной в задании 1 лабораторной работы № 1.

Методика и порядок выполнения задания 3


1. Загрузите СУБД Access. В нем откройте ранее сформированную базу данных.

2. Для сжатия базы данных выполните последовательность действий: F10 → Сервис → Служебные программы → Сжать → Ввод (F10 → Tools → Database Utilities → Compact Database → Enter).

3. В диалоговом окне Compact Database (база данных для сжатия) выберите базу данных для сжатия, а затем нажмите кнопку Compact (Сжать).

Задание 3. Выполните операцию сжатия базы данных. В качестве исходной базы данных для сжатия выберите базу, спроектированную в задании 1 лабораторной работы № 1.

Содержание отчета и его форма

Отчет по лабораторной работе должен состоять из:

1) названия лабораторной работы;

2) ответов на контрольные вопросы;

3) формулировки заданий и порядка его выполнения.

Отчет о выполнении лабораторной работы в письменном виде сдается преподавателю.

Вопросы для защиты работы

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

2. Копирование баз данных.

3. Алгоритм восстановления базы данных.

4. Последовательность действий при сжатии баз данных.

Лабораторная работа № 5

Администрирование баз данных. Репликация баз данных

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

Теоретическое обоснование

Администрирование баз данных методом репликации позволяет создавать так называемые специальные «горячие» копии баз данных средствами СУБД Access.

Репликацией будем называть процесс создания специальных копий (реплик) базы данных, спроектированных средствами СУБД Access, с которыми могут одновременно работать пользователи сразу на нескольких компьютерах. Отличие репликации от обычного резервного копирования баз данных заключается в том, что для каждой из создаваемых реплик возможна синхронизация с остальными.

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

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

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

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

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

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

1) распространение приложений;

2) доступ к данным;

3) резервное копирование;

4) перераспределение нагрузки и распараллеливание работы пользователей.

Репликацию базы данных, спроектированной средства СУБД Access

Назначение программного обеспечения и задачи администрирования

Назначение программного обеспечения сводится к следующему: Kerio Control/Winroute Firewall обеспечивает контроль доступа пользователей к ресурсам сети и Интернета, позволяет обеспечить доступ в Интернет по средствам proxy-сервера, позволяет настроить политику доступа пользователей к ресурсам в зависимости от их приоритета. Ведет статистику по компьютерам, пользователям, сайтам, в том числе и по трафику. Kerio Control/Winroute Firewall контролирует доступ приложений к Интернету, ведет Log ошибок и атак.

В Kerio Control/Winroute Firewall возможна доустановка специальных компонентов, которые позволяют удаленно производить администрирование серверов, за это отвечает программный компонент VPN Clients (VPN — Virtual Private Network), это нужно для того чтобы иметь возможность управлять сетью и обеспечивать безопасность сети находясь вне колледжа.

К основным задачам администрирования можно отнести:

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

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

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

— инсталляция новых программных средств — после приобретения нового программного обеспечения его нужно инсталлировать и протестировать. Если программы работают нормально, пользователям необходимо сообщить об их наличии и местонахождении. Локальное программное обеспечение следует инсталлировать туда, где его можно будет легко отличить от программных средств, поставляемых в составе операционной системы (например, UNIX). Это значительно упрощает задачу расширения операционной системы, поскольку исчезает опасность уничтожения локального программного обеспечения в ходе подобного расширения;

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

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

— ведение локальной документации — системный администратор должен документировать все инсталлируемые программные средства, не входящие в стандартный комплект поставки, документировать разводку кабелей, вести записи по обслуживанию всех аппаратных средств, регистрировать состояние резервных копий, документировать локальные процедуры и правила работы с системой;

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

Инструкция по установке

WinRoute необходимо установить на компьютер, который используется как шлюз, связанный с локальной сетью и Интернетом. Этот компьютер должен иметь по меньшей мере один интерфейс для связи с локальной сетью ((Ethernet, TokenRing), и по меньшей мере один интерфейс для связи с Интернетом. В качестве интерфейса для связи с Интернетом, можно использовать сетевой адаптер (Ethernet, WaveLAN) или модем (аналоговый, ISDN). Также рекомендуется проверить следующие пункты прежде, чем начать установку WinRoute:

должно быть верно установлено время в операционной системе (для своевременного выполнения функций, обновлений антивирусных программ);

последние пакеты обновления и любые, рекомендуемые Microsoft, обновления безопасности были применены;

параметры TCP/IP должны быть установлены для всех доступных адаптеров сети;

все сетевые подключения (к местной сети и к Интернет) должны функционировать должным образом. Можно использовать, например команду ping, чтобы определить время, которое необходимо для соединения.

Эти проверки и прединсталяционные испытания могут защитить от более поздних проблем и осложнений. Базовая установка всех поддержанных операционных систем включает все компоненты, требуемые для нормального функционирования WinRoute.

Как только программа инсталяции запущена (то есть через kerio-kwf-mcafee-6.0.1-win.exe), гид проведет через установку основных параметров брандмауэра. Будет предложено сделать выбор между двумя типами установки — полной или выборочной. Выборочная установка позволит устанавливать индивидуальные компоненты WinRoute:

брандмауэр WinRoute — ядро программы;

монитор WinRoute — утилита Брандмауэр WinRoute управляющий и контролирующий его статус (иконка в системном трее);

VPN Support — частное VPN решение разработанное Kerio Technologies;

администраторский терминал Kerio — универсальная консоль для всех серверных приложений Kerio Technologies.

Рисунок 3.1 – Интерфейс выбора между двумя типами установки

Если указать выборочный способ инсталляции, поведение инсталяционной программы будет следующим:

все выбранные компоненты будут установлены или обновлены;

все выбранные компоненты не будут установлены или будут удалены.

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

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

Инструкция по настройке

Для того чтобы запустить программу Kerio Control/WinRoute Firewall необходимо произвести минимум настроек:

В первую очередь необходимо настроить меню Interfaces и меню Routing Table.

Рисунок 3.2 – Меню настроек Interfaces

Interfaces — используется для идентификации интерфейсов в WinRoute. Для легкого доступа, желательно, чтобы оно было однозначным, например Интернет для интерфеса соединения с Интернет. Иконка, расположенная слева от имени, представляет тип интерфейса (сетевой адаптер, dial-up соединение, спутниковое соединение, VPN-сервер, VPN-туннель).

IP Adress and Mask — IP адрес и маска подсети этого интерфейса.

Adapter Name — название связи (например “связь по ЛВС 2”).

Adapter Info — идентификационная строка адаптера, возвращенная драйвером устройства.

Add — добавляет новый dial-up интерфейс или VPN канал (см. ниже).

Edit — отображает подробную информацию и позволяет редактировать параметры интерфейса.

Remove — удаляет выбранный интерфейс из WinRoute.

Refresh — используйте эту кнопку, чтобы обновить список интерфейсов.

Dial-In — этот интерфейс представляет сервер удаленного доступа RAS (dial-up содединение сети) на хосте WinRoute. Этот интерфейс может использоваться для определения правил трафика для клиентов RAS которые присоединяются к серверу. Dial-In не может быть сконфигурирован или удален.

VPN сервер — этот интерфейс представляет сервер, который обеспечивает связь для частного VPN клиента Kerio Technologies. Кликните два раза на этом интерфейсе, или кликните Edit, чтобы редактировать назначения и параметры VPN сервера. VPN интерфейс сервера не может быть удален.

Кликните на кнопке Add, чтобы добавить новый интерфейс, dial-up или VPN туннель (то есть сервер-сервер VPN соединение).

Рисунок 3.3 – Меню настройки Routing Table

В данных разделах меню настройки программы необходимо указать:

настройки подключения к Интернету (IP, маску сети);

прописать настройки локальной сети (IP, маску сети).

Используя Администраторский Терминал Kerio, можно просматривать и редактировать таблицу маршрутизации — Routing Table узла WinRoute. Это особенно полезно для удаленного решения проблем маршрутизации (нет необходимости использовать приложения для доступа к терминалам, удаленному рабочему столу и т.д.).

Следующим шагом нужно произвести настройку меню DNS Forwarder (рисунок 3.4), что позволит в совокупности с ранее произведенными настройками меню Interfaces запустить программу для работы в виде межсетевого экрана. Это позволит данному серверу на котором установлен межсетевой экран Kerio Control/WinRoute Firewall выполнить аутентификацию на одном из DNS-серверов провайдера для получения доступа к Интернету.

Enable DNS forwarding — активизировать пересылку. Эта опция переключает режимы включен/выключен для DNS Форвардера (сервис работает на порту 53 и использует протокол UDP). Если DNS Форвардер не используется в конфигурации сети, его можно отключить. Если вы хотите использовать на том же узле другой DNS сервер, DNS Форвардер должен быть отключен, иначе на порту возникнет конфликт.

DNS forwarding — пересылка DNS. DNS Форвардер должен знать по меньшей мере один DNS-сервер для пересылки запросов. Эта опция определяет, как DNS Форвардер будет идентифицировать IP адрес сервера:

l Автоматически пересылать запросы DNS на другой сервер. (Forward DNS queries to the server automatically. ) — требуется функциональное интернет-соединение. В конфигурации TCP/IP необходимо указать по меньшей мере один DNS сервер (в Windows DNS серверы определяются для определенных адаптеров, но эти настройки будут автоматически использоваться в DNS Форвардер).

l Пересылать запросы DNS указанному DNS серверу (серверам) (Forward DNS queries to the specified DNS сервер(s)) — запросы DNS будут пересылаться указанному DNS серверу/серверам (если указан более чем один сервер, они будут считаться как главный, вторичный и т.д.).

Enable cache for faster response of repeated queries — позволить кеширование для ускорения ответов на повторяющиеся запросы. Если эта опция включена, все ответы будут храниться в локальной кеш-памяти DNS Форвардера (обычно это 24 часа). Ответы на повторяющиеся запросы заметно ускорятся (один запрос, посылаемый разными клиентами, тоже считается повторяющимся запросом).

Use custom forwarding — использовать пользовательскую пересылку. Эта опция определяет пользовательские установки для пересылки определенных запросов DNS другим серверам DNS. Это может помочь, например, когда нужно использовать локальный сервер DNS для локального домена (другие запросы DNS будут пересылаться прямо в Интернет — это ускорит ответ).

Используйте кнопку «Определить» (Define), чтобы открыть диалог определения пользовательских правил.

Simple DNS Resolution — режим простого DNS — DNS Форвардер может использоваться как простой DNS-сервер для одного из локальных доменов. Это может выполняться благодаря следующим функциям:

«host file» (файл узла) — этот файл можно найти в любой операционной системе, поддерживающей TCP/IP. Каждая строчка в этом файле включает IP-адрес узла и список соответствующих имен DNS. При получении DNS-запроса, в первую очередь проверяется этот файл, чтобы выяснить, содержится ли там нужное имя или IP-адрес. Если нет, то запрос пересылается на сервер DNS.

Если эта функция активирована, DNS Форвардер будет следовать тому же правилу. Используйте кнопку «Правка», чтобы открыть специальный редактор, где host file можно редактировать с использованием Администраторского Терминала, даже если последний удаленно связан с WinRoute.

Таблица DHCP — если узлы локальной сети настроены с помощью сервера DHCP в WinRoute, то сервер DHCP будет знать, какой IP-адрес определен для каждого узла. После запуска системы узлы посылают запрос для определения IP-адреса, куда входит имя узла. DNS Форвардер имеет доступ к таблицам DHCP и может выяснить, какой IP-адрес был назначен для определенного имени узла. Если потребовать сообщить локальное имя узла, DNS Форвардер всегда будет сообщать текущий IP-адрес.

Рисунок 3.4 – Меню настройки DNS Forwarder

Теперь необходимо произвести настройки HTTP Policy/Proxy Server (рисунок 3.5), так как данная программа позволяет использовать себя в качестве простого Proxy Servera. Здесь необходимо указать порт Proxy-Servera, по средствам которого будет производиться подключение к Интернету.

Можно также Перенаправить на родительский Прокси-сервер — parent proxy server с указанием пераметров аутентификации или Установить автоматическую конфигурацию прокси (Direct accessпрямой доступ — браузеры не используют никаких прокси-серверов; WinRoute прокси-сервер — браузер будет использовать IP-адрес хоста WinRoute и порта, на котором запущен прокси-сервер).

Рисунок 3.5 – Меню настроек HTTP Policy Proxy Server

Следующим пунктом меню настроек будет настройка Traffic Policy (рисунок 3.6).

В данном меню необходимо указать правила для приложений в соответствии со следующими полямя:

Name — название правила для приложения;

Source – источник данных;

Destination – приемник данных;

Service – отдельные протоколы, порты или службы, по которым будет происходить обмен данных;


Log – ведение Log-файла (ведется или нет);

Translation – переадресация, например с Firewall’а на конкретный компьютер или на прямую с локального компьютера в Интернет, в обход Proxy-Servera.

Необходимо указать правила для протоколов (ICMP, TCP/IP, UDP), в соответствии с которыми будет осуществляться доступ в Интернет.

Рисунок 3.6 а – Меню настройки Traffic Policy

ICMP трафик — это правило может быть добавлено в любое время, независимо от установок на каждом этапе. Вы можете использовать команду PING, для того чтобы отправить запрос об ответе с хоста WinRoute. Использованием этой команды могут быть решены важные вопросы (например, можно проверить функционирование Интернет).

Примечание: правило ICMP-трафик не позволяет пользователям использовать команду PING из локальной сети в Интернет. Если вы намереваетесь использовать команду в любом случае, вы должны добавить возможность Ping в правила NAT.

NAT — если добавлено это правило, то адреса источников (частные IP) всех пакетов, направленных из локальной сети в Интернет, будут подменены адресами интерфейса (внешним IP), соединенного с Интернет.

В колонке Source также включен интерфейс Dial-In. Это означает, что RAS-приложения, соединенные с сервером, могут использовать NAT-технологию для доступа к Интернет.

Локальный трафик (Local Traffic) — это правило разрешает весь трафик между локальными хостами и хостом WinRoute. Пункты этого правила Source и Destination включают все интерфейсы хоста WinRoute, кроме интерфейса, соединенного с Интернет.

Пункты Source и Destination этого правила также затрагивают интерфейсы Dial-In и VPN. Это значит, что правило Локальный трафик также разрешает трафик между локальными хостами и RAS-клиентами/VPN-клиентами, соединенными с сервером.

Примечание: так как мастер предполагает, что хост WinRoute принадлежит локальной сети, то доступ к нему не ограничен. Ограничения могут быть заданы изменением соответствующего правила или созданием нового. Некорректное правило, ограничивающее доступ к хосту WinRoute, может блокировать удаленное администрирование или стать причиной недоступности служб Интернет (все трафики, направленные к Интернет, передаются через этот хост).

Трафик Брандмауэра (Firewall Traffic) — это правило разрешает доступ к определенным службам через хост WinRoute. Оно подобно NAT-правилу, но, в отличие от него, не поддерживает трансляцию IP (этот хост соединяется с Интернет напрямую).

HTTP и HTTPS — эти правила устанавливают все HTTP и HTTPS-службы, запущенные в хосте с IP-адресом 192.168.1.10. Эти службы будут доступны по IP-адресам внешнего интерфейса.

ISS OrangeWeb Filter — при использовании ISS OrangeWeb Filter (модуль классификации Web-сайтов), это правило разрешает взаимодействие с соответствующей базой данных. Не выключайте этот трафик, в противном случае, ISS OrangeWeb Filter не будет нормально функционировать.

Правило по умолчанию (Default rule) — это правило запрещает все соединения, не разрешенные другими. Правило по умолчанию всегда стоит в конце списка и не может быть удалено. Правило по умолчанию позволяет администратору выбрать действие, которое лучше всего подойдет для предотвращения нежелательных трафиков (Запрет или Удаление) и разрешения регистрации пакетов.

Рисунок 3.6 б – Меню настройки Traffic Policy

Следующий пункт меню настроек это HTTP Policy URL Groups и Forbidden Words. Эти пункты меню настройки отвечают за возможность доступа или наоборот блокирования к конкретно указанным файлам и сайтам.

Рисунок 3.7 – Меню настройки HTTP Policy URL Groups

Рисунок 3.8 – Меню настройки Forbidden Words (Фильтрация по Словам)

Данные пункты необходимо настроить в соответствии с требованиями доступа в сеть Интернет (запреты на доступ к «вредным» сайтам, файлам, разрешение доступа к определенным сайтам в Интернете) как различных пользователей, так и приложений обращающихся к данной сети.

WinRoute также может фильтровать Web-страницы, содержащие нежелательные слова — Forbidden Words. Эта фильтрация применяется глобально на весь HTTP-трафик. Начинает работать после выполнения правил URL (только если доступ к требуемой странице разрешен).

Принцип фильтрации: запрещенные слова, совпадающие со значениями, называемыми весом (представлеными целым положительным числом). Вес этих слов, содержащихся в требуемой странице, суммируется (вес каждого слова считается только один раз, несмотря на то, сколько раз это слово встречается на странице). Если общий вес превысит определенный лимит, страница будет блокирована.

Следующий пункт меню настроек это Address Groups. Выделяется несколько групп компьютеров, с которых осуществляется доступ в Интернет. Группы могут включать сочетания IP-адресов, IP-диапазонов, IP-подсетей или даже других групп.

Рисунок 3.9 – Меню настройки Address Groups

В данном случае в настройках рассмотрены 2 группы компьютеров, но для упрощения администрирования можно создать ещё 1 группу, в которую можно внести все остальные компьютеры, находящиеся на местах.

Настройка пункта меню Services. Службы WinRoute позволяют администраторам легко задавать правила соединения (разрешением или запрещением доступа к Интеренет из локальной сети, или разрешением доступа к локальной сети из Интеренет). Службы определяются протоколами связи и номерами портов (например, служба HTTP использует протокол TCP с номером порта 80).

Службы могут быть заданы в Configurations / Definitions / Services. Некоторые стандартные службы, такие как HTTP, FTP, DNS и т.д., уже заданы в установке WinRoute по умолчанию

Рисунок 3.10 – Меню настройки Services

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

Порт отправки и порт назначения (Source Port и Destination Port). При использовании протоколов связи TCP или UDP, служба определяется ее номером порта. Порты отправления и назначения могут быть определены как:

· Any (Любой) — доступны все порты (1-65535)

· Equal to (Адекватный) — определенный порт (например,80)

· Greater than, Less than (Больше чем, Меньше чем) — определяются порты с номерами, либо больше либо меньше заданных

· Not equal to (Кроме) — определяются порты с номерами, не равными заданному

· In range (В диапазоне) — все порты, соответствующие диапазону (включая начальный и конечный)

· List (Список) — список портов, разделенный запятыми (например, 80,8000,8080)

Protocol InspectorИнспекторы протоколов. WinRoute включает специальные плагины, контролирующие весь трафик, используя протоколы HTTP, FTP или другие. Эти модули могут использоваться для изменения (фильтрации) соединения или работать в качестве брандмауэров, в зависимости от типа протоколов. Преимущества протоколов-инспекторов можно понять лучше на просмотре двух следующих примеров:

1. HTTP протокол-инспектор контролирует трафик между приложениями (браузерами) и Web-серверами. Он может быть использован для блокирования соединений с определенными страницами или загрузкой определенных объектов (например, изображений, pop-ups, и т.д.).

2. С помощью активного FTP, сервер открывает соединение с приложением. При определенных условиях этот тип соединения не может быть произведен через брандмауэр, поэтому FTP может использоваться только в пассивном режиме. FTP protocol inspector определяет, что FTP активен, открывает соответствующий порт и переадресует соединение соответствующему приложению в локальной сети. Благодаря этому, пользователи локальной сети не ограничены брандмауэром и могут использовать оба режима FTP (активный/пассивный).

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

1. Протокол-инспекторы различают протоколы приложений через транспортные протоколы (TCP или UDP) и номер порта, который используется соответствующей службой. Если служба запущена через нестандартный порт (например, HTTP через номер 8080), протокол-инспектор не будет работать. В данном случае, вы можете создать службу для порта 8080, использующую HTTP протокол-инспектор.

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

Для получения Log-файлов, которые можно будет анализировать, необходимо произвести настройку пункта меню Logs & Alters (рисунок 3.11). Здесь нужно выбрать конкретные виды логов, которые будет вести Kerio Control/WinRoute Firewall.

WinRoute позволяет автоматически отправлять сообщения, информируя администратора о важных событиях, которые можно установить на закладке Alerts settings (Настройки предупреждений). Администратор WinRoute может указать, какие предупреждения кому посылать, а также определить формат предупреждений.

Рисунок 3.11 – Меню настройки Logs & Alters

Настройка пункта меню Users & Groups, где необходимо указать как конкретных пользователей, так и группы пользователей, которые будут получать доступ к сети Интернет.

Рисунок 3.12 – Меню настройки Users

Рисунок 3.13 – Меню настройки Groups

Инструкция по эксплуатации

В период эксплуатации программы Kerio Control/WinRoute Firewall, сетевой администратор должен производить следующие действия:

добавлять новых пользователей в базу данных по мере их появления путем нажатия на кнопку import или ADD на вкладке Users в меню настроек рисунок 3.12;

создавать группы пользователей для упрощения функций администрирования путем нажатия на кнопку ADD на вкладке Groups в меню настроек рисунок 3.13;

в случае необходимости прописывать новые правила для работы приложений путем нажатия на кнопку ADD на вкладке Traffic Policy в меню настроек рисунок 3.6;

производить постоянный мониторинг и обновление сайтов и доменов в URL Groups путем нажатия на кнопку ADD на вкладках HTTP Policy URL Groups и Forbidden Words рисунки 3.7 и 3.8;

проверять статистику, как по пользователям, так и по компьютерам, производить ежемесячную проверку Log-файлов и их резервирование.

4. Задание на лабораторную работу

1. Изучите теоретический материал и ответьте на контрольные вопросы.

2. Изучите работу программы «Kerio Control/WinRoute Firewall».

3. Проверьте работу локальной сети и Интернета без Kerio.

4. Установите программу. Посмотрите в статистике и логах, какие используются протоколы при работе в локальной сети и в Интернете.

5. Настройте Traffic Policy для работы в локальной сети и доступа в Интернет (прописать протоколы) с условием, что не все должно быть разрешено.

6. Сделайте другие основные настройки Kerio Control/WinRoute Firewall.

(видео по установке http://forum.x-mu.net/topic17152.html)

5. Контрольные вопросы

1. Назовите 3 основные задачи межсетевых экранов.

2. Что такое NAT?

3. Чем грозить несанкционированное проникновение?

4. Перечислите 4 возможные стандартные угрозы безопасности.

5. Назовите основы виды атак (8 шт.). Чем они характеризуются, отличаются? Как обезопасится от каждой?

6. Назовите три основных типа «зловредного» ПО?

7. Какие бывают активные и пассивные атаки на уровне TCP? Чем они характеризутся, отличаются?

8. Какие существуют защищенные протоколы?

9. Как происходит установка TCP-соединения? Что при этом можно перехватить?

10. Что происходит с системой-клиентом при активных атаках?

11. Опишите разновидности DoS-атак.

12. Классифицируйте средства защиты.

13. Назовите правила использования паролей и файлов паролей.

14. Назовите основные функции межсетевых экранов.

15. Опишите 3 основных типа межсетевых экранов.

16. Какие существуют средства усиления защиты сети?

17. Какие решения по защите могут приниматься на уровне архитектуры внутренней сети?

18. Назовите основные функции и назначение Kerio Control/WinRoute Firewall.

19. Назовите 8 основных задач администрирования.

20. Основные настройки Kerio Control/WinRoute Firewall и их назначение?

Вопросы по лекциям:

Вместе с расширением посевов какой-либо сельскохозяйственной культуры всегда увеличивается и численность насекомых-вредителей этой самой культуры. Так и с развитием информационных технологий и проникновением их во все сферы современной жизни растет число злоумышленников, активно эти технологии использующих. Поэтому в обозримом будущем вопросы защиты компьютерных сетей будут становиться все более актуальными. Что же касается основных тенденций развития отрасли защиты информации, то, по мнению специалистов известной компании The Yankee Group, в ближайшие годы они будут следующие.

1. Акцент при построении защитных систем будет плавно перемещаться — от противодействия «внешним» хакерским нападениям к защите от нападений «изнутри».

2. Будут развиваться и совершенствоваться аппаратные средства защиты от хакерских атак. На рынке появится новый класс сетевого оборудования — «защитные сервисные коммутаторы». Они смогут обеспечивать комплексную защиту компьютерных сетей, тогда как современные устройства обычно выполняют довольно ограниченный набор конкретных функций, а основная тяжесть все равно ложится на специализированное программное обеспечение.

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

4.Гораздо шире будут применяться системы биометрической аутентификации (по сетчатке глаза, отпечаткам пальцев, голосу и т.д.), в том числе и комплексные. В повседневную корпоративную жизнь войдет многое из того, что сейчас можно увидеть разве что в остросюжетных кинофильмах.

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

6. Быстрый рост ожидает рынок интеллектуальных услуг сетевой защиты. Это связано с тем, что новые концепции защиты IT-систем от хакеров акцентируют внимание не столько на реагирование на уже произошедшие события/атаки, а на их прогнозирование, предупреждение и проведение упреждающих и профилактических мероприятий.

7. Существенно повысится спрос на коммерческие системы криптошифрования передаваемых данных, включая «индивидуальные» разработки для конкретных компаний с учетом их сфер деятельности.

8. На рынке решений по IT-безопасности будет происходить постепенный отход от «систем стандартной комплектации», в связи с чем возрастет спрос на консалтинговые услуги по разработке концепций информационной безопасности и построению систем управления информационной безопасностью для конкретных заказчиков.

ПРИЛОЖЕНИЕ 1. ТЕХНИКА СЕТЕВЫХ АТАК

А. Красоткин Опубликовано в журнале
Chip № 4, 2003
www.ichip.ru

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

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

Нельзя построить и поддерживать надежную систему защиты без представления методов и особенностей сетевых нападений. Безопасность через незнание — плохой принцип. Поэтому необходимо обладать некоторыми сведениями и инструментарием взломщика. Рассмотрим общую методику анализа и взлома систем.

В общих чертах сетевая атака содержит следующие фазы:

· перехват и анализ сетевого трафика;

· сканирование портов — определение доступных сервисов;

· идентификация сетевых сервисов;

· исполнение сетевой атаки на основании полученных данных.


А сейчас подробнее о первых трех исследовательских фазах сетевой атаки.

Пошаговое руководство по работе с утверждениями. Создание веб-приложений SharePoint 2010 для проверки подлинности на основе форм с помощью поставщиков членства и ролей ASP.NET SQL

Обзор. Руководство по созданию проверки подлинности на основе форм для веб-приложений на основе утверждений с помощью поставщиков членства и ролей ASP.NET SQL.

Дата последнего изменения: 18 января 2013 г.

Применимо к: Business Connectivity Services | Open XML | SharePoint Designer 2010 | SharePoint Foundation 2010 | SharePoint Online | SharePoint Server 2010 | Visual Studio

В этой статье
Обзор проверки подлинности веб-приложений на основе утверждений с использованием поставщиков членства и ролей ASP.NET SQL
Шаг 1. Создание веб-приложения SharePoint
Шаг 2. Подготовка базы данных для использования поставщика членства и ролей ASP.NET для веб-приложения
Шаг 3. Настройка поставщика членства и ролей для веб-приложения SharePoint
Шаг 4. Добавление пользователей и ролей в базу данных поставщика членства и ролей
Шаг 5. Тестирование проверки подлинности на основе форм
Шаг 6 (дополнительно). Поиск и устранение неисправностей конфигурации и необрабатываемых исключений
Шаг 7. Просмотр утверждений
Шаг 8. Добавление дополнительных пользователей и ролей
Заключение
Дополнительные материалы

Предоставлено: Энди Ли (Andy Li), корпорация Майкрософт

Содержание

Обзор проверки подлинности веб-приложений на основе утверждений с использованием поставщиков членства и ролей ASP.NET SQL

Шаг 1. Создание веб-приложения SharePoint

Шаг 2. Подготовка базы данных для использования поставщика членства и ролей ASP.NET для веб-приложения

Шаг 3. Настройка поставщика членства и ролей для веб-приложения SharePoint

Шаг 4. Добавление пользователей и ролей в базу данных поставщика членства и ролей

Шаг 5. Тестирование проверки подлинности на основе форм

Шаг 6 (дополнительно). Поиск и устранение неисправностей конфигурации и необрабатываемых исключений

Шаг 7. Просмотр утверждений

Шаг 8. Добавление дополнительных пользователей и ролей

Обзор проверки подлинности веб-приложений на основе утверждений с использованием поставщиков членства и ролей ASP.NET SQL

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

Проверка подлинности на основе форм позволяет осуществлять настраиваемое управление удостоверениями в Microsoft SharePoint 2010, реализуя поставщик членства, определяющий интерфейсы для идентификации и проверки подлинности отдельных пользователей, а также диспетчер ролей, определяющий интерфейсы для распределения отдельных пользователей по локальным группам или ролям.

Данная статья предполагает, что вы знакомы с принципами проверки подлинности на основе форм. Дополнительные сведения о проверке подлинности на основе форм см. в статье Проверка подлинности на основе форм в продуктах и технологиях SharePoint (часть 1): введение

Шаг 1. Создание веб-приложения SharePoint

Если просто скопировать команду для командной строки из этой статьи и попытаться выполнить ее, возможно возникновение ошибок. Это обусловлено тем, что некоторые символы в процессе форматирования преобразуются в специальные символы. Например, дефис (), скопированный из этой статьи, в окне командной строки может функционировать некорректно.

Чтобы создать веб-приложение SharePoint, выполните следующие действия:

Перейдите на страницу «Центр администрирования SharePoint 2010».

В разделе Управление приложениями выберите пункт Управление веб-приложениями.

На ленте нажмите кнопку Создать.

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

В разделе Веб-сайт IIS в Создание нового веб-сайта IIS измените поле Имя на SharePoint — SQL FBA

Измените значение параметра Порт на 200.

В разделе Типы проверки подлинности на основе утверждений выполните следующие действия.

Выберите Включить проверку подлинности на основе форм (FBA).

Удалите остальные режимы проверки подлинности.

В полях «Поставщик членства» и «Диспетчер ролей» укажите следующие имена:

Имя поставщика членства ASP.NET: aspnetmembership

Имя диспетчера ролей ASP.NET: aspnetrolemanager

Примечание

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

В разделе Имя и проверка подлинности базы данных измените имя базы данных на WSS_Content_200.

Не изменяйте другие параметры по умолчанию.

Нажмите кнопку ОК, чтобы создать веб-приложение.

Шаг 2. Подготовка базы данных для использования поставщика членства и ролей ASP.NET для веб-приложения

В этом шаге рассматривается самостоятельная подготовка базы данных Microsoft SQL Server для поставщиков членства и ролей. ASP.NET. Также представлены доступные инструменты для настройки баз данных. В этом разделе представлены пошаговые инструкции для более полного понимания компонентов поставщика, включенных в конфигурацию.

Примечание

В поставщике членства Microsoft SQL Server в базе данных SQL Server хранится информация о пользователе. Можно создать собственное хранилище информации о пользователях SQL Server вручную, запустив форму Aspnet_regsql.exe из командной строки. Как вариант, можно также запустить Aspnet_regsql.exe в режиме мастера (см. статью Средство регистрации ASP.NET SQL Server (Aspnet_regsql.exe)) или воспользоваться средством конфигурации ASP.NET. Средство конфигурации ASP.NET доступно из меню Веб-сайт в Microsoft Visual Studio.

Подготовка базы данных к использованию поставщика членства и ролей ASP.NET для веб-приложения

Запустите Microsoft SQL Server Management Studio и подключитесь к экземпляру локального сервера.

Добавьте новую базу данных с именем aspnetdb_claim, как показано на рис. 1.

Рис. 1. Создание новой базы данных с именем aspnetdb_claim

Используйте aspnet_regsql.exe для создания базы данных членства. Откройте окно командной строки. Выполните следующую команду из командной строки, чтобы заменить каталоги на каталог Microsoft .NET Framework 2.0.

Выполните следующую команду, как показано на рис. 2.

aspnet_regsql -S DEMO2010A -E -A mr –d aspnetdb_claim

-S Выбор сервера. В этом примере используется локальный сервер.

-E Настройка использования проверки подлинности Windows для подключения к SQL Server.

-A mr Настройка добавления компонента членства и ролей.

-d Присвоение имени для базы данных.

Рис. 2. Создание базы данных членства с помощью aspnet_regsql.exe

Разверните узел aspnetdb_claim и убедитесь в том, что все таблицы созданы.

Рис. 3. Развернутый узел aspnetdb_claim

Предоставьте для учетной записи веб-приложения AppPool доступ к базе данных. Поскольку для входа в систему веб-приложение использует папку contoso\adminstrator, полный доступ к этой базе данных должен предоставляться ему автоматически.

Шаг 3. Настройка поставщика членства и ролей для веб-приложения SharePoint

Необходимо отредактировать три файла web.config

Центр администрирования (позволяет выбирать семейства сайтов)

Служба маркеров безопасности (позволяет выполнять вход в систему и создавать маркеры)

Веб-приложение FBA (позволяет выбрать локальное веб-приложение).

Чтобы настроить поставщика членства и ролей для веб-приложения SharePoint, выполните следующие действия:

В файле web.config для веб-приложения проверки подлинности на основе форм SQL добавьте следующую строку подключения после закрывающего тега .

Примечание

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

После добавления строки подключения файл web.config должен походить на следующий пример.

Повторите предыдущий шаг для веб-сайта Центр администрирования и веб-сайта SecurityTokenServiceApplication.

Веб-сайт SecurityTokenServiceApplication расположен под веб-сайтом Веб-службы SharePoint, как показано на рис. 4.

Рис. 4. Расположение веб-сайта SecurityTokenServiceApplication

Вернитесь на веб-сайт веб-приложения проверки подлинности на основе форм (http://intranet.contoso.com:200) и повторно откройте файл web.config.

Добавьте следующий код в тег

, расположенный под тегом (см. рис. 5).

Рис. 5. Значения поставщика в файле web.config веб-приложения FBA

Добавьте следующий элемент диспетчера ролей в тег

под разделом (см. рис. 6).

Рис. 6. Значения поставщика ролей в файле web.config веб-приложения FBA

Примечание

Атрибут applicationName определяет имя веб-приложения (имя, используемое поставщиком членства и ролей ASP.NET для уникальной идентификации пользователей).

Повторите шаги 1-5 в этой процедуре для веб-сайта Центр администрирования и SecurityTokenServiceApplication.

Примечание

Поскольку в файл web.config для веб-сайта службы маркеров безопасности SharePoint (STS) не включен раздел , необходимо добавить его вручную (веб-сайт SecurityTokenServiceApplication расположен под веб-сайтом «Веб-службы SharePoint», как показано на рис. 4). Для просмотра примеров готовых файлов web.config откройте файлы конфигурации, включенные в пакет загрузки (ClaimsExample-CreateFormsBasedAuthentication (Возможно, на английском языке)) для данной статьи.

Шаг 4. Добавление пользователей и ролей в базу данных поставщика членства и ролей

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

Чтобы добавить пользователей и роли в базу данных поставщика членства и ролей, выполните следующие действия:

Запустите Microsoft SQL Server Management Studio и выполните следующий запрос в базе данных aspnetdb_claim, как показано на рис. 7.

Рис. 7. Выполнение запроса в базе данных aspnetdb_claim

Выполните следующий запрос для добавления пользователя admin1 в роль Admin, как показано на рис. 8.

Рис. 8. Добавление пользователя «admin1» в роль «Admin»

Шаг 5. Тестирование проверки подлинности на основе форм

Рассмотрим процедуру тестирования проверки подлинности на основе форм.

Чтобы протестировать проверку подлинности на основе форм, выполните следующие действия:

На веб-сайте Центр администрирования в разделе Управление приложением щелкните Создать семейство сайтов.

В раскрывающемся списке Веб-приложение выберите веб-приложение FBA http://intranet.contoso.com:200 (см. рис. 9).

Рис. 9. Настройка веб-приложения

В поле Заголовок измените значение на Сайт FBA.

В поле имени Пользователь нажмите Обзор и найдите добавленных пользователей.

Введите admin1 в поле поиска, после чего нажмите кнопку поиска, как показано на рис. 10.

Рис. 10. Средство выбора людей

Дважды щелкните кнопкой мыши пользователя admin1 в области результатов поиска. После этого вы вернетесь на страницу создания семейства сайтов.


Нажмите кнопку OK, чтобы создать семейство веб-сайтов.

Перейдите по адресу http://intranet.contoso.com:200. Отобразится страница входа в систему, как показано на рис. 11.

Рис. 11. Страница входа в систему

Введите следующие учетные данные и щелкните Войти.

Имя пользователя: admin1

После входа в систему в правом верхнем углу отображается имя пользователя admin1, как показано на рис.12.

Рис. 12. Сайт SharePoint после выполнения проверки подлинности пользователя «admin1»

Шаг 6 (дополнительно). Поиск и устранение неисправностей конфигурации и необрабатываемых исключений

На рис. 13 показана ошибка, которая отображается, если в файле web.config заданы неверные настройки. Обратите внимание, что необходимо отредактировать все файлы web.config для всех процессов SharePoint. В пакет загрузки, предоставляемый для этой статьи, включены три файла web.config. На рис. 14 показано необработанная ошибка исключения.

Рис. 13. Ошибка конфигурации поставщика членства

Рис. 14. Необработанная ошибка исключения

При возникновении необработанной ошибки исключения необходимо добавить значение includeExceptionDetailInFaults в раздел , как показано на рис. 15.

Рис. 15. Добавление значения «includeExceptionDetailInFaults» в раздел » «

Шаг 7. Просмотр утверждений

Рассмотрим процедуру просмотра утверждений

Чтобы просмотреть утверждения, выполните следующие действия:

Создайте веб-часть и замените функцию RenderContent следующим кодом. Возможно, потребуется добавить ссылку на Microsoft.IdentityModel.dll, а также добавить пространство имен Microsoft.IdentityModel.Claims.

Выполните развертывание решения и добавьте веб-часть на домашнюю страницу веб-приложения сайта FBA (см. рис. 16).

Рис. 16. Тип утверждения и сведения о значении утверждения

Обратите внимание на следующие два утверждения.

Утверждение роли извлекается из поставщика роли ASP.NET. Помните, что Admin представляет собой имя роли, назначенной для пользователя. При выполнении SQL-запроса для добавления роли пользователя используется роль admin1.

Шаг 8. Добавление дополнительных пользователей и ролей

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

Чтобы добавить дополнительные роли и пользователей, выполните следующие действия:

Выполните следующий SQL-запрос, чтобы добавить дополнительных пользователей и роли в поставщик.

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

Выберите Проверка подлинности на основе форм, как показано на рис. 17.

Рис. 17. Отображение результатов поиска в окне «Выбор людей»

Введите bob в поле поиска, как показано на рис. 17, после чего щелкните Поиск. Поиск должен вернуть одну запись.

Дважды щелкните bob, чтобы добавить запись в поле Добавить->

Нажмите кнопку ОК.

Для добавления пользователя mary повторите шаги 4-6.

Выберите из раскрывающегося списка Члены сайта FBA, как показано на рис. 18.

Рис. 18. Предоставление разрешений пользователям

Нажмите кнопку ОК.

На ленте щелкните Предоставление разрешений.

Щелкните Обзор, чтобы запустить средство выбора людей.

Снова выберите Проверка подлинности на основе форм слева, как показано на рис. 17.

Введите ceo в поле поиска. Поиск должен вернуть одну запись, как показано на рис. 19.

Примечание

В этой статье в качестве примера используется роль ceo из поставщика ролей ASP.NET. Эта роль добавляется с помощью SQL-запроса в начале шага 8.

Рис. 19. Поиск роли с именем «ceo»

Дважды щелкните мышью пользователя ceo, чтобы добавить его на страницу «Предоставление разрешений».

Предоставьте для роли ceo разрешение на полное управление, как показано на рис. 20.

Рис. 20. Предоставление разрешений на полный доступ для роли «ceo»

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

Рис. 21. Вход в систему с другим именем пользователя

Попробуйте выполнить вход в систему с учетными данными пользователя bob; затем с учетными данными пользователя mary. Обратите внимание, что веб-часть отображает корректное утверждение роли из поставщика ролей.

Попробуйте выполнить вход в систему с учетными данными пользователя jack. Обратите внимание, что для пользователя jack предоставляются следующие два утверждения.

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

Заключение

В этом пошаговом руководстве рассмотрены способы создания проверки подлинности на основе форм для веб-приложений на основе форм, используя поставщиков ролей и членства SQL ASP.NET

Дополнительные материалы

Дополнительные сведения см. в следующих документах:

Asp примеры программного администрирования

Обновлен: Ноябрь 2007

Конфигурационный API ASP.NET позволяет разрабатывать, развертывать данные конфигурации приложения и управлять ими с использованием единого интерфейса программирования. Можно использовать конфигурационный API для программной разработки и изменения всей конфигурации ASP.NET без непосредственного редактирования XML-кода в конфигурационных файлах. Кроме того, конфигурационный API можно использовать в разрабатываемых консольных приложениях и сценариях, веб-инструментах управления и оснастках консоли управления (MMC). В состав платформы .NET Framework 2.0 входят следующие два средства управления конфигурацией, использующие конфигурационный API:

оснастка ASP.NET консоли управления (MMC), использующая конфигурационный API для упрощения выполнения задач администрирования, обеспечивая интегрированное представление локальных данных всех уровней конфигурации;

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

Конфигурационный API ASP.NET отделен от API программного конфигурирования IIS. Дополнительные сведения см. в разделе Программное администрирование IIS (на английском языке).

Конфигурационный API ASP.NET состоит из набора управляющих объектов ASP.NET, с помощью которых можно программно настраивать веб-узлы и приложения. Управляющие объекты реализованы в библиотеке классов платформы .NET Framework. Программная модель конфигурационного API помогает обеспечить согласованность и надежность кода во время компиляции за счет строгой типизации данных.

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

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

Конфигурационный API не поддерживает создание приложений IIS. Сведения о написании административных приложений IIS см. в документе Использование System.DirectoryServices для настройки IIS в пакете SDK веб-сервера IIS.

Объект Configuration представляет объединенное представление параметров конфигурации, применяемых к определенной физической сущности, такой как компьютер, или логической сущности, такой как приложение или веб-узел. Указанная логическая сущность может находиться на локальном компьютере или на удаленном сервере.

Если для указанной сущности отсутствует файл конфигурации, объект Configuration представляет параметры конфигурации по умолчанию, определенные в файле Machine.config.

Объект Configuration можно получить с помощью открытых методов конфигурации следующих классов:

ConfigurationManager , если сущностью является клиентское приложение;

WebConfigurationManager , если сущностью является веб-приложение.

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

Чтение. Методы GetSection и GetSectionGroup используются для чтения данных конфигурации. Пользователь или процесс, который осуществляет чтение, должен иметь разрешения на чтение всех конфигурационных файлов в иерархии.

Примечание

При использовании статического метода GetSection , принимающего параметр path , параметр path должен указывать на приложение, в котором выполняется код. В противном случае данный параметр игнорируется, и возвращаются данные конфигурации текущего приложения.

Запись Для записи данных конфигурации используются методы Save . Пользователь или процесс, который осуществляет запись, должен иметь разрешения на запись файла конфигурации и каталога на текущем уровне конфигурации, а также разрешения на чтение всех файлов конфигурации в иерархии.

Для создания файла конфигурации, представляющего унаследованные параметры конфигурации для определенной сущности, используйте один из следующих методов сохранения конфигурации:

Save для создания нового файла конфигурации;

SaveAs для создания нового файла конфигурации в другом месте.

Примечание.

Чтобы разрешить доступ к параметрам конфигурации на удаленном компьютере, используйте программу командной строки Aspnet_regiis. Подробные сведения об этом средстве см. в разделе Программа регистрации IIS для ASP.NET (Aspnet_regiis.exe) . Сведения о создании пользовательских параметров конфигурации (отличных от стандартных параметров и разделов, определяемых платформой .NET Framework) и доступе к этим параметрам см. в описании класса ConfigurationSection .

Примеры кода

Для получения данных о конфигурации приложения, в котором выполняется страница ASP.NET, из кода этой страницы можно использовать следующий код. В этом примере кода используется статический метод WebConfigurationManager GetSection .

Для получения данных о конфигурации приложения ASP.NET или клиентского приложения можно использовать следующий код. В этом примере кода используется метод GetSection объекта System.Configuration Configuration , не являющийся статическим.

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

Класс конфигурации или пространство имен

Содержит важнейшие классы конфигурации для всех приложений платформы .NET Framework. Сюда входят классы обработки разделов конфигурации клиента платформы .NET Framework, определенных в Схема файлов конфигурации для .NET Framework . Классы обработки разделов используются для получения данных, содержащихся в разделах конфигурации, с помощью таких методов, как GetSection и GetSectionGroup . Эти два метода не являются статическими. Дополнительные сведения см. выше в подразделе Работа с параметрами локальной и удаленной конфигурации данного раздела.

Классы обработки разделов ASP.NET содержатся в пространстве имен System.Web.Configuration .

Представляет набор данных конфигурации для компьютера, приложения, веб-каталога или другого ресурса. Экземпляр класса Configuration , соответствующий объединенным параметрам конфигурации всей иерархии.

Этот класс содержит такие методы, как GetSection и GetSectionGroup , используемые для обновления параметров конфигурации и получения ссылок на разделы и группы разделов. Эти два метода не являются статическими. Дополнительные сведения см. выше в подразделе Работа с параметрами локальной и удаленной конфигурации данного раздела.

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

Содержит классы обработки разделов конфигурации ASP.NET, определенных в Параметры конфигурации ASP.NET . Классы обработки разделов используются для получения данных, содержащихся в разделах конфигурации, с помощью таких методов, как GetSection и GetSectionGroup . Эти два метода являются статическими. Дополнительные сведения см. выше в подразделе Работа с параметрами локальной и удаленной конфигурации данного раздела.

Предоставляет методы для получения ссылок на параметры конфигурации времени разработки и времени выполнения. Типом возвращаемых этими методами значений является класс System.Configuration Configuration . Статический метод GetSection данного класса и не являющийся статическим метод GetSection класса System.Configuration ConfigurationManager взаимозаменяемы. Дополнительные сведения см. выше в подразделе Работа с параметрами локальной и удаленной конфигурации данного раздела.

Предоставляет средства настройки и расширения поставщика конфигурации. Это базовый класс для всех классов поставщиков в системе конфигурации.

Содержит классы и интерфейсы для управления веб-приложениями и отслеживания их работоспособности. Строго говоря, это пространство имен не является частью конфигурационного API. В частности, это пространство имен содержит классы для трассировки и генерирования событий. Дополнительные сведения см. в разделе Устранение неполадок и отладка в ASP.NET .

Классы, необходимые для оснащения приложений средствами управления и предоставления сведений и событий управления потенциальным клиентам с помощью инструментария управления Windows (WMI). Средства наблюдения за состоянием системы ASP.NET используют WMI для доставки событий. Строго говоря, это пространство имен не является частью конфигурационного API.

Структура наследования классов конфигурации

Следующая схема иллюстрирует отношения наследования между классами пространства имен System.Web.Configuration и классами пространства имен System.Configuration . Эта схема помогает понять, какие свойства и методы доступны тому или иному объекту и как получить дальнейшую информацию.

Структура агрегирования классов конфигурации

Следующая схема иллюстрирует отношения агрегирования между классами пространства имен System.Web.Configuration и классами пространства имен System.Configuration . Эта схема помогает понять, как одни классы создают экземпляры других классов.

Может потребоваться предоставить многим администраторам возможность управлять теми или иными ресурсами, такими как веб-узлы или приложения; при этом необходимо будет ограничить действия, выполняемые этими администраторами над другими ресурсами. В такой ситуации можно разработать средства администрирования, использующие конфигурационный API ASP.NET для предоставления доступа лишь к тем параметрам конфигурации, которые необходимы каждому администратору для выполнения его работы, и отказа в доступе к остальным параметрам. Такие средства обеспечат администраторов необходимым инструментарием и в то же время помогут защитить ресурсы, устранив необходимость прямого доступа к файлам конфигурации.

Средства для работы с несколькими серверами

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

написание сценария, который настраивает одно и то же приложение ASP.NET на любом или всех серверах веб-фермы;

блокирование некоторых файлов, используемых для каждого экземпляра приложения;

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

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

Илон Маск рекомендует:  Opera Dragonfly - мощный инструмент прямо из коробки
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL
Примечание.