HP e-Health Broker Wersja 4.0 Opis produktu
Transkrypt
HP e-Health Broker Wersja 4.0 Opis produktu
HP e-Health Broker Wersja 4.0 Opis produktu Uwagi i informacje prawne Copyright © 2001-2013 Hewlett-Packard Company. Wszelkie prawa zastrzeżone. Informacje zawarte w tym dokumencie mogą ulec zmianie bez uprzedzenia. Jedyne gwarancje, jakich udziela HP na produkty i usługi, są określone w oświadczeniach gwarancyjnych dostarczanych wraz z takimi produktami i usługami. Niniejszy dokument nie może być interpretowany jako dodatkowa gwarancja. HP nie ponosi odpowiedzialności za błędy techniczne lub redakcyjne oraz braki występujące w niniejszym dokumencie. EJB, J2EE i wszystkie znaki towarowe związane z Java są zarejestrowanymi znakami towarowymi firmy Sun Microsystems, Inc. w Stanach Zjednoczonych i w innych krajach. Informacje zawarte w tym dokumencie stanowią tajemnicę przedsiębiorstwa HewlettPackard Company. W celu ich posiadania, wykorzystywania lub kopiowania wymagana jest odpowiednia licencja udzielona przez producenta . HP e-Health Broker Opis produktu Spis treści Wstęp .................................................................................................................................................................... 5 Cel dokumentu ................................................................................................................................................ 5 Odbiorcy dokumentu ....................................................................................................................................... 5 Koncepcja............................................................................................................................................................. 6 Interfejsy ............................................................................................................................................................... 8 Interfejsy synchroniczne .................................................................................................................................. 8 Interfejsy asynchroniczne ................................................................................................................................ 8 Mechanizmy bezpieczeństwa ............................................................................................................................. 9 Kontrola dostępu ............................................................................................................................................. 9 Mechanizmy audytowe .................................................................................................................................. 10 Wysoka dostępność .......................................................................................................................................... 11 Wydajność i skalowalność ............................................................................................................................... 12 Suplement – wybrane usługi dziedzinowe...................................................................................................... 13 1 Mediacje ...................................................................................................................................................... 13 1.1 Przykład użycia ................................................................................................................................. 13 2 Usługi CWU ................................................................................................................................................ 15 2.1 Przykład użycia ................................................................................................................................. 15 3 Usługi HL7 .................................................................................................................................................. 17 4 Usługi SRP .................................................................................................................................................. 21 4.1 UdostepnijDaneDowoduPoNumerze ................................................................................................ 21 4.2 UdostepnijDaneOsobyPoNumerzeDowodu ...................................................................................... 21 4.3 WeryfikujIUdostepnijAktualneDaneOsoby ........................................................................................ 22 5 Usługi ePUAP ............................................................................................................................................. 24 5.1 addDocumentToSigning.................................................................................................................... 24 5.2 getSignedDocument.......................................................................................................................... 24 5.3 verifySignedDocument ...................................................................................................................... 24 5.4 Przykład użycia ................................................................................................................................. 25 Strona 4 z 25 © Copyright 2001-2012 Hewlett-Packard Company . HP e-Health Broker Opis produktu Wstęp Cel dokumentu Celem dokumentu jest przedstawienie podstawowych danych o oprogramowaniu HP e-Health Broker, pozwalających na ewaluacje możliwości jego zastosowania w środowisku informatycznym z wykorzystaniem wskazanych w niniejszej dokumentacji parametrów funkcjonalnych i niefunkcjonalnych oprogramowania HP e-Health Broker. Dokonano tego poprzez prezentację koncepcji produktu, jego interfejsów oraz możliwości w obszarach niefunkcjonalnych takich jak niezawodność, wydajność, skalowalność czy bezpieczeństwo. Odbiorcy dokumentu Dokument przeznaczony jest dla wszystkich zainteresowanych wykorzystaniem HP e-Health Broker w swoich rozwiązaniach, a w szczególności rozwiązaniach IT w branży usług medycznych. Od czytelnika jest wymagana ogólna wiedza na temat współczesnych metod komunikacji między systemami informatycznymi, w szczególności znajomości zagadnień związanych z działaniem usług sieciowych (ang. Web Services), XML, SOAP oraz funkcjonalności oferowanych przez specyfikację Java EE. W rozdziale przedstawiono koncepcję produktu, jego interfejsy oraz opisano możliwości oprogramowania HP e-Health Broker w obszarach niefunkcjonalnych takich jak niezawodność, wydajność, skalowalność czy bezpieczeństwo. Strona 5 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Koncepcja HP e-Health Broker jest produktem programowym umożliwiającym implementację brokerów informacji, zwanych także szynami danych lub szynami usług. Został zbudowany w oparciu o architekturę komponentową i dostarcza oferowane funkcjonalności w modelu usługowym. W skład produktu wchodzi serwer integracyjny oraz zestaw gotowych usług zebranych w Katalogu Usług. Serwer integracyjny pełni rolę środowiska uruchomieniowego dla procesów realizujących usługi udostępniane klientom. Usługi te mogą być: mediacjami realizowanymi przez mediator; usługami dziedzinowymi adresującymi konkretne obszary funkcjonalne z danej domeny (np. odpytywanie rejestrów dziedzinowych, obsługa protokołów lub standardów dziedzinowych takich jak HL7). Serwer integracyjny składa się z silnika procesów, warstwy transportów, mechanizmów bezpieczeństwa związanych z kontrolą dostępu oraz audytem, API wykorzystywanego przez usługi dziedzinowe oraz pełnego środowiska uruchomieniowego aplikacji zgodnych z Java EE, wspierającego osadzanie m.in. komponentów dedykowanych tworzonych zgodnie ze standardem EJB3. Dostępny jest także menadżer konfiguracji umożliwiający przekazywanie wartości dla parametrów konfiguracyjnych ( w tym również dla różnych instancji serwera). Menedżer konfiguracji umożliwia eksport ustawień i ich import na innych instancjach serwera. Serwer integracyjny wspiera wykorzystanie zewnętrznych adapterów umożliwiających dostęp do systemów zewnętrznych poprzez niestandardowe protokoły. Serwer jest platformą bazującą na XML’u. Przetwarzane komunikaty są wewnętrznie reprezentowane poprzez obiekty Java z zachowaniem pełnej wierności reprezentacji Strona 6 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu XML (ang. full XML infoset fidelity). Oferowane jest pełne wsparcie dla funkcjonalności transformacji danych, opartych o XSLT, XQuery, XPath, a także możliwość wzbogacania danych o dane z systemów zewnętrznych oraz nakładanie warunków na transformacje danych. Wdrożenie oprogramowania HP e-Health Broker polega na odpowiedniej konfiguracji mediacji oraz wykorzystanych usług dziedzinowych, a także na dostarczeniu dedykowanych komponentów realizujących sparametryzowane podobszary wykorzystanych usług dziedzinowych. Strona 7 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Interfejsy HP e-Health Broker umożliwia realizację komunikacji synchronicznej zgodnej z paradygmatem pytanie/odpowiedź, a także komunikacji asynchronicznej, w której na dane pytanie odpowiedzi może nie być lub może być dostępna w przyszłości. Domyślnie komunikaty są przetwarzane równolegle, ale interfejsy mogą być skonfigurowane w sposób gwarantujący przetwarzanie sekwencyjne. Możliwe jest także ustawienie parametrów QoS, np. ograniczenie czasu wywołań dla usług, czy zachowania w przypadku awarii polegającego na ponownym dostarczeniu komunikatu. W komunikacji możliwe jest wykorzystania adapterów pozwalających na wykorzystanie takich protokołów i systemów zewnętrznych jak: HTTP, FTP, JMS, JDBC, SMTP i innych. Interfejsy synchroniczne Komunikacja synchroniczna jest udostępniona poprzez transport Web Service (zgodny z SOAP 1.1/1.2, wspierający SOAP with Attachments), umożliwiający przesyłanie komunikatów SOAP poprzez protokół HTTP/HTTPs. Głównym komponentem wykorzystywanym w tym modelu komunikacji jest mediator, który umożliwia synchroniczny dostęp do usług udostępnionych przez broker, a realizowanych przez systemy zewnętrzne, niewidoczne dla wywołującego mediowaną usługę. Interfejsy asynchroniczne Komunikacja asynchroniczna jest realizowana przy pomocy transportów JMS oraz IMAP. Transport JMS umożliwia przesyłanie komunikatów XML przy pomocy wbudowanych mechanizmów kolejkowych zgodnych z API JMS. Transport IMAP umożliwia komunikację z brokerem przy pomocy wiadomości email, w których załącznikami są komunikaty SOAP lub XML. Strona 8 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Mechanizmy bezpieczeństwa Kontrola dostępu Dostęp do usług udostępnianych przez HP e-Health Broker może być chroniony. W tym celu oprogramowanie dostarcza wiele mechanizmów kontroli dostępu. Rekomendowanym sposobem zabezpieczenia dostępu jest wymuszenie dwustronnego uwierzytelniania SSL połączeń od klientów do brokera. Innym mechanizmem jest wsparcie dla standardu WS-Security, które umożliwia zabezpieczenie usług na poziomie warstwy aplikacyjnej. Przy wykorzystaniu WSSecurity możliwe jest zagwarantowanie niezaprzeczalności komunikacji poprzez zastosowanie podpisu cyfrowego, a także ograniczenie dostępu do upoważnionych użytkowników poprzez zastosowanie mechanizmów Username Token oraz Binary Security Token wraz z certyfikatami cyfrowymi X.509. Możliwe jest także uwierzytelnienie oparte o weryfikację hostów. HP e-Health Broker pozwala na kontrolę dostępu z wykorzystaniem dowolnego poziomu granulacji. Zastosowano model ABAC (ang. attribute-based access control), który wykorzystuje standard XACML 2.0 i umożliwia mapowanie ról oraz przypisanie polityk dostępu zarówno dla grup usług, jak i dla pojedynczych usług, a nawet przypisanie oddzielnych polityk dostępu dla tych samych usług, w zależności od treści komunikatów, jakie do nich wpływają. Produkt zawiera wbudowany podsystem zarządzania tożsamością (użytkownicy/grupy/role), a także umożliwia nałożenie polityk na weryfikację poprawności danych uwierzytelniających, w tym certyfikatów, kluczy bezpieczeństwa oraz haseł użytkowników. Najbardziej zaawansowanym mechanizmem jest możliwość wykorzystania zewnętrznego dedykowanego systemu autoryzacji, który jest zarządzany przez istniejącą w danej organizacji komórkę SOC (ang. Security Operations Center), poprzez integrację realizowaną przez dedykowany komponent udostępniany przez Strona 9 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu producenta HP e-Health Broker dla wspieranych systemów autoryzacji firm trzecich (opartych np. na standardzie XACML). Mechanizmy audytowe Wszystkie zdarzenia generowane wewnątrz instancji brokera są objęte wewnętrznym systemem audytowym. Mechanizmy audytu pozwalają na diagnostykę pracy serwera (np. okoliczności wystąpienia błędu, kontekst na poziomie metody/obiektu/modułu, czas/data), a jednocześnie mogą być wykorzystane w celach zapewnienia zgodności z regulacjami prawnymi poprzez implementację śledzenia zdarzeń biznesowych przesyłanych w komunikatach, które przepływają przez broker integracyjny. Strona 10 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Wysoka dostępność HP e-Health Broker w domyślnej instalacji jest skonfigurowany w sposób wysokodostępny i nie wymaga dalszej konfiguracji. Po uruchomieniu wielu instancji na różnych serwerach, instancje te tworzą dynamicznie aktywny klaster obejmujący zasięgiem wspólną domenę multicast. Wszystkie węzły klastra biorą aktywny udział w przetwarzaniu komunikatów. Dostarczany jest także mechanizm klastrowego singletona, który umożliwia uruchamianie określonego kodu w sposób wysokodostępny, ale jednocześnie gwarantuje wykonanie go przez tylko jeden wątek na tylko jednym węźle w danym punkcie w czasie. W przypadku awarii węzła, jego rolę przejmują pozostałe węzły. W szczególności, w przypadku awarii węzła hostującego klastrowy singleton, pozostałe węzły dokonują elekcji nowego właściciela tego komponentu, a wszystkie komponenty podłączone do singletona, który uległ awarii, są dynamicznie i automatycznie przełączane na nowy. Możliwe jest skonfigurowanie automatycznego restartu instancji w przypadku awarii, a także manualne wymuszenie migracji instancji. Po przeniesieniu instancje są w pełni skonfigurowane i widoczne dla pozostałych instancji klastra. Strona 11 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Wydajność i skalowalność HP e-Health Broker jest oprogramowaniem, które było projektowane do użycia w centralnej roli w danej organizacji. Cel ten nakłada wymóg spełnienia odpowiednich wymagań w zakresie wydajności i skalowalności. Oprogramowanie brokera w zakresie węzłów obliczeniowych umożliwia skalowalności zbliżoną do liniowej. Oznacza to, że aby zwiększyć wydajność przetwarzania, należy udostępnić dodatkową moc obliczeniową. Preferowane jest skalowanie horyzontalne w przeciwieństwie do wertykalnego, tzn. rozbudowa poprzez dodanie nowych węzłów o takiej samej pojemności jednostkowej, w przeciwieństwie do rozbudowy zasobów w pojedynczym węźle. Należy jednak pamiętać, że główną rolą brokera jest pośredniczenie w wymianie danych między systemami zewnętrznymi. W związku z tym wydajność całego rozwiązania zależy w znacznym stopniu od wydajności integrowanych systemów. Kod oprogramowania HP e-Health Broker jest wysoce zoptymalizowany, co pozwala na uzyskanie na pojedynczej maszynie wirtualnej wykorzystującej pojedynczy rdzeń nowoczesnego procesora liczby transakcji na sekundę liczonej w setkach. Nie mniej jednak, nieprawidłowe wykorzystywanie możliwości produktu w połączeniu z nieoptymalną architekturą wdrażanego rozwiązania może skutkować niezadawalającym poziomem wydajności, co należy mieć na uwadze projektując i wdrażając produkt w danym rozwiązaniu. HP e-Health Broker zawiera mechanizmy ochrony przed przeciążeniem. W przypadku wzrostu obciążenia jest ono dynamicznie i automatycznie relokowane na mniej obciążone instancje klastra. Strona 12 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Suplement – wybrane usługi dziedzinowe W tym rozdziale są przedstawione wybrane, predefiniowane usługi dziedzinowe zlokalizowane w HP e-Health Broker na potrzeby medycznego rynku polskiego, które mogą posłużyć do implementacji wymagań w danym wdrożeniu produktu. Poniższe opisy usług są jednocześnie ilustracją możliwości tej platformy w zakresie tworzenia nowych usług integracyjnych. 1 Mediacje HP e-Health Broker oferuje generyczny sposób wywoływania prostych usług zewnętrznych przy wykorzystaniu mediatora. Jest to mechanizm wywołujący usługi zewnętrzne z możliwością skonfigurowania: sposobu uwierzytelnienia wiadomości przychodzącej: o Username token, o Binary security token (X.509); sposobu uwierzytelnienia wiadomości przesyłanej do wywołanego systemu; sposobu podpisywania zwracanej wiadomości; mapowania sposobów uwierzytelnienia; adresu docelowego usługi. Wykonywana mediacja wiązana jest z przychodzącym komunikatem na dwa sposoby: poprzez dopasowanie adresu URL oraz wartości nagłówka SOAPAction; poprzez dopasowanie adresu URL oraz typu komunikatu żądania. 1.1 Przykład użycia Poniżej znajduje się ilustracja przypadku użycia mediatora w usłudze lokalnej - bez uwierzytelnienia. Strona 13 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Poniżej znajduje się przykład użycia mediatora do usługi zewnętrznej - z uwierzytelnieniem za pomocą skonfigurowanej metody. Strona 14 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu 2 Usługi CWU Usługi CWU zaimplementowane w HP e-Health Broker umożliwiają odpytywanie CWU – Centralnego Wykazu Ubezpieczonych w celu weryfikacji uprawnień pacjentów do świadczeń medycznych. W komunikacie wysyłanym do usługi należy podać dane identyfikujące daną osobę, numer PESEL bądź numer dowodu osobistego. Na ich podstawie zostaną uzyskane dane osobowe z rejestru CWU. W przypadku, kiedy w dokumencie nie jest podany numer PESEL, wywoływana jest usługa dostępu do danych po numerze dowodu osobistego MSW/SRP/Dowody WebServices, na której podstawie uzyskiwany jest numer PESEL. Na jego podstawie pobierane są dane z rejestru CWU. 2.1 Przykład użycia W przypadku, gdy numer PESEL jest podany, komunikat jest obsługiwany w HP eHealth Broker w następujący sposób: Strona 15 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Natomiast jeśli numer PESEL nie jest podany w komunikacie, następuje następujący przepływ komunikatów: Strona 16 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu 3 Usługi HL7 Usługi HL7 odpowiadają za obsługę danych w formacie w/g standardu HL7 (Health Level Seven) w wersji 2.x. Jest to format oparty na tekście ASCII. HL7 nie narzuca warstwy transportowej. W HP e-Health Broker za protokół transportowy służy SOAP, dzięki czemu zachowane jest jednolite rozwiązanie w obrębie całej aplikacji. HP e-Health Broker umożliwia przyjmowanie komunikatów HL7, przenoszenie zawartych w nich danych na format XML, dostosowywanie i przesyłanie ich na usługi zewnętrzne oraz tłumaczenie otrzymywanych odpowiedzi powrotnie na komunikaty spełniające standard HL7. Poza opisanymi powyżej mechanizmami HP e-Health Broker zapewnia również obsługę błędów SOAP generowanych zarówno przez wewnętrzną logikę szyny integracyjnej jak też zwracanych przez zewnętrzną usługę. Błędy te są przechwytywane i zwracane jako komunikat zgodny ze standardem HL7. Komunikat HL7 obsługiwany jest w HP e-Health Broker w sposób przedstawiony na poniższych ilustracjach. Przebieg komunikacji od strony klienta do usługi zewnętrznej prezentuje się następująco: Strona 17 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu HP e-Health Broker przechwytuje odpowiedź uzyskaną od serwera zewnętrznego i formatuje ją do standardu HL7 przed zwróceniem jej do klienta: Strona 18 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu W przypadku wystąpienia błędu na którymkolwiek etapie przetwarzania komunikatu po stronie serwera integracyjnego HP e-Health Broker bądź usługi zewnętrznej (na poniższej ilustracji oznaczone strzałkami o numerach od 1 do 5), zostanie on zwrócony w formacie HL7. Strona 19 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Strona 20 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu 4 Usługi SRP Usługi SRP odpowiadają za pobranie danych osobowych danej osoby przy użyciu Systemu Rejestrów Państwowych. Aby wywołać zewnętrzną usługę SRP, należy przesłać do HP e-Health Broker komunikat zgodny ze schematem odpowiedniej usługi. 4.1 UdostepnijDaneDowoduPoNumerze Jest to usługa oferowana w ramach systemu SRP - Domena Dowody. Oprócz wywołania usługi następuje weryfikacja poprawności podanego numeru dowodu osobistego. 4.2 UdostepnijDaneOsobyPoNumerzeDowodu Ta usługa zapewnia funkcjonalność pobierania z systemu SRP danych osoby na podstawie numeru dowodu osobistego. Strona 21 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Wywołuje ona usługi UdostepnijDaneDowoduPoNumerze oraz WeryfikujIUdostepnijAktualneDaneOsoby. Przy pomocy pierwszej usługi na podstawie numeru dowodu osobistego uzyskuje numer PESEL. Następnie wykorzystując numer PESEL pobiera dane osoby. 4.3 WeryfikujIUdostepnijAktualneDaneOsoby Jest to usługa oferowana w ramach systemu SRP - Domena PESEL . Strona 22 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu Strona 23 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker 5 Opis produktu Usługi ePUAP Usługi ePUAP komunikują się z Elektroniczną Platformą Usług Administracji Publicznej w ramach interfejsów podsystemu Profil Zaufany. Zawartość komunikatu SOAP powinna być zgodna ze schematem definiującym dane wejściowe tej usługi. Usługi sieciowe ePUAP wymagają podpisania przesyłanej wiadomości przez certyfikat zarejestrowany w systemie DRACO. 5.1 addDocumentToSigning Ta usługa rejestruje zlecenie podpisu dokumentu. W przypadku pomyślnego podpisania dokumentu, zostaje on związany z adresem podanym w treści elementu successURL. 5.2 getSignedDocument Usługa ta służy do pobrania podpisanego dokumentu. Używa się w tym celu adresu URL identyfikującego dokument (adres otrzymany z akcji addDocumentToSigning). 5.3 verifySignedDocument Usługa ta weryfikuje podpisy zawarte w dokumencie. Zwraca ona strukturę XML, która zawiera informacje dotyczące podpisu dokumentu. Dokument przekazany w elemencie document należy zakodować algorytmem Base64. Strona 24 z 25 © Copyright 2001-2012 Hewlett-Packard Company HP e-Health Broker Opis produktu 5.4 Przykład użycia Ogólny schemat przekazywania komunikatu do usługi ePUAP jest następujący. Strona 25 z 25 © Copyright 2001-2012 Hewlett-Packard Company