Смекни!
smekni.com

Структура и назначение программ в области информационных технологий (стр. 8 из 29)

32. Механизм безопасности приложений DCOM Одним из самых сложных аспектов проектирования и реа-

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

Удаление сообщения во время передачи

Искажение данных при передаче

Подделка данных

Потеря данных

Перехват сообщений

Для защиты приложений и данных в DCOM используется 4 типа защиты.

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

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

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

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

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

Контроль целостности. Чаще всего исп. метод контрольных сумм. При отсылке его содержание суммируется с помощью спец. алгоритма. Это контрольная сумма добавляется в сообщ.

При получении оно суммируется снова и контрольные суммы сравниваются.

Использование Hash функций. В этом случае входная строка переменной длины преобразуется HASH алгоритмом в выходную строку постоянной длины. Отправитель и получатель подсчитывают эту HASH функцию. Контроль значения целостности можно выполнить сравнением значения HASH отправителя и получателя.

33. Технология COM+.

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

Основой COM+ явл. архитектура распред. в Windows Интернет прил. DNA - Distributed Internet Applications. Архитектура DNA – оболочка позволяющая разработчикам строить распред. прил. с помощью технологий и служб, являющихся частью ОС. Архитектура DNA предоставляет набор правил, помогающих разработчику сделать выбор технич. решений при создании softa.

Windows DNA позволяет разрабатывать прил. различной сложности, связанных с Интернет. DNA позволяет разработчикам уделять внимание решению задачи, а не заниматься разработкой интерфейса. Модель DNA взаимодействует с 3 ярусами прил. ярус пользовательского интерфейса, управляется с помощью Formst ярус (COM+) ярус баз данных, управляется с помощью Storage+.

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

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

Безопасность

Транзакции

Синхронизация

Очереди (асинхронная коммуникация)

Обеспечивают масштабируемость приложения:

Свободно связанные события

Пул объектов и активация по необходимости

Базы данных в памяти

Динамическое выравнивание нагрузки

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

Уменьшается время на разработку приложения

Повышается надежность кода. Автоматически сгенерированный код надежнее созданного программистом, т.к. он прошел более объемное тестирование

Уменьшается степень зависимости приложения от конкретной версии платформы (COM+) Пока не изменена семантика, приписанная атрибутам, данное приложение будет работать со всеми последующими версиями платформы.

34. Технологии яруса интерфейса пользователя СОМ+.

Разработка средств Forus+ предназначенных для создания надѐжных и удобных приложений выполненных на клиентском компьютере. Инструментная среда для разработки приложений Visual InterDevelopment. В качестве языка программирования используется Visual C++, Visual Java, Visual C#. Библиотекой примитивов является WFC – Window Foundation Class.

35. Технологии среднего яруса СОМ+.

Приложения среднего яруса являются полностью серверными приложениями. Для разработки приложений среднего яруса используют MS-Transaction Server (MTS), который предоставляет разработчикам средства управления Транзакциями и управления по распределению ресурсов сервера.

36. Технологии яруса баз данных.

Технология Storage+ использует функции MY-SQL Server и базируется на технологии ADO (Active X data Object).

38. Транзакции и средства выполнения транзакций СОМ+.

Компоненты COM+ со средствами выполнения транзакций, предоставляют оболочку для формирования транзакций при работе с БД. Для выполнения транзакций средствами COM+ создается специальный объект который является компонентом транзакций. Средства COM+ автоматически создают транзакцию. Затем, когда объект активирован, средства COM+ создают физ. транзакцию. При деактивации объекта, средства COM+ используют методы для физ. удаления объекта и передачи транзакций.

Механизм COM+ позволяет поддерживать многообъектные транзакции. В этом случае результат выполнения транзакций может передаваться вторичным объектом своему родителю. Механизм выполнения многообъектных транзакций – основан на основе механизма голосования в результате которого на результат выполнения транзакций может влиять любой вторичный объект. Результат выполнения транзакций вторичными объектами должны передаваться корневому объекту.

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

В распределенную транзакцию вовлечены следующий объекты:

Прикладные компоненты

Менеджеры ресурсов

Менеджер транзакций

Транзакция - это некоторая единица работы, которую выполняют вышеописанные объекты в течении относительно короткого временного интервала (в COM+ по умолчанию ≤ 60 сек).

Транзакция должна обладать следующими ACID свойствами:

Atomicity - атомарность транзакции

Атомарность означает необходимость реализации принципа ``все или ничего''.

Consistency - целостность распределенных данных

В предположении целостности данных до начала транзакции, целостность данных должна иметь место и по завершении транзакции.

Isolation - изоляция транзакции

Durability - сохранность результатов транзакции

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

Демаркация транзакции

Данное понятие означает способ определения единицы работы, составляющей одну атомарную транзакцию. Работа состоит из некоторой совокупности операций (транзакционных операций), выполняемых вовлеченными в транзакцию объектами. Имеется два способа демаркации транзакции: Программная демаркация

Декларативная демаркация

Контекст транзакции

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

Каждый вовлекаемый в транзакцию менеджер ресурсов регистрируется у менеджера транзакций. Эта регистрация снимается по завершении транзакции.

Двух-фазный протокол завершения транзакции

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

Имеется стандарт X/Open Distributed Transaction Model от консорциума Open Group. Эта модель специфицирует несколько интерфейсов, среди которых два описывают взаимодействие между прикладными компонентами, менеджером транзакций и менеджерами ресурсов:

TX интерфейс

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

XA интерфейс

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