Консалтинг и автоматизация в области управления
эффективностью банковского бизнеса

Журнал ВРМ World

Первая спецификация международной организации WS-I

Около года назад международная организация WS-I (Web Services Interoperability Organization, Организация по развитию возможности взаимодействия Web-сервисов) опубликовали Рабочую версию Спецификации WS-I Basic Profile 1.0, и вот представители WS-I объявили о том, что данный документ был утвержден как спецификация. Кроме того, согласно сделанному заявлению, данная спецификация получила широкую поддержку - более чем от 25 членов WS-I.

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

  • Simple Object Access Protocol 1.1 (Простой протокол доступа к объектам версия 1.1);
  • Extensible Markup Language (XML) 1.0 (Second Edition) (Расширяемый язык разметки XML версия 1.0, второе издание);
  • RFC2616: Hypertext Transfer Protocol -- HTTP/1.1 (Запрос на комментарии №2616 "Протокол передачи гипертекста HTTP/1.1");
  • RFC2965: HTTP State Management Mechanism (Запрос на комментарии №2965 "Механизм управления состояний HTTP");
  • Web Services Description Language 1.1 (Язык описания Web-сервисов версия 1.1);
  • XML Schema Part 1: Structures (Схема XML, Часть 1: Структуры);
  • XML Schema Part 2: Datatypes (Схема XML, Часть 2: Типы данных);
  • UDDI Version 2.04 API Specification (Спецификация интерфейса прикладного программирования для UDDI версия 2.04), от 19 июля 2002 г.;
  • UDDI Version 2.03 Data Structure Reference (Справочник структуры данных для UDDI версия 2.03), от 19 июля 2002;
  • UDDI Version 2 XML Schema (Схема XML для UDDI версия 2);
  • RFC2818: HTTP Over TLS (Запрос на комментарии №2818 "HTTP через TLS");
  • RFC2246: The TLS Protocol Version 1.0 (Запрос на комментарии №2246 "Протокол TLS версия 1.0");
  • The SSL Protocol Version 3.0 (Протокол SSL версия 3.0);
  • RFC2459: Internet X.509 Public Key Infrastructure Certificate and CRL Profile (Запрос на комментарии №2459 "Сертификат инфраструктуры отрытых ключей Интернет X.509 и профиль CRL).

Кратко перечислим некоторые основные положения спецификации Basic Profile.

Сфера применения: в Разделе 2 "Scope of the Profile" ("Рамки применения спецификации Profile") приведена методика определения технологий, которые попадают в поле зрения спецификации. Цель Profile - улучшить взаимодействие только в заявленных рамках - область применения документа ограничена перечисленными спецификациями. Далее сфера применения документа уточняется пунктами о возможностях расширения. Перечисленные спецификации часто предоставляют механизм расширений и неуказанные или неопределенные параметры. Если такой механизм или параметр указаны как пункт расширения, они находятся вне рамок данной спецификации и их применение не попадает под действие требований о соответствии данной спецификации. Поскольку реализация пунктов о возможностях расширения может отрицательно сказаться на возможностях взаимодействия, пользователи Web-сервиса должны обсудить вопросы их использования и зафиксировать свои выводы.

Соответствие: в Разделе 3 ("Соответствие спецификации Profile") определено понятие соответствие с помощью терминов необходимые требования (relevant requirements), цели (targets) и требования о соответствии (conformance claims): "Требования устанавливают критерий соответствия данной спецификации в рамках указанной сферы применения. Они охватывают уточнения, толкования и пояснения, которые улучшают возможности взаимодействия. Уровни требований определяют сущность требования и его влияние на соответствие. Цели предусматривают описание соответствия в различных контекстах, чтобы допустить проверку соответствия и сертификацию артефактов (SOAP-сообщения и описания WSDL), экземпляров Web-сервисов и их клиентов. Чтобы Web-сервисы могли сообщить о соответствии данной спецификации, сообщения, описания и данные регистров могут содержать аннотации о требованиях о соответствии, в которых используется URI для объявления о соответствии определенному профилю. Наиболее общий уровень соответствия - уровень артефакта. В Спецификации содержатся требования, касающиеся трех видов артефактов:

  1. MESSAGE - элементы протокола, которыми обмениваются, обычно по сети, для реализации Web-сервиса, например, сообщения SOAP/HTTP;
  2. DESCRIPTION - описание типов, сообщений, интерфейсов и соединений с их конкретным протоколом и форматом данных, а также точки доступа к сети, связанные с Web-сервисами, например, описания WSDL;
  3. REGDATA - элементы регистра, которые задействованы при регистрации и обнаружении Web-сервисов, например, UDDI tModels.

Компоненты спецификации: основные компоненты, упомянутые в этой спецификации, включают обмен сообщениями (Messaging), описание сервиса (Service Description), публикация и обнаружение сервиса (Service Publication and Discovery) и безопасность (Security):

  • Обмен сообщениями: XML-представление SOAP-сообщений, модель обработки SOAP, использование SOAP в HTTP. В Разделе 4 "Messaging" ("Обмен сообщениями") указаны следующие четыре спецификации: Object Access Protocol (SOAP) 1.1; RFC2616: Hypertext Transfer Protocol -- HTTP/1.1; Extensible Markup Language (XML) 1.0 (Second Edition); RFC2965: HTTP State Management Mechanism.
  • Описание сервиса: структура документа, типы, сообщения, типы портов, соединения, соединения с SOAP, использование схемы XML. В Разделе 5 указаны следующие три спецификации: Web Services Description Language (WSDL) 1.1; XML Schema Part 1: Structures; XML Schema Part 2: Datatypes.
  • Публикация и обнаружение сервиса: bindingTemplates, tModels. В Разделе 6 указаны следующие три спецификации: UDDI Version 2.04 API Specification, UDDI Version 2.03 Data Structure Reference, UDDI Version 2 XML Schema.
  • Безопасность: использование HTTPS (HyperText Transmission Protocol, Secure - Протокол защищенной передачи гипертекстов). В Разделе 7 "Security" ("Безопасность") указаны следующие три спецификации: RFC2818: HTTP Over TLS; RFC2246: The TLS Protocol Version 1.0; The SSL Protocol Version 3.0; RFC2459: Internet X.509 Public Key Infrastructure Certificate and CRL Profile.