Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance: Частина 1. Налаштування клієнта Web-сервісу і сервісу для асиметричної захисту
- Серія контенту:
- Цей контент є частиною серії: Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв...
- Системні вимоги
- В цій статті
- Малюнок 1. Конфігурація Web-сервісу з політикою безпеки за замовчуванням
- Дії по налаштуванню прикладу
- Конфігурація Web-сервісу WebSphere
- Налаштування клієнта Web-сервісів в Rational Application Developer
- Малюнок 2. Імпорт EAR-файлу клієнта Web-сервісу
- Малюнок 5. Rational Application Developer Project Facets
- Малюнок 8. Клієнтські настройки сховища ключів для цифрового підпису
- Ресурси для скачування
Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance
Серія контенту:
Цей контент є частиною # з серії # статей: Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance
https://www.ibm.com/developerworks/ru/views/global/libraryview.jsp?series_title_by=Передача+функций+защиты+web-сервисов+на+платформе+websphere+устройствам+ibm+websphere+datapower+soa+ appliance
Слідкуйте за виходом нових статей цієї серії.
Цей контент є частиною серії: Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance
Слідкуйте за виходом нових статей цієї серії.
Системні вимоги
Для роботи з цією статтею необхідні наступні програмні продукти:
- WebSphere Application Server V6.1 з пакетом функцій Web Services Feature Pack.
- IBM Rational Application Developer V7.0.0.6 або більш нової версії.
- Посвідчення захисту для Web-сервісів у вигляді сховищ ключів JCEKS, закритих ключів або відкритих сертифікатів, необхідних для певних криптографічних операцій.
В цій статті
У цій статті розглядаються такі теми:
- Розгортання та налаштування захищених Web-сервісів з використанням асиметричного шифрування.
- Використання Rational Application Developer для імпорту еталонного EAR-файлу, а також для настройки політик безпеки Web-сервісів і вкладень зв'язувань для клієнта Web-сервісу.
- Використання консолі WebSphere Application Server для настройки політик безпеки прикладу сервісу.
- Підготовка JCE (Java ™ Cryptography Extension) і посвідчень захисту JCEKS.
Пакет функцій Web Services Feature Pack for WebSphere Application Server V6.1 розширює можливості Web-сервісів і забезпечує асинхронну, надійну і захищену відправку повідомлень. Ця розширена функціональність підтримує основні стандарти Web-сервісів, що забезпечує гнучкість взаємодії з численними пропозиціями різних виробників програмного забезпечення. У числі підтримуваних стандартів:
- Java API for XML Web Services (JAX-WS)
- WS-Security
- WS-Addressing
- WS-Reliable Messaging
- WS-Secure Conversation
- SOAP Message Transmission Optimization Mechanism (MTOM)
Дана модель надає механізм Web-сервісів для гнучкого налаштування з використанням таких різних стандартів. Для спрощення тонкої настройки обробки Web-сервісів надаються політики та набори політик.
WebSphere DataPower SOA Appliance - це спеціалізовані мережеві пристрої, що допомагають захистити і прискорити обробку XML і Web-сервісів. Хоча WebSphere DataPower SOA Appliance мають широкий набір функціональних можливостей, в даній статті увага сконцентрована на аспектах їх роботи з Web-сервісами. Розглядаються, зокрема, такі пов'язані з Web-сервісами функціональні можливості, як захищена обробка на рівні XML-повідомлень для шифрування і дешифрування, підписання за допомогою цифрового підпису та її перевірка, WS-Security, перевірка коректності XML-схеми, підтримка управління Web- сервісами, а також докладний журнал роботи і аудит. Захищена обробка XML може зажадати значної кількості обчислювальних ресурсів. WebSphere DataPower SOA Appliance пропонують можливості обробки та захисту XML, які можуть бути недоступні в традиційних XML-механізмах. Передача пристроїв WebSphere DataPower SOA Appliance виконання частин запитів Web-сервісів, що вимагають інтенсивної обробки, прискорює роботу і знижує навантаження на Web-сервіси сервера додатків.
У Web Services Feature Pack for WebSphere Application Server V6.1 входять кілька політик і наборів політик безпеки Web-сервісів, що підтримують різноманітні конфігурації захисту Web-сервісів. Ці політики та набори політик можна вибирати і налаштовувати в консолі WebSphere Application Server. В консолі можна також створювати нові політики. Гнучка настройка змішаних рівнів обробки Web-сервісу дозволяє створювати спеціалізовані рівні захисту і надійності. Більш того, такий модульний підхід дозволяє обробляти частини Web-сервісу окремо. У даній статті демонструється, як розгорнути приклад Web-сервісу і налаштувати набір політик WS-Security Default (за замовчуванням) за допомогою Rational Application Developer.
У другій частині даної серії статей буде розглядатися питання розвантаження сервера і передачі пристроям WebSphere DataPower SOA Appliance деяких модульних функцій обробки WS-Security, в той час як інша обробка Web-сервісів покладається на сервер додатків. Це дозволяє здійснювати в пристроях WebSphere DataPower SOA Appliance ресурсномістких обробку, а на сервері додатків залишити обробку бізнес-логіки додатка.
Політика WS-Security Default гарантує цілісність повідомлення за допомогою підписування цифровим підписом тіла повідомлення і його заголовків; при цьому шифрування тексту повідомлення забезпечує конфіденційність. Застосування політики WS-Security Default до розгорнутому Web-сервісу налаштовує механізм обробки Web-сервісів таким чином, що первинний запит приймається модулем WS-Security. SOAP-повідомлення обробляється і розшифровується. Потім перевіряється цифровий підпис. У разі успішної обробки повідомлення відправляється в наступний модуль механізму Web-сервісів. Згенерувавши відповідь для передачі клієнту, модуль WS-Security виконує операції захисту в зворотній послідовності. Генерується цифровий підпис, який поміщається в SOAP-повідомлення. Потім SOAP-повідомлення шифрується згідно із зазначеною політиці, і запит повертається клієнтові. На малюнку 1 наведено приклад такої конфігурації Web-сервісу.
Малюнок 1. Конфігурація Web-сервісу з політикою безпеки за замовчуванням

У даному сценарії все елементи SOAP-повідомлення обробляються механізмом Web-сервісів Web Services Feature Pack for WebSphere Application Server V6.1. Середовище виконання WS-Security вставляється в ланцюжок обробки Web-сервісу під час розгортання програми. Конфігураційні параметри, що визначають необхідні настройки WS-Security, вказуються в дескрипторі розгортання. Ці параметри визначають схему побудови ланцюжка обробки Web-сервісу. Їх можна вказати або за допомогою консолі WebSphere Application Server, або за допомогою Rational Application Developer. У даній статті розглядається варіант з використанням Rational Application Developer.
Дії по налаштуванню прикладу
У наведених нижче діях по налаштуванню імпорту та експорту працюючого прикладу клієнта Web-сервісу використовується Rational Application Developer. Даний сценарій може допомогти освоїти аспекти використання повністю налаштованого клієнтського додатка Web-сервісу для захищеної обробки. Клієнт Web-сервісу на сервері додатків WebSphere встановлюється з консолі. У даному сценарії використовуються приклад EchoService і посвідчення безпеки, що поставляються з Web Services Feature Pack for WebSphere Application Server V6.1. IBM Rational Application Developer містить шаблони політики WS-Security Default, які ми будемо використовувати для настройки прикладу клієнта Web-сервісу.
Конфігурація Web-сервісу WebSphere
Виконайте наступні дії:
- Встановіть приклади Web-сервісів (в інформаційному центрі описується, як це зробити).
- Встановіть і налаштуйте сервіс і клієнт EchoService.
- Запустіть приклад клієнта, вказавши в адресному рядку браузера http: // localhost: 9080 / wssamplesei / demo.
- При вказівці типу повідомлення Synchronous Echo результат повинен виглядати як повторення введених рядків.
Далі ми налаштуємо зв'язування і політики WS-Security для перевірки успішності захищеного обміну луна-повідомленнями. Використовуючи готові працюють настройки сервісу і клієнта, ми спрощуємо налагодження, яка може знадобитися при виконанні більш складної настройки.
Налаштування клієнта Web-сервісів в Rational Application Developer
Нижче описується використання Rational Application Developer для імпорту файлу WebSphere Application Server Web Services Feature Pack WSSampleClientSei.ear, настройки зв'язувань і політики WS-Security Default, експорту .ear-файлу і розгортання його на сервері WebSphere Application Server.
- Запустіть Rational Application Developer.
- Створіть нову робочу область під назвою MyEchoClient.
- Виберіть File> Import.
- В папці J2EE виберіть EAR-файл, потім натисніть кнопку Next.
Малюнок 2. Імпорт EAR-файлу клієнта Web-сервісу
- В поле EAR file виберіть завантажений app_server_root /samples/lib/WebServicesSamples/WSSampleClientSei.ear, а потім натисніть Next.
- В панелі New Server Runtime в поле Name в кінці додайте WSFP, щоб вказати використання середовища виконання Web Services Feature Pack.
- В поле Installation directory введіть шлях до встановленого сервера.
Малюнок 3. Нове середовище виконання сервера
- Натисніть Finish. Знову відобразиться вікно, показане на малюнку 2 .
- Знову натисніть Finish.
- В панелі Project Explorer зліва виберіть і клацніть правою кнопкою миші на SampleClientSei, а потім виберіть Project Facets.
- Натисніть Add / Remove Project Facets.
- Виберіть WebSphere 6.1 Feature Pack for Web Services.
- Натисніть Finish, а потім OK.
Малюнок 5. Rational Application Developer Project Facets
- Створіть вкладення набору політик для клієнтського додатка, вибравши File> New> Other у головному меню.
- У майстра New розгорніть Web Services і Policy Set, потім виберіть Client Side Policy Set Attachment.
Малюнок 6. Створення вкладень наборів політик на стороні клієнта
- Натисніть Next.
- Натисніть Add, щоб відобразити вікно End Point definition Dialog. Введіть наступну інформацію:
- Service Name: EchoService
- Endpoint: EchoServicePort
- Operation Name: echoOperation
- Policy Set: WSSecurity default
- Binding: MyWSSecurityBinding
- Натисніть OK.
Малюнок 7. Визначення зв'язування кінцевої точки
Тепер необхідно налаштувати конфігурацію зв'язування для цифрового підпису.
- У Digital Signature Outbound Message Security Configuration виберіть WSSecurity, а потім Configure.
- У вікні Outbound Message Security Configuration:
- Введіть STRREF в поле Key Information Type.
- Введіть http://www.w3.org/2001/10/xml-exc-c14n# в поле Transform Algorithm.
- Натисніть кнопку Key Store Settings.
- У вікні Key Store Settings Dialog:
- Введіть $ {USER_INSTALL_ROOT} \ etc \ ws-security \ samples \ dsig-sender.ks в поле Keystore Path.
- Введіть client в поле Keystore Password.
- В поле Keystore Type виберіть JKS.
- В поле Key Alias введіть soaprequester.
- В поле Key Password введіть client.
- Натисніть OK.
Малюнок 8. Клієнтські настройки сховища ключів для цифрового підпису
- Щоб налаштувати конфігурацію зв'язування для XML-шифрування, перейдіть на вкладку XML Encryption Configuration у верхній частині вікна Binding Configuration Dialog.
- У вікні Outbound Message Security Configuration введіть KEYID в поле Key Information Type.
- Натисніть кнопку Key Store Settings, розташовану поруч з Outbound Message Security Configuration. У діалоговому вікні Key Store Settings:
- Введіть $ {USER_INSTALL_ROOT} \ etc \ ws-security \ samples \ enc-sender.jceks в поле Keystore Path.
- Введіть storepass в поле Keystore Password.
- Виберіть JCEKS в списку Keystore Type.
- Введіть Bob в поле Key Alias.
Малюнок 9. Клієнтські настройки сховища ключів для шифрування
- Натисніть OK.
- Натисніть кнопку Key Store Settings, розташовану поруч з Inbound Message Security Configuration. У діалоговому вікні Key Store Settings:
- Введіть% install% \ etc \ ws-security \ samples \ enc-sender.jceks в поле Key Store Path.
- Введіть storepass в поле Keystore Password.
- В поле Keystore Type виберіть JCEKS.
- Введіть Alice в поле Key Alias.
- Натисніть OK, а потім OK ще раз, щоб закрити вікно Binding Configuration Dialog.
- Натисніть Finish, щоб закрити вікно Client Side Policy Set Attachment.
Малюнок 10. Налаштування зв'язування клієнта Web-сервісу з використанням Rational Application Developer
- Після завершення налаштування зв'язування і політики WS-Security можна опублікувати або експортувати і встановити для тестування клієнтську програму Web-сервісу на сервері WebSphere Application Server.
- До тестування налаштуйте EchoService: вкажіть політику WS-Security Default і вкладення зв'язувань, розгорніть Services в лівій панелі консолі WebSphere Application Server, виберіть Service providers, а потім EchoService в правій панелі.
Малюнок 11. Налаштування політики WS-Security EchoService
- У правій панелі виберіть всі записи.
- У спадному меню Attach виберіть WS-Security default. Виберіть всі записи.
- У спадному меню Assign Binding виберіть default.
- У верхній частині екрану натисніть Save. Тепер сервіс EchoService налаштований на використання WS-Security. Для перевірки налаштувань WS-Security і зв'язування виберіть EchoService в поле Name, як показано на малюнку 12.
Малюнок 12. EchoService з налаштованими зв'язування і політикою WS-Security
- Протестуйте клієнтську програму, вказавши в адресному рядку браузера http: // localhost: 9080 / wssamplesei / demo. Можна замінити localhost на URL з ім'ям хоста сервера додатків, де встановлено клієнтське додаток Web-сервісу. Якщо клієнтську програму Web-сервісу встановлено на інший порт, переконайтеся, що використовується саме той порт, де воно встановлено.
- Додаток готове до відправки захищених повідомлень серверного сервісу. Відповідно до малюнком 13:
висновок
У даній статті ми за допомогою Rational Application Developer імпортували EAR-файл прикладу EchoService клієнтського додатка і налаштували його на використання WS-Security, встановили приклад клієнта Web-сервісу на сервері WebSphere Application Server, встановили і налаштували EchoService на використання WS-Security і ввели в браузері повідомлення, що відправляється з клієнтського застосування Web-сервісу в Web-сервіс EchoService. Повідомлення було відправлено назад клієнту.
Перед відправкою повідомлення з клієнта WS-Security виконала шифрування повідомлення і його підписування з використанням асиметричних ключів. Після прийому повідомлення сервером додатків WS-Security використовувала механізм асиметричні ключі для перевірки цифрового підпису та дешифрування повідомлення. Потім повідомлення було відправлено в Web-сервіс для обробки. У цьому сценарії повідомлення просто повторюється у відповіді. WS-Security використовувала механізм асиметричних ключів для підписування цифровим підписом і шифрування листа у відповідь перед його відправкою. На стороні клієнта WS-Security приймає повідомлення, перевіряє цифрові підписи і дешифрує повідомлення. Потім повідомлення відображається в браузері.
У другій частині даної серії статей ми будемо використовувати пристрої WebSphere DataPower SOA Appliance для створення і перевірки цифрового підпису WS-Security при шифрування і дешифрування повідомлень.
Ресурси для скачування
Схожі теми
Підпишіть мене на повідомлення до коментарів
Jsp?