Скачать презентацию Грид технологии Лекция 4 Стандарты WS-Security WS-Addressing WSRF Скачать презентацию Грид технологии Лекция 4 Стандарты WS-Security WS-Addressing WSRF

0ceb4cb84307e86a1120cc38f45e8d06.ppt

  • Количество слайдов: 49

Грид технологии Лекция 4 Стандарты WS-Security, WS-Addressing, WSRF, WS-Notification Радченко Глеб Игоревич, каф. СП, Грид технологии Лекция 4 Стандарты WS-Security, WS-Addressing, WSRF, WS-Notification Радченко Глеб Игоревич, каф. СП, ЮУр. ГУ http: //dom. susu. ru/grid. htm

Содержание 2 1. Введение. Второе поколение стандартов WS 2. Безопасность и WS-Security 3. Адресация Содержание 2 1. Введение. Второе поколение стандартов WS 2. Безопасность и WS-Security 3. Адресация и WS-Addressing 4. Состояния WS и WSRF 5. WS-Notification

1 Введение. Второе поколение стандартов WS 1 Введение. Второе поколение стандартов WS

Стандарты WS первого поколения 4 Доступен посредством UDDI SOAP Обеспечивает поиск Связан с WSDL Стандарты WS первого поколения 4 Доступен посредством UDDI SOAP Обеспечивает поиск Связан с WSDL Описывает Обеспечивает взаимодействие между Web Службы http: //www. soaspecs. com

Некоторые стандарты WS-* (стандарты второго поколения) 5 1. 2. 3. 4. 5. 6. 7. Некоторые стандарты WS-* (стандарты второго поколения) 5 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. WS-Coordination WS-Transaction (and the WS-TX TC) WS-Atomic. Transaction WS-Business. Activity WS-BPEL 4 WS WS-Reliable. Messaging (and the WSRX TC) WS-Addressing WS-Attachments Sw. A DIME Plain Old XML (POX) Representational State Transfer (REST) WS-CDL (Choreography Description Language) 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. http: //www. soaspecs. com 31. WS-Security (and the WS-SX TC) WS-Federation WS-Secure. Conversation WS-Trust XML Encryption XML Signature XKMS XACML SAML WS-I Basic Security Profile WS-Policy. Assertions WS-Policy. Attachments WS-Metadata. Exchange WS-Eventing WS-Notification WS-RF (Resource Framework)

6 Некоторые стандарты WS-* (стандарты второго поколения) http: //www. soaspecs. com 6 Некоторые стандарты WS-* (стандарты второго поколения) http: //www. soaspecs. com

7 Организации-разработчики стандартов WS-* Коммерческие организации Microsoft IBM Sun Oracle Globus … Консорциумы по 7 Организации-разработчики стандартов WS-* Коммерческие организации Microsoft IBM Sun Oracle Globus … Консорциумы по стандартизации W 3 C (World Wide Consortium) OASIS (Organization for the Advancement of Structured Information Standards) GGF (Global grid Forum) DMTF (Distributed Management Task Force) WS-I (Web Services Interoperability Organization) …

Сферы WS-* стандартов 8 Ориентированные на грид и другие области • WSRF Маршрутизация и Сферы WS-* стандартов 8 Ориентированные на грид и другие области • WSRF Маршрутизация и адресация Безопасность • WS-Security • WS-Addressing Ø Microsoft, IBM, OASIS Ø W 3 C, Microsoft Ø OASIS • WS-Attachments • XML Encryption, XML Signature • WS-Notification Ø IBM • WS-RX TC Ø W 3 C • WS-Eventing Ø OASIS • … Ø Microsoft • … Бизнес-процессы, Workflow • WS-BPEL • … Управление транзакциями и контекстом • WS-Coordination Ø IBM, Microsoft Ø OASIS • BPEL 4 WS • WS-Transaction Ø OASIS, IBM, Microsoft Ø IBM, Microsoft • … http: //www. soaspecs. com

Цепочки SOAP-фильтров 9 Входящий SOAPзапрос Трассировка Безопасность Перенаправление Политика WS-Security WS-Coordination WS-Policy Исходящий SOAP-ответ Цепочки SOAP-фильтров 9 Входящий SOAPзапрос Трассировка Безопасность Перенаправление Политика WS-Security WS-Coordination WS-Policy Исходящий SOAP-ответ Трассировка Безопасность Перенаправление Политика Девид С. Платт Платформа Microsoft 2005. М. : Русская Редакция. -2004 Webметод

10 Безопасность WS и WS-Security 10 Безопасность WS и WS-Security

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

12 Стек протоколов обеспечения безопасности в CXA - Global XML Web Services Architecture: семейство 12 Стек протоколов обеспечения безопасности в CXA - Global XML Web Services Architecture: семейство стандартов, представленных когламератом IBM+Microsoft+… Проходят стандартизацию OASIS и W 3 C Конкурирующий набор стандартов: SAML представлен корпорациями близкими Sun Microsystems и Oracle.

13 Стек протоколов обеспечения безопасности в CXA WS-Secure. Conversation WS-Federation WS-Authorization WS-Trust WS-Privacy WS-Policy. 13 Стек протоколов обеспечения безопасности в CXA WS-Secure. Conversation WS-Federation WS-Authorization WS-Trust WS-Privacy WS-Policy. Framework WS-Policy. Assertions WS-Security SOAP Влад Боркус. Безопасность Web-сервисного взаимодействия. – PCWEEK, № 33(447). -2004

14 WS-Security – комплексное решение задач безопасности WS Стандарт WS-Security ориентирован на комплексное решение 14 WS-Security – комплексное решение задач безопасности WS Стандарт WS-Security ориентирован на комплексное решение задач безопасности при взаимодействии Web-служб: Идентификация Цифровые подписи Шифрование Это позволяет ответить на такие вопросы безопасности, как: Кого я авторизую? Было ли изменено сообщение при пересылке? Пришло ли это сообщение именно от того, от кого я думаю? Как я спрячу конфиденциальную информацию? WS-Sequrity – это только архитектура. Реальные операции по обеспечению безопасности она полагается на технологии PKI, Kerberos, SSL и т. п. Scott Seely. Понимание WS-Security. Microsoft corp. [http: //msdn. microsoft. com/webservices/understanding/advancedwebservices/default. aspx]

WS-Security и SOAP сообщения 15 WS-Security переносит процедуру идентификации и авторизации в пространство SOAP-сообщений. WS-Security и SOAP сообщения 15 WS-Security переносит процедуру идентификации и авторизации в пространство SOAP-сообщений. Используя маркеры безопасности (Security Tokens) SOAP сообщение может переправить следующую информацию: Идентификацию вызывающего: Я User Vasya Pupkin. Принадлежность к группе: Я разработчик Pupkin. Site. com. Подтверждение прав: Поскольку я разработчик Pupkin. Site. com, я могу создавать базы данных и добавлять Web приложения в машины Pupkin. Site. com. Scott Seely. Понимание WS-Security. Microsoft corp. [http: //msdn. microsoft. com/webservices/understanding/advancedwebservices/default. aspx]

Процедура обеспечения безопасности при передаче сообщения 16 1. Запрос на маркер безопасности (может не Процедура обеспечения безопасности при передаче сообщения 16 1. Запрос на маркер безопасности (может не иметь отношения к WS) 2. Получить маркер безопасности для SOAP сообщения Клиент Webслужбы Служба Маркеров Безопасности 4. Подтвердить маркеры 3. Подписать и послать сообщение Web-службе 5. Получить ответ Web-служба Scott Seely. Понимание WS-Security. Microsoft corp. [http: //msdn. microsoft. com/webservices/understanding/advancedwebservices/default. aspx]

Аутентификация пользователя 17 Внедряется в заголовок SOAP-сообщения: <soap: Envelope> <soap: Header> <wsse: Security soap: Аутентификация пользователя 17 Внедряется в заголовок SOAP-сообщения: scott password . . .

18 Виды аутентификации WS-Security 1. 2. 3. <wsse: Username. Token> - аутентификация пользователя посредством 18 Виды аутентификации WS-Security 1. 2. 3. - аутентификация пользователя посредством пары Имя пользователя-пароль. - аутентификация посредством сертификата X. 509 v 3 Kerberos – аутентификация посредством протокола Kerberos (Kerberos Domain Controller) (используется в Windows 2000, Red Hat Linux и т. п. )

Username. Token – имя пользователя и пароль 19 Пароль в виде простого текста (например, Username. Token – имя пользователя и пароль 19 Пароль в виде простого текста (например, при использовании SSL): scott password Пароль в виде цифрового хэша: scott KE 6 Qug. Opk. Py. T 3 Eo 0 SEg. T 30 W 4 Keg= 5 u. W 4 ABku/m 6/S 5 rn. E+L 7 vg== 2002 -08 -19 T 00: 44: 02 Z

20 X 509 v 3 – сертификат безопасности <wsse: Binary. Security. Token Value. Type= 20 X 509 v 3 – сертификат безопасности MIIHdj. CCBCCAWqg. Aw. IBAg. IBGz. ANBgkqhki. G 9 w 0 BAQQFADBHMQ 0 w. Cw. YDVQQKEw. R MRww. Gg. YDVQQLEx. NDYWVi. ZWFucy. Bk. ZXZlb. G 9 w. ZXJz. MRgw. Fg. YDVQQLEw 9 j. YWVi. ZW Fucy 5 u. ZXQucn. Uw. Hhc. NMDcx. Mj. Ax. MDAw. Whc. NMDgw. MTMx. Mj. M 1 OTU 5 Wj. . . Для обеспечения безопасности при использовании сертификата надо прибегнуть к дополнительным средствам обеспечения безопасности: § § подпись сообщения секретным ключом сертификата; добавление wsu: Timestamp для определения времени жизни сообщения.

Подпись сообщения 21 Подпись сообщения лежит в рамках спецификации XML Signature. При подписи сообщения Подпись сообщения 21 Подпись сообщения лежит в рамках спецификации XML Signature. При подписи сообщения используется секретная аутентификационная информация: – пароль пользователя; X. 509 – секретный ключ; Kerberos – сеансовый ключ. Username. Token

Подпись сообщения 22 <soap: Envelope> <soap: Header> <wsse: Security soap: must. Understand=“ 1”>. . Подпись сообщения 22 . . . . . . Hp 1 Zkm. FZ/2 k. QLXDJbchm 5 g. K. . . . . . *Пространство имен ds принадлежит спецификации XML Signature Влад Боркус. Безопасность Web-сервисного взаимодействия. – PCWEEK, № 33(447). -2004

Шифрование 23 Аутентификация и подпись сообщения – это не всегда достаточная мера обеспечения безопасности, Шифрование 23 Аутентификация и подпись сообщения – это не всегда достаточная мера обеспечения безопасности, особенно при передаче конфиденциальной информации. За шифрование отвечает стандарт XML Encryption.

Шифрование 24 <soap: Envelope> <soap: Header> <wsse: Security soap: must. Understand=“ 1”>. . . Шифрование 24 . . . Symmetric Key Inm. SSXQc. BV 5 Ui. T. . . Y 7 RVZQqn. Pp. ZYMg== . . . *Пространство имен xenc принадлежит спецификации XML Encryption Влад Боркус. Безопасность Web-сервисного взаимодействия. – PCWEEK, № 33(447). -2004

25 Адресация и WS-Addressing 25 Адресация и WS-Addressing

26 Адресация в стандартах первого поколения (WSDL) В стандартах первого поколения полный адрес WS 26 Адресация в стандартах первого поколения (WSDL) В стандартах первого поколения полный адрес WS содержался в WSDL-описании WS в блоке . Это может доставить значительные неудобства, т. к. при изменении адреса службы приходится редактировать WSDL-файл целиком. При обмене сообщениями SOAP по стандарту первого поколения, адресация возложена на транспортный протокол (при связывании с HTTP) и не может быть изменена непосредственно в SOAP-сообщении.

27 Пример адресации SOAP по стандарту первого поколения Host URI Тип передаваемого сообщения: SOAP 27 Пример адресации SOAP по стандарту первого поколения Host URI Тип передаваемого сообщения: SOAP Action Описание WS-Addressing ведется по презентации: Siyamed Seyhmus. WS-Addressing. SINIR SRDC

Использование WS-Addressing для обеспечения независимости от транспорта 28 В стандарте WS-Addressing предусматривается введение полей Использование WS-Addressing для обеспечения независимости от транспорта 28 В стандарте WS-Addressing предусматривается введение полей и определяющих URI приемника сообщения и соответствующее действие:

Управление ответом 29 В стандарте первого поколения подразумевается, что ответное сообщение передается по уже Управление ответом 29 В стандарте первого поколения подразумевается, что ответное сообщение передается по уже открытому HTTP каналу. При этом, нет стандартной поддержки асинхронной коммуникации между Web службами. Стандарт WS-Addressing вводит следующие поля: , , , ,

Управление ответом 30 Передается адрес отправителя адрес получения ответа и адрес для извещения об Управление ответом 30 Передается адрес отправителя адрес получения ответа и адрес для извещения об ошибках У данного сообщения есть идентификатор “uuid: someid”, и оно относится (related) к сообщению “uuid: someotherid” как Ответ (“Reply”)

Адресация конечных точек 31 WS-Addressing обеспечивает расширенную адресацию конечных точек. Так как WSDL не Адресация конечных точек 31 WS-Addressing обеспечивает расширенную адресацию конечных точек. Так как WSDL не поддерживает расширение элемента «Service» , в WS-Addressing определен элемент , который может быть использован в WSDL.

<Endpoint. Reference> VS < Service > 32 *Endpoint. Reference element *WSDL Service element <Endpoint. VS < Service > 32 *Endpoint. Reference element *WSDL Service element расширяет элемент добавляя поля Reference. Properties и Policy. Address, Service. Name и Port. Type уже включены в элемент .

Формирование SOAP-сообщения на основе <Endpoint. Reference> 33 <wsa: Endpoint. Reference xmlns: wsa= Формирование SOAP-сообщения на основе 33 http: //www. fabrikam 123. example/acct 123456789 ABCDEFG . . . http: //www. fabrikam 123. example/acct 123456789 ABCDEFG. . . . . .

Конструкции WS-Addressing 34 Таким образом, WS-Addressing определяет два вида конструкций, позволяющих унифицировать адресацию WS Конструкции WS-Addressing 34 Таким образом, WS-Addressing определяет два вида конструкций, позволяющих унифицировать адресацию WS независимо от базового транспортного протокола: (описание адресации конечных точек) Message Information Header (обеспечение асинхронного, транспортно-независимого взаимодействия между WS)

35 Состояние WS и WSRF Презентация IBM 35 Состояние WS и WSRF Презентация IBM

36 «Состояния» и стандарты первого поколения Изначально, использование Web-служб не подразумевало существования «Состояния» . 36 «Состояния» и стандарты первого поколения Изначально, использование Web-служб не подразумевало существования «Состояния» . Типовой сценарий использования Web-службы: запрос – ответ – отключение. Каждый следующий запрос не зависит от предыдущего запроса. Add(10, 5) 15 Клиент Div(15, 3) 5 Webсервис

WSRF 37 Предложена в 2004 -м году, утверждена в качестве стандарта OASIS в 2006 WSRF 37 Предложена в 2004 -м году, утверждена в качестве стандарта OASIS в 2006 -м году. Включает следующие стандарты: WS-Resource specification WS-Resource. Properties (WSRF-RP) WS-Resource. Lifetime (WSRF-RL) WS-Service. Group (WSRF-SG) WS-Base. Faults (WSRF-BF)

38 Концепция WSRF – Web Service Resource Framework Для разработки Grid не получилось применить 38 Концепция WSRF – Web Service Resource Framework Для разработки Grid не получилось применить “чистые” Web-сервисы, т. к. они не обладали “состоянием”. WSRF является попыткой решить указанную архитектурную проблему с помощью введения понятия «состояние» в Web-сервисы, превратив их в Web-ресурсы, и указав механизмы использования этого понятия. Add(5) используя ресурс B Ресурсы 4 15 Клиент Div(3), используя ресурс B 5 Webсервис ID: A 15 10 5 ID: B

39 Web-сервис + Ресурс = WS-ресурс Ресурсы Filename: “install. xml” Size: 250 Descriptors: {“install”} 39 Web-сервис + Ресурс = WS-ресурс Ресурсы Filename: “install. xml” Size: 250 Descriptors: {“install”} ID: 0 x. F 5412 AB Webсервис Filename : “readme. txt” Size: 120 Descriptors: {“info”} ID: 0 x 14 DC 1 A 9 Filename: “app. exe” Size: 1056 Descriptors: {“application”} ID: 0 x. FF 42123

1. Определение свойств ресурса 40 <sat. Prop: Generic. Satellite. Properties xmlns: sat. Prop= 1. Определение свойств ресурса 40 30. 3 223. 2 47700 49 0 32 21999992 http: //example. com/satellite/2239992333. zip XML примеры Web-ресурсов из книги: Бабу Сандарам. Что такое WSRF, Часть 1. gridclub. ru

41 41 2. Базовый WSDL-файл 41

. . . " src="https://present5.com/presentation/0ceb4cb84307e86a1120cc38f45e8d06/image-42.jpg" alt="3. Добавление ресурса к WSDL 42 . . . " /> 3. Добавление ресурса к WSDL 42 . . . . . . . . . . . .

4. Операция на запрос ресурса 43 . . . <types>. . . <xsd: element 4. Операция на запрос ресурса 43 . . . . . . . . .

5. Запрос ресурса 44 Ответ: http: //example. com/satellite SAT 9928

5. Запрос состояния ресурса 45 <SOAP-ENV: Envelope xmlns: SOAP-ENV= 5. Запрос состояния ресурса 45 http: //docs. oasis-open. org/wsrf/2004/06/WS-Resource. Properties/ Get. Resource. Property http: //example. com/satellite SAT 9928 sat. Prop: altitude

Реализация WSRF 46 The Globus Toolkit 4: реализация WSRF на Java и C (WS Реализация WSRF 46 The Globus Toolkit 4: реализация WSRF на Java и C (WS -Core). Web. Sphere Application Server 6. 1: предоставляет среду WSRF для реализации конечных точек. Muse 2. 0 (Apache Foundation): реализация на Java WSRF, WS-Notification и WSDM (Web Services Distributed Management). WSRF: : Lite: реализация WSRF на perl. WSRF. NET: реализация стандарта WSRF на. NET. UNICORE 6. 0: реализация стандарта WSRF 1. 2 и WSNotification на Java.

47 WS-Notification Презентация IBM 47 WS-Notification Презентация IBM

Ссылки и литература 48 http: //www. soaspecs. com – перечень стандартов и спецификаций Web-служб Ссылки и литература 48 http: //www. soaspecs. com – перечень стандартов и спецификаций Web-служб с ссылками на организации-разработчики. http: //www. devarticles. com/c/b/Web-Services - сборник статей по разработке и практическому применению Webслужб, включая стандарты WSRF, WS-Addressing и WSNotification Бабу Сандарам. Что такое WSRF, Часть 1. [http: //www. gridclub. ru/library/publication. 2005 -1017. 1342842216/view] – пособие для разработчиков Webслужб. Леонид Черняк. Web-сервисы, grid-сервисы и другие. Открытые системы. № 12. -2004. [http: //www. osp. ru/os/2004/12/184882/] – отличная статья про историю взаимодействия Web-служб и грид

Спасибо за внимание! Ваши вопросы? Страница курса: http: //dom. susu. ru/grid. htm Радченко Глеб Спасибо за внимание! Ваши вопросы? Страница курса: http: //dom. susu. ru/grid. htm Радченко Глеб Игоревич, каф. СП, ЮУр. ГУ