Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance: Частина 1. Налаштування клієнта Web-сервісу і сервісу для асиметричної захисту

  1. Серія контенту:
  2. Цей контент є частиною серії: Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв...
  3. Системні вимоги
  4. В цій статті
  5. Малюнок 1. Конфігурація Web-сервісу з політикою безпеки за замовчуванням
  6. Дії по налаштуванню прикладу
  7. Конфігурація Web-сервісу WebSphere
  8. Налаштування клієнта Web-сервісів в Rational Application Developer
  9. Малюнок 2. Імпорт EAR-файлу клієнта Web-сервісу
  10. Малюнок 5. Rational Application Developer Project Facets
  11. Малюнок 8. Клієнтські настройки сховища ключів для цифрового підпису
  12. Ресурси для скачування

Передача функцій захисту 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-сервісу з політикою безпеки за замовчуванням
Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance   Серія контенту:   Цей контент є частиною # з серії # статей: Передача функцій захисту Web-сервісів на платформі WebSphere пристроїв IBM WebSphere DataPower SOA Appliance   https://www

У даному сценарії все елементи 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

Виконайте наступні дії:

  1. Встановіть приклади Web-сервісів (в інформаційному центрі описується, як це зробити).
  2. Встановіть і налаштуйте сервіс і клієнт EchoService.
  3. Запустіть приклад клієнта, вказавши в адресному рядку браузера http: // localhost: 9080 / wssamplesei / demo.
  4. При вказівці типу повідомлення 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.

  1. Запустіть Rational Application Developer.
  2. Створіть нову робочу область під назвою MyEchoClient.
  3. Виберіть File> Import.
  4. В папці J2EE виберіть EAR-файл, потім натисніть кнопку Next.
    Малюнок 2. Імпорт EAR-файлу клієнта Web-сервісу
  5. В поле EAR file виберіть завантажений app_server_root /samples/lib/WebServicesSamples/WSSampleClientSei.ear, а потім натисніть Next.
  6. В панелі New Server Runtime в поле Name в кінці додайте WSFP, щоб вказати використання середовища виконання Web Services Feature Pack.
  7. В поле Installation directory введіть шлях до встановленого сервера.
    Малюнок 3. Нове середовище виконання сервера
  8. Натисніть Finish. Знову відобразиться вікно, показане на малюнку 2 .
  9. Знову натисніть Finish.
  10. В панелі Project Explorer зліва виберіть і клацніть правою кнопкою миші на SampleClientSei, а потім виберіть Project Facets.
  11. Натисніть Add / Remove Project Facets.
  12. Виберіть WebSphere 6.1 Feature Pack for Web Services.
  13. Натисніть Finish, а потім OK.
    Малюнок 5. Rational Application Developer Project Facets
  14. Створіть вкладення набору політик для клієнтського додатка, вибравши File> New> Other у головному меню.
  15. У майстра New розгорніть Web Services і Policy Set, потім виберіть Client Side Policy Set Attachment.
    Малюнок 6. Створення вкладень наборів політик на стороні клієнта
  16. Натисніть Next.
  17. Натисніть Add, щоб відобразити вікно End Point definition Dialog. Введіть наступну інформацію:
    • Service Name: EchoService
    • Endpoint: EchoServicePort
    • Operation Name: echoOperation
    • Policy Set: WSSecurity default
    • Binding: MyWSSecurityBinding
  18. Натисніть OK.
    Малюнок 7. Визначення зв'язування кінцевої точки

Тепер необхідно налаштувати конфігурацію зв'язування для цифрового підпису.

  1. У Digital Signature Outbound Message Security Configuration виберіть WSSecurity, а потім Configure.
  2. У вікні Outbound Message Security Configuration:
    • Введіть STRREF в поле Key Information Type.
    • Введіть http://www.w3.org/2001/10/xml-exc-c14n# в поле Transform Algorithm.
    • Натисніть кнопку Key Store Settings.
  3. У вікні 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.
  4. Натисніть OK.
    Малюнок 8. Клієнтські настройки сховища ключів для цифрового підпису
  5. Щоб налаштувати конфігурацію зв'язування для XML-шифрування, перейдіть на вкладку XML Encryption Configuration у верхній частині вікна Binding Configuration Dialog.
  6. У вікні Outbound Message Security Configuration введіть KEYID в поле Key Information Type.
  7. Натисніть кнопку 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. Клієнтські настройки сховища ключів для шифрування
  8. Натисніть OK.
  9. Натисніть кнопку 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.
  10. Натисніть OK, а потім OK ще раз, щоб закрити вікно Binding Configuration Dialog.
  11. Натисніть Finish, щоб закрити вікно Client Side Policy Set Attachment.
    Малюнок 10. Налаштування зв'язування клієнта Web-сервісу з використанням Rational Application Developer
  12. Після завершення налаштування зв'язування і політики WS-Security можна опублікувати або експортувати і встановити для тестування клієнтську програму Web-сервісу на сервері WebSphere Application Server.
  13. До тестування налаштуйте EchoService: вкажіть політику WS-Security Default і вкладення зв'язувань, розгорніть Services в лівій панелі консолі WebSphere Application Server, виберіть Service providers, а потім EchoService в правій панелі.
    Малюнок 11. Налаштування політики WS-Security EchoService
  14. У правій панелі виберіть всі записи.
  15. У спадному меню Attach виберіть WS-Security default. Виберіть всі записи.
  16. У спадному меню Assign Binding виберіть default.
  17. У верхній частині екрану натисніть Save. Тепер сервіс EchoService налаштований на використання WS-Security. Для перевірки налаштувань WS-Security і зв'язування виберіть EchoService в поле Name, як показано на малюнку 12.
    Малюнок 12. EchoService з налаштованими зв'язування і політикою WS-Security
  18. Протестуйте клієнтську програму, вказавши в адресному рядку браузера http: // localhost: 9080 / wssamplesei / demo. Можна замінити localhost на URL з ім'ям хоста сервера додатків, де встановлено клієнтське додаток Web-сервісу. Якщо клієнтську програму Web-сервісу встановлено на інший порт, переконайтеся, що використовується саме той порт, де воно встановлено.
  19. Додаток готове до відправки захищених повідомлень серверного сервісу. Відповідно до малюнком 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?