Подход к проектированию безопасности в сервис-ориентированных архитектурах

1А.Е. Сатунина, А.С. Сысоев

ПОДХОД К ПРОЕКТИРОВАНИЮ БЕЗОПАСНОСТИ В СЕРВИС-ОРИЕНТИРОВАННЫХ АРХИТЕКТУРАХ

Статья посвящена проблемам обеспечения безопасности функционирования корпоративных информационных систем (КИС) сервис-ориентированной архитектуры (СОА). Рассматриваются подходы к обеспечению безопасности как отдельного вида ИТ-сервиса КИС, обусловленные особенностями информационных систем сервис-ориентированной архитектуры. Перечислены и охарактеризованы процессы обеспечения информационной безопасности, требующие системного анализа и оценок взаимосвязей с другими ИТ-сервисами КИС на всех стадиях жизненного цикла.

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

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

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

© Сатунина А.Е., Сысоев А.С., 2010 280

тую совершенно невозможно использовать с небольшими изменениями в других бизнес-процессах и организационных элементах.

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

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

Создание гибких бизнес-процессов в КИС предприятий СОА обеспечивается следующими положениями3:

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

- сервисы могут замещаться эквивалентными сервисами в зависимости от требований;

- сервисы и бизнес-функции могут предоставляться внутренними и внешними поставщиками;

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

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

Рис. 1. Обобщенная схема уровней безопасности сервисов в ИС сервис-ориентированной архитектуры

Защита информации - вопрос комплексный, предусматривающий решение следующих задач4:

- идентификация клиента (пользователя либо агента) в системе;

- проверка прав доступа к защищаемым данным в рамках общезначимого (системного) контекста безопасности;

- шифрование трафика между клиентами и сервисами информационной системы;

- обеспечение целостности данных.

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

При разработке безопасности сервисов необходимо учитывать следующие аспекты:

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

- необходимо иметь динамические доверенности (обязательства) для взаимосвязей с партнерами, заказчиками, клиентами, служащими, основанные на опыте взаимодействия с ними в длительный период времени;

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

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

- идентификация пользователей и сервисов;

- подключение к ИТ-приложениям других организаций на основе транзакций в режиме реального времени;

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

- управление безопасностью через цепочки различных ИТ-приложений;

- защита данных при передаче и хранении;

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

- управление безопасностью на всех этапах жизненного цикла создания сервисов.

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

Например, пользователь, работая в корпоративной ИТ-среде, использует различные ID: Desktop ID, Notes ID, SAP ID, VPN ID, Corporate Travel ID, Online Bank Account, Financial Services Account, Provider ID и др.

В этом случае возникает ряд проблем:

- каждое приложение привносит свой собственный ID;

- каждый ID не работает с другим ID;

- каждый ID повышает сложность идентификации;

- каждый ID добавляет соответствующие бизнес-риски.

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

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

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

Управление безопасностью пронизывает все аспекты жизненного цикла сервис-ориентированного приложения.

Фаза «Моделирование» - определение корпоративной политики безопасности, построение модели требований безопасности и модели безопасности приложений.

Фаза «Проектирование/разработка» - определение политик безопасности приложений, реализация и тестирование безопасности приложений.

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

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

В информационных системах, построенных на принципах СОА, присутствуют проблемы обеспечения безопасности сервисов, к которым применяются практически все ее составляющие: идентификация, аутентификация, авторизация, конфиденциальность, целостность, аудит и согласование, политики управления и доступности.

Примечания

1 Задорожный В. Управление непрерывностью бизнеса - это не процесс, это культура // Intelligent Enterprise / Russian Edition. Корпоративные системы. 2008. № 16 (191). С. 30.

2 См.: Understanding SOA Security // IBM International Technical Support Organization. 2007.

3 Шепелявый Д. Information Security // Информационная безопасность. 2008. № 1. С. 28-29.

4 Там же.

5 Там же.