Ramy Interoperacyjności Systemów Administracji Publicznej

Wielkość: px
Rozpocząć pokaz od strony:

Download "Ramy Interoperacyjności Systemów Administracji Publicznej"

Transkrypt

1 Ramy Interoperacyjności Systemów Administracji Publicznej (Connected Government Framework) 2008, Microsoft Corporation

2

3 Spis treści Wprowadzenie... 6 Struktura biznesowa RISA... 6 Co to jest e-administracja?... 6 Interoperacyjnośd w administracji... 6 Integracja semantyczna, integracja danych... 7 Integracja aplikacji, integracja systemów... 9 Broker RISA Wymagania systemów administracji Powszechne problemy dotyczące architektury Złożonośd zagadnienia Zapewnienie dostępu do stale rozszerzającego się zakresu funkcji Różnorodnośd kanałów dostępu Szerokie wsparcie różnorodnych platform klienckich Obsługa wielu języków i wszechstronny dostęp Obsługa wielu różnych poświadczeo tożsamości Udostępnienie każdej z usług dla sektora publicznego w spójny i bezpieczny sposób Zarządzanie tożsamością Pojedyncze poświadczenia do dostępu do wielu usług Spójne logowanie a pojedyncze logowanie Odwzorowywanie tożsamości Trudne przypadki Początkowa identyfikacja użytkowników Problemy integracji Różne możliwości integracji Wspólne rozwiązanie integracyjne Elastycznośd i sprawnośd Dlaczego elastycznośd i sprawnośd są tak ważne Tworzenie architektury z myślą o elastyczności Zabezpieczanie rozwiązania Dlaczego bezpieczeostwo jest tak ważne? Projektowanie bezpiecznych rozwiązao Skalowalnośd, wydajnośd, dostępnośd Dostępnośd i odpornośd Odtwarzanie po awariach Konstrukcja wspólnego huba Potrzeba ustalenia właściciela lub finansującego Początkowa inwestycja z odroczonymi korzyściami Typowe konflikty z projektami indywidualnymi Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego Reguły rządzące architekturą Orientacja na usługi Interfejsy i standardy Wyszukiwanie usług Stowarzyszone funkcje zabezpieczeo Elastycznośd Bezpieczeostwo Skalowalnośd i wydajnośd Hub usług Kontekst i interakcje zewnętrzne huba Usługi świadczone przez hub Możliwe topologie Usługi zarządzania tożsamością Podstawowy model tożsamości i zasady Początkowe zgłaszanie użytkowników Zarządzanie użytkownikami i rejestracjami Usługi uwierzytelniania i autoryzacji Uwierzytelnianie Autoryzacja Usługa tokenów bezpieczeostwa Udostępnianie usług uwierzytelniania i autoryzacji... 65

4 Usługa katalogu usług UDDI Usługi rejestracji dokumentów Rola usługi rejestracji dokumentów Podstawowa architektura Format komunikatów Załączniki komunikatów Bezpieczeostwo komunikatów Walidacja komunikatu Magazyn komunikatów Routing komunikatów Niezawodne dostarczanie komunikatów Obsługa transakcji Orkiestracja procesów biznesowych Procesy biznesowe w hubie usług Integracja z usługami zaplecza Przekazywanie dokumentów do zainteresowanych stron Komunikacja z systemami zaplecza Bezpieczeostwo Ogólne sposoby podejścia do problemu bezpiecznej architektury rozwiązania Zagadnienia bezpieczeostwa specyficzne dla architektury systemów dla sektora publicznego Wydajnośd i skalowalnośd Planowanie wydajności Czynniki mające wpływ na wydajnośd systemu Projektowanie wydajnej i skalowalnej architektury rozwiązao dla sektora publicznego Zarządzanie i eksploatacja Wprowadzenie Architektura zarządzania Struktura leżąca u podstaw architektury zarządzania Logiczny układ architektury przedsiębiorstwa Architektura zarządzania MSM Narzędzia administracyjne Dodatkowe zasoby Elementy składowe typowego rozwiązania integracyjnego dla sektora publicznego Wprowadzenie Zarządzanie tożsamością Uwierzytelnianie Autoryzacja Zapewnienie dostępu do usługi U&A za pośrednictwem interfejsu usług sieciowych Hub komunikacyjny Funkcje Projekt Skalowalnośd i wysoka dostępnośd Zagadnienia związane z bezpieczeostwem Hub integracyjny Funkcje Projekt Czynniki do rozważenia podczas integracji z systemami zaplecza Wskazówki dotyczące implementacji Wykorzystywanie podpisów elektronicznych XML i certyfikatów Podstawy prawne dokumentu elektronicznego Podstawy podpisów elektronicznych XML Wady i zalety stosowania podpisów elektronicznych dla dokumentów XML w projektach dla administracji publicznej Podpisanie dokumentu XML Weryfikacja podpisu elektronicznego Wybrane akty prawne Standardy Analiza prawna RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 4

5 Microsoft Sp. z o.o. kontakt Al. Jerozolimskie 195a Warszawa tel. (22) , fax: (22) NIP ; KRS Sąd Rejonowy dla m.st. Warszawy, XIII Wydział Gospodarczy Krajowego Rejestru Sądowego Kapitał zakładowy zł RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 5

6 Wprowadzenie Pierwsza częśd niniejszego opracowania Struktura biznesowa RISA dotyczy zagadnieo budowy założeo integracji aplikacji dla administracji publicznej (AP). Powstała przede wszystkim w oparciu o posiadane przez Microsoft doświadczenie w zakresie specyfikowania i tworzenia rozbudowanych architektur zorientowanych na usługi i w szczególności o doświadczenie w prowadzeniu projektów dla administracji publicznej w skali całego kraju. Opisano w niej charakterystykę orientacji na usługi oraz zaproponowano sposób definiowania usług biznesowych na podstawie wymagao biznesowych. Przedstawiono podstawowe zasady projektowania systemów dla AP oraz zaproponowano zestaw komponentów i usług biznesowych niezbędnych do utworzenia zorientowanego na obywatela systemu dokumentacji. Przedstawiono także różne pomysły na udostępnienie istniejących aplikacji w postaci usług. W dokumencie poruszono także temat wdrażania pakietów aplikacji w skali całego kraju. W ramach koncepcji Ram Interoperacyjności Systemów Administracji Publicznej - RISA (Connected Government Framework CGF) zajmiemy się najważniejszymi problemami związanymi z architekturą techniczną rozwiązao dla sektora publicznego (interoperacyjności techniczną), obszarami, które wymagają szczególnego potraktowania a często, przynajmniej na początkowych etapach projektu, umykają uwadze i możliwymi wariantami rozwiązao oraz opiszemy zalecany sposób rozwiązywania tych problemów. Oprócz omówienia problemów zwykle spotykanych w wielkoskalowych projektach informatycznych i integracyjnych, szczególny nacisk położymy na najważniejsze problemy charakterystyczne dla rozwiązao dla sektora publicznego. Struktura biznesowa RISA Co to jest e-administracja? Proponujemy następującą definicję e-administracji: wszystko, co ma postad cyfrową (produkty, systemy, usługi), jest przydatne do celów świadczenia usług przez administrację, łatwośd dokumentowania, wymiany informacji, dostarczania usług, regulowane przez określone przepisy administracyjne i prawne oraz zasady etyczne. Obecna wartośd dodana e-administracji, to zwiększenie produktywności istniejących systemów AP. W przyszłości jednak e-administracja stanie się szkieletem systemów usług ukierunkowanych na obywatela. Interoperacyjnośd w administracji W serii esejów, kanadyjski profesor Denis J. Protti zawarł następujące spostrzeżenia: Cyfrowa era przeobraża nasz świat. Jak pisał Keeler, dwunastolatka może teraz w swoim telefonie użyd funkcji szybkiego wybierania numeru, aby automatycznie zamówid pizzę tę samą, co zawsze. Komputer pizzerii rozpoznaje numer telefonu osoby zamawiającej, określa jej nazwisko, adres i sprawdza zamówienia złożone w ciągu ostatnich trzech miesięcy. W większości wypożyczalni samochodów czy kampanii lotniczych, pracownik, znając nazwisko i numer klienta, może natychmiast uzyskad dostęp do jego danych adresowych czy informacji na temat preferencji. Również dzisiaj, u progu nowego tysiąclecia, niechęd AP do pełnego wykorzystania możliwości technologii informatycznych sprawia, że nadal nie rozwiązano wielu problemów eliminując model klienta, jako nośnika informacji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 6

7 Pomimo że nowoczesne społeczeostwo zaakceptowało innowacje w innych dziedzinach życia, AP nadal pozostaje w tyle. Większośd komputerów wykorzystywanych w AP służy do prostych operacji księgowych i opracowywania raportów statystycznych. Ze względu na brak odpowiednich systemów wspierających, większośd urzędów nadal posługuje się modelem papierowym, z charakterystycznymi dla niego procesami, oczekiwaniem dostarczenia wszelkiej informacji (potrzebnej w procesie lub nie) oraz dużą dowolnością procedur i sposobu podejmowania decyzji. Mechanizmem sankcjonującym taki sposób działania jest prawo, które uniemożliwia (bez głębokich zmian) wprowadzenie efektywnych sposobów świadczenia usług w oparciu o dane kolekcjonowane w systemie informacyjnym. Dalej Protti stwierdza: Najważniejszą barierą, uniemożliwiającą lepsze wykorzystanie inwestycji w informatyzację AP, jest złożonośd organizacji oraz duża liczba istniejących systemów. Wiele organizacji AP średniej wielkości wykorzystuje setki systemów informatycznych. Każdy z systemów wspiera inny dział organizacji. Systemy te współdzielą bardzo mało informacji, a często działają zupełnie niezależnie od siebie. Z doświadczenia wiadomo, że jeśli ekonomiczna eksploatacja danej inwestycji wymaga integracji danych i procesów obsługiwanych przez różne systemy i jednostki organizacyjne, to reorganizacja procesów, zmiana zakresów odpowiedzialności, przeszkolenie dużej liczby pracowników i znalezienie dodatkowych funduszy jest niesamowicie trudnym przedsięwzięciem. Krajowe stowarzyszenie do spraw technologii informacji zdrowotnej (National Alliance for Health Information Technology) w USA zaproponowało następującą definicję interoperacyjności. Interoperacyjnośd to możliwośd sprawnej, efektywnej i spójnej komunikacji i wymiany informacji pomiędzy różnymi systemami informatycznymi, aplikacjami i sieciami komputerowymi oraz wykorzystywania otrzymanych w ten sposób informacji. Ta definicja jest jak najbardziej adekwatna dla AP. Aby nadrobid te zaległości, niezbędne jest umożliwienie interoperacji istniejących systemów i wzmocnienie ich nową generacją systemów integrujących informację, ukierunkowanych na usługi dla obywateli i przedsiębiorstw. Rozważając zagadnienia integracji i interoperacyjności, szczególną uwagę należy zwrócid na następujące trzy problemy: Integrację semantyczna, integrację danych możliwośd efektywnej i spójnej transmisji szczegółowych informacji. Integrację aplikacji, integrację systemów możliwośd współpracy systemów należących do różnych organizacji i wykorzystywania otrzymanych informacji. Interoperacyjnośd techniczną dostępnośd znormalizowanych funkcji transmisji i prezentacji danych, gwarantujących ochronę danych i niezawodnośd pracy. Integracja semantyczna, integracja danych Niepełne lub niejednoznaczne rozumienie znaczenia danych zgromadzonych w systemie nie pozwala na poprawną integrację systemu. Efekty mogą byd wręcz katastrofalne. Zakładamy, że znamy definicje elementów danych, więc pojęcie obywatel w kontekście jednego systemu powinno znaczyd dokładnie to samo, co w kontekście innego systemu. Jednak nie zawsze jest to prawidłowe założenie. Zanim zaczniemy przesyład dane pomiędzy systemami, musimy upewnid się, ze znaczenie danych jest takie samo w obu tych systemach. Guru branży IT, James Martin, do opisania zamętu i błędów występujących w przypadku niedopasowania i niezrozumienia definicji elementów danych, używa terminu brak integralności semantycznej. W systemach informacyjnych AP istnieje duże prawdopodobieostwo wystąpienia braku integralności semantycznej. Opracowanie definicji terminów, ich znaczeo, przygotowanie szczegółowych modeli danych i słowników wymaga wiele wysiłku. Wiele pracy wymaga także opracowanie zestandaryzowanych terminologii zarówno o bardzo wąskim zakresie, jak i szerokich i pokrywających się wzajemnie. Paradoksalnie, modele i terminologie nie ułatwiają ani integracji, ani interoperacji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 7

8 Poza definicjami i opisem danych istnieją jeszcze dwa główne czynniki, które trzeba wziąd pod uwagę, jeśli integracja ma zakooczyd się powodzeniem sposób identyfikacji danych oraz standardy stosowane do kodowania i przesyłania danych. Najważniejszym problemem jest sposób identyfikowania danych. Najprostszym rozwiązaniem jest przydzielenie każdemu obywatelowi unikalnego numeru (np. PESEL), który będzie służył za podstawowy identyfikator wszystkich danych pacjenta gromadzonych przez system. Takie właśnie rozwiązanie przyjęto w Wielskiej Brytanii w zakresie opieki zdrowotnej, gdzie każdy pacjent na terytorium Anglii posiada numer NHS, wykorzystywany we wszystkich transakcjach dotyczących jego osoby. Co ciekawe, w Szkocji każdy pacjent także posiada swój unikalny numer (numer CHI). Numer ten jest jednak inny niż numery stosowane w Anglii. Ponieważ wielu obywateli Wielkiej Brytanii przynajmniej raz przeprowadziło się z Anglii do Szkocji lub na odwrót, do zebrania pełnej dokumentacji medycznej pacjentów konieczna jest znajomośd obu numerów identyfikacyjnych. Podobne zjawisko występuje także w Europie kontynentalnej. Problemem są również błędy popełniane często podczas podawania numeru. Według niektórych statystyk, odsetek błędów waha się w przedziale 20 40%, co bardzo utrudnia poprawne powiązanie transakcji z obywatelem. W związku ze szczególną wrażliwością danych medycznych, posłużymy się przykładami z dziedziny opieki zdrowotnej. W Stanach Zjednoczonych zespół doradców noszący nazwę Connecting for Health, doszedł do wniosku, że wprowadzenie pojedynczego krajowego identyfikatora pacjenta w nieodległym terminie jest niemożliwe, a i tak jego wdrożenie nie przyniosłoby oczekiwanych korzyści. Stwierdzono, że nie istnieje łatwy sposób na połączenie danych, który nie naruszałby prywatności pacjentów i nie zagrażał integralności danych. Wcześniejsze propozycje wprowadzenia ogólnokrajowego identyfikatora pacjenta wywoływały ogniste spory na temat poufności danych i stanowiły główną przeszkodę w połączeniu dokumentacji medycznej. Główną obawą było to, że identyfikator utworzony na potrzeby służby zdrowia stanie się tak wszechobecny, jak numer ubezpieczenia (Social Security Number), służąc za pojedynczy krajowy identyfikator do wszystkich celów. Jeśli identyfikator pacjenta stałby się kluczem umożliwiającym pobranie informacji z wielu baz danych przechowujących dane poufne, sprawiłoby to, że wszystkie dane osobowe stałyby się bardziej podatne na nadużycia. Dalej zespół stwierdza: W proponowanym przez nas systemie, decyzje na temat łączenia i udostępniania danych podejmowane są na brzegach sieci. Taki system pozwala na łączenie danych za pomocą katalogu wskaźników i udostępnianie danych dostawcom usług medycznych, partycypującym w systemie, ale także łączenie danych bez ich udostępniania albo z udostępnianiem danych jedynie jednostkom o wyższym zakresie uprawnieo, a także daje możliwośd rezygnacji z łączenia danych w określonych sytuacjach możliwe jest na przykład pominięcie danych na temat leczenia odwykowego. Podejście to oparto na założeniu, że to pacjent powinien sam decydowad, które informacje należy udostępnid, a które nie powinny zostad ujawnione. Architektura pozwalająca na podejmowanie decyzji na granicach systemu daje szerokie możliwości wyboru. Istnieje także możliwośd lokalnego ustawienia wyższego poziomu zatwierdzenia, pozwalającego na współdzielenie tylko określonych danych. Dla odmiany, NHS w Wielkiej Brytanii już na wstępie odrzucił system wskaźników, ponieważ nie można zagwarantowad, że zdalny system będzie dostępny w chwili, gdy konieczne będzie pobranie przechowywanych w nim danych. W rezultacie podjęto prace mające na celu zaprojektowanie i utworzenie kręgosłupa centralnej bazy danych, zawierającej dane demograficzne pacjentów i ich dokumentację medyczną. Ponieważ pacjent musi mied prawo do kontrolowania, kto ma dostęp do danych o jego zdrowiu, obecnie trwają gorące spory na temat tego, jakie dane mają trafiad do kręgosłupa. Dyskusja skupia się wokół dwóch modeli model domniemanej zgody zakłada umieszczanie w bazie wszystkich danych, chyba że pacjent się temu sprzeciwi, natomiast model zgody wyrażonej jawnie wymaga od pacjenta jawnego zaakceptowania przesłania części lub całości jego danych do bazy. W grudniu 2007 rozgorzała na nowo dyskusja dotycząca takiego modelu. Minister zdrowia gabinetu cieni Andrew Lansley wyraził następującą opinię: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 8

9 W zakresie bezpieczeostwa danych najbardziej niepokoi nas fakt, że kreując potężną bazę danych powodujemy nie tylko możliwośd katastroficznej ich utraty, ale też potencjąlną możliwośd dla każdego, kto uzyska dostęp i hasła do dostępu do danych obywateli. Szyfrowanie nie jest wystarczającym zabezpieczeniem w przypadku dużej liczby osób posiadających hasła dostępu. Wdrażany obecnie model zcentralizowany uwzględnia tylko korzyści z jego zastosowania, ale nie koniecznie zagrożenia z niego wynikające Komentarze te powstały między innymi na skutek udokumentowanego, dziewięciokrotnego nieuprawnionego dostępu do danych medycznych. Do dyskusji włączył się też prof. Ross Anderson zajmujący się na uniwersytecie Cambridge architekturą bezpieczeostwa, podając przykład utraty w systemie jednego z miast 160 tys. rekordów danych dotyczących dzieci. Zwrócił też uwagę, że w systemach bankowych nie ma takich przypadków, aby pojedyncza osoba miała jednocześnie dostęp do wielu rekordów w pełnym zakresie. Dyskusja ta wywołała wiele reakcji (http://www.ehealth-insider.com/news/3311/immediate_nhs_data_security_review_ordered ) i skłania do zastanowienia się nad celowością całkowitej centralizacji danych obywateli. Problematyczne jest także kodowanie danych. Istnieje wiele systemów i standardów klasyfikacji danych. Niektóre z nich mają określone, specyficzne zastosowania. Sytuacja taka może prowadzid do problemów z translacją oznaczeo, gdy w łączonych systemach używa się różnych standardów kodowania i pomiędzy standardami tymi nie istnieje jednoznaczne powiązanie. Na rynku zaczęły pojawiad się silniki translacji, które oprócz konwersji z jednego standardu na inny pozwalają także na parsowanie opisów pełnotekstowych. Gdy rozwikłaliśmy już zagadnienia klasyfikacji danych, pojawia się inny problem: jakie dane potrzebne są, by opisad określoną sytuację, i w jakiej formie dane te powinny byd przesyłane. Panuje ogólne przekonanie, że najlepszym formatem wymiany informacji jest format XML. Integracja aplikacji, integracja systemów Często wskazywanym zaleceniem jest, by sied była oparta na wspólnej strukturze umów pomiędzy uczestnikami systemu. Sied powinna wykorzystywad zdecentralizowaną, sfederowaną architekturę, która jest oparta na standardach, chroni dane osobowe pacjentów, jest rozwijana stopniowo i nie wymaga stosowania pojedynczego numeru identyfikacyjnego obywatela czy zcentralizowanej bazy danych. Jednym z ważnych skutków wdrożenia proponowanego systemu opartego na sieci łączącej sieci jest fakt, że dane osobowe nadal przechowywane będą tam, gdzie przechowuje się je teraz głównie w gminach lokalnej ewidencji ludności i USC. (Nie należy zapominad o potężnym, acz niezinformatyzowanym zasobie, jakim są księgi parafialne i koniecznośd uspójnienia z systemami AP w kontekście ślubów konkordatowych. W takim modelu dane obywatela składane są z informacji cząstkowych, przechowywanych w różnych źródłach danych w urzędach. Dzięki temu osoby podejmujące decyzje mają dostęp do informacji potrzebnej urzędowi do wydania decyzji. Dostęp do tych informacji mogą mied zarówno urząd, jak i obywatel. Nowym elementem infrastruktury może byd indeks wskaźników do lokalizacji danych na temat obywatela. Indeks taki nie będzie jednak zawierał żadnych informacji na temat zdarzeo związanych z obywatelem żadne dane na temat obywateli nie powinny byd przechowywane centralnie. Decyzje na temat udostępniania informacji muszą byd podejmowane na stykach sieci wspólnie przez obywateli i administrację, czy na przykład opiekę zdrowotną. Każdy przypadek musi byd rozpatrzony indywidualnie. Aby postawione cele były osiągalne, musimy uwzględnid pewne podstawowe, ogólne zasady: potrzebne są ujednolicone metody poprawnej identyfikacji osób z jednoczesną gwarancją zachowania poufności danych, potrzebne są ujednolicone zestawy danych, jednolite standardy bezpiecznej wymiany danych oraz wspólne słowniki kodowania danych, niezbędne jest opracowanie jednolitych zbiorów wartości i zasad, dzięki którym to obywatele będą kontrolowali informacje na swój temat, możliwe będzie bezpieczne RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 9

10 przechowywanie danych wprowadzonych przez administrację i obywateli oraz możliwe będzie przenoszenie informacji w zależności od potrzeb i życzeo każdej z osób. Firma Microsoft zakłada, że poszczególne kraje będą wdrażały rozwiązania e-administracji, które: będą albo nie będą korzystały z pojedynczego systemu identyfikacji obywatela, mogą stosowad różne schematy rozproszenia danych i funkcjonalności od systemów całkowicie rozproszonych, poprzez warianty pośrednie, aż po systemy całkowicie scentralizowane, będą stosowały różne role do uwierzytelniania i autoryzacji użytkowników, będą korzystały z różnych standardów kodowania danych, będą wymieniały dane z wykorzystaniem XML i Web Services. Różne kraje z pewnością będą miały różne wymagania biznesowe i priorytety i bez wątpienia będą chciały zminimalizowad zakupy nowego oprogramowania i infrastruktury, poprzestając na wprowadzaniu modyfikacji i modernizowaniu istniejących zasobów. Aplikacje AP uruchamiane są na różnych platformach i charakteryzują się zróżnicowanymi wymaganiami. Funkcjonalnośd tych aplikacji czasem pokrywa się wzajemnie, a czasem powstają luki. Zwykle są to niezależne aplikacje o niskim poziomie integracji i interoperacyjności. Co więcej, wiele z tych aplikacji to aplikacje stare albo aplikacje oparte na zamkniętych standardach - aplikacje takie trudno zmodyfikowad lub uaktualnid. Integracja aplikacji zapewniania jest przez strukturę biznesową RISA, opracowaną w sposób ukierunkowany na usługi, definiującą zestaw komponentów biznesowych, realizujących określone zadania i usługi, które mogą byd orkiestrowane w celu obsługi różnych procesów biznesowych AP. Wszędzie, gdzie było to możliwe, proponowane jest wykorzystanie istniejącej funkcjonalności i danych. Rys. Wzorzec biznesowy AP RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 10

11 Na ilustracji przedstawiono wzorzec biznesowy dla systemów informatycznych w AP. Wzorce tego typu mogą byd bardzo przydatne. Za ich pomocą można opisywad ogólne rozwiązania powtarzalnych problemów w określonym kontekście. Ujmując to w inny sposób: po co na nowo wynajdywad koło, jeśli ktoś kiedyś zrobił już coś podobnego? Wzorce doskonale sprawdzają się w połączeniu z metodologią tworzenia i implementacji architektur zorientowanych na usługi. Dostępne są wzorce obejmujące aspekty biznesowe, techniczne i integracyjne takich architektur. Na problem ten można spojrzed z dwóch komplementarnych punktów widzenia inne instytucje o podobnym profilu działalności byd może posiadają repozytorium komponentów i usług podobnych do komponentów potrzebnych w opracowywanym właśnie rozwiązaniu. Komponenty te różnią się sposobem implementacji jedne i drugie stosowane są w innym środowisku, z inną infrastrukturą, jednak są bardzo podobne do siebie po względem funkcjonalności i przetwarzanych danych. Uściślijmy powyższą definicję wzorzec biznesowy opisuje możliwą do wielokrotnego wykorzystania metodę opracowania rozwiązania danego problemu biznesowego, zwykle ujętego w postaci procesu biznesowego. Wzorzec to propozycja rozwiązania oparta na wcześniejszych, udanych rozwiązaniach takich samych lub podobnych problemów biznesowych. Wzorzec można traktowad, jako szablon architektury rozwiązania biznesowego. Komponenty są niezależne od platform i technologii. Ich funkcjonalnośd jest niezależna od pozostałych komponentów, każdy komponent odpowiada za swoje własne dane. Każdy obejmuje definicję określonych cech charakterystycznych (funkcjonalności i danych). Funkcje i dane komponentów udostępniane są za pośrednictwem zdefiniowanych usług. Metodologia oparta na komponentach pozwala na utworzenie wysoce zmodularyzowanej platformy integracyjnej oraz oprócz dostarczenia specyfikacji programistycznej określa także sposoby definiowania funkcjonalności, zakresu usług i sposobu współpracy z komponentami opracowywanymi przez innych producentów i komponentami już istniejącymi. Mając do dyspozycji takie repozytorium komponentów i usług, można wyobrazid sobie finalną postad zorientowanej na usługi architektury systemu dla AP. Broker RISA Głównym elementem architektury referencyjnej jest broker RISA, umożliwiający udostępnienie między innymi następujących usług: usługi zarządzania tożsamością, usługi poufności i bezpieczeostwa danych, usługi prezentacyjne i punktu dostępu, usługi publikacji i lokalizacji usług, usługi elektronicznej dokumentacji medycznej, usługi domeny AP, usługi rejestrowe, usługi integracyjne, usługi danych, usługi zarządzania systemem, usługi komunikacyjne. Szczegółowy opis poszczególnych usług znajduje się w drugiej części opracowania. W części tej poruszono także następujące zagadnienia: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 11

12 Sposoby wdrażania opis różnych sposobów wdrażania rozwiązao, które warto wziąd po rozwagę implementując wzorcową architekturę e-administracji z uwzględnieniem zmieniających się wymagao i uwarunkowao prawnych. Wydajnośd i skalowalnośd zagadnienia związane z tworzeniem rozwiązania spełniającego wymagania dotyczące dostępności, czasu reakcji i wydajności. Opisano techniki planowania mocy obliczeniowej systemu oraz implementowania skalowalnej architektury sprzętowej i programistycznej. Zarządzanie i eksploatacja analiza problemów związanych z eksploatacją i zarządzaniem rozwiązaniem, zapewnieniem pomocy technicznej i wsparcia oraz dostarczaniem usług. Wymagania biznesowe dotyczące warstwy prezentacyjnej, określone dla interfejsu użytkownika i procesów użytkowników, zaspakajane są przez funkcjonalnośd usług zarządzania tożsamością, usług utrzymania poufności i bezpieczeostwa danych oraz usług prezentacji i punktu dostępu, zdefiniowanych ramach platformy technicznej. Analogicznie, wymagania dotyczące procesów biznesowych zaspakajane są przez usługi publikacji i lokalizacji usług, usługi elektronicznej dokumentacji spraw obywateli, usługi domeny AP, usługi rejestrowe i usługi integracyjne, zapewniane przez platformę techniczną. Wymagania związane z dostępem do danych zaspakajane są przez funkcjonalnośd warstwy dostępu do danych. Usługi biznesowe, zdefiniowane w postaci komponentów w strukturze biznesowej RISA, działają w oparciu o platformę zapewnioną przez strukturę techniczną RISA. W połączeniu z brokerem RISA zaspakajają wymagania biznesowe domeny usług AP. Podsumowując firma Microsoft dostrzega możliwośd zbudowania sprawnego systemu usług AP w oparciu o stabilne podstawy. Platforma RISA zapewnia tę sprawnośd, rozgraniczając bardziej ulotne procesy użytkowników i procesy biznesowe od stabilnych usług biznesowych i usług danych. Ogniwem łączącym ulotne i stabilne części systemu jest broker RISA. Wymagania systemów administracji Zważywszy na niezbyt zachęcający wstęp, typowe biznesowe wymagania nowej generacji systemów e-administracji powinny obejmowad: opracowanie systemu przechowywania pełnej (obejmującej całe życie) dokumentacji obywateli, umożliwienie obywatelom dostępu do ich własnej dokumentacji, udostępnienie portali komunikacji z AP i bram do informacji na temat usług AP, wdrożenie nowych, spójnych, opartych na rolach interfejsów użytkownika pozwalających na pobieranie danych z aplikacji wykorzystywanych obecnie, zachowanie kontekstu obywatela w różnych usługach, zachowanie poufności danych na temat obywatela, w tym anonimizowanie (depersonalizacja) i pseudoanonimizowanie danych udostępnianych poza właściwą relacją urząd-obywatel, zgodnośd z lokalnymi przepisami i standardami w zakresie zgody i zezwoleo na udostępnianie danych osobowych, stosowanie XML, Web Services oraz bezpiecznych i efektywnych standardów kodowania danych, zarządzanie prawidłowymi relacjami urząd-obywatel i stosowanie ich, budowanie i monitorowanie ścieżek procesów AP, RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 12

13 definiowanie i zarządzanie procesami administracyjnymi, zarządzanie informacją i jej obiegiem, tworzenie interfejsów i udostępnienie na powyższych zasadach funkcjonalności wykorzystywanych obecnie aplikacji w postaci usług. Powyższa lista z pewnością nie jest kompletna, a przedstawione na niej wymagania nie zostały uporządkowane w żaden istotny sposób (na przykład według znaczenia). Firma Microsoft jest przekonana, że najlepszym sposobem wdrożenia nowej funkcjonalności w oparciu o istniejący zasób aplikacji jest wykorzystanie architektury zorientowanej na usługi. Architektura taka pozwala na udostępnienie wykorzystywanych obecnie aplikacji w postaci usług ich funkcjonalnośd i zgromadzone w nich dane mogą zostad udostępnione w określonej formie konsumentom zewnętrznym w odpowiedzi na przesłane przez nich zapytania. Zapytania i odpowiedzi są przedmiotem kontraktu, który określa zagadnienia takie jak dostępnośd, dokładnośd oraz reguły związku, na przykład sposób uwierzytelniania i warunki zachowania poufności. Typowe wymagania techniczne, umożliwiające utworzenie platformy informatycznej pozwalającej na realizację wymienionych wyżej wymagao biznesowych, to: otwarte standardy składowania i transmisji danych, w tym standardy technologii zorientowanych na usługi na przykład technologia usług Web Service, bezpieczne operacje obsługi danych i komunikacji, zapewniające mechanizmy uwierzytelniania i autoryzacji, a także funkcje utrzymania ciągłości pracy i zarządzania danymi, interoperacyjnośd z różnymi platformami, pozwalająca na łączenie różnorodnych systemów i źródeł danych w spójne, łatwo kontrolowane środowisko, niezawodne i bezpieczne metody komunikacji, pozwalające na elastyczną i sprawną orkiestrację procesów biznesowych oraz łączenie niezależnych wysp automatyzacji, integracja ze starszymi systemami, czyli zastosowanie otwartych standardów do komunikacji z istniejącymi systemami w różnych domenach, opartymi na różnych platformach, mechanizmy zachowania poufności i tajności danych, umożliwiające obywatelom kontrolowanie udostępniania ich danych, określanie możliwych obszarów wykorzystania tych danych oraz wskazywanie ról uprawnionych, którym dane te można udostępnid, zarządzane środowiska informatyczne odporne na awarie i wyposażone w funkcje samodzielnego monitorowania, a więc zapewniające wysoką solidnośd i niezawodnośd, wydajnośd zarówno pod względem czasu odpowiedzi, jak i łatwości obsługi, pełna dostępnośd 24 godziny na dobę, 7 dni w roku, 365 dni w roku, uzyskiwana dzięki stosowaniu sprawdzonych konfiguracji sprzętowych i rygorystycznie przetestowanego oprogramowania, systemy gorącej rezerwy i metody odtwarzania systemu po awariach, pozwalające łagodzid skutki awarii spowodowanych czynnikami zewnętrznymi. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 13

14 Powszechne problemy dotyczące architektury W ramach koncepcji Ram Interoperacyjności Systemów Administracji Publicznej -RISA (Connected Government Framework CGF) zajmiemy się najważniejszymi problemami związanymi z architekturą techniczną rozwiązao dla sektora publicznego, obszarami, które wymagają szczególnego potraktowania a często, przynajmniej na początkowych etapach projektu, umykają uwadze i możliwymi wariantami rozwiązao oraz opiszemy zalecany sposób rozwiązywania tych problemów. Oprócz omówienia problemów zwykle spotykanych w wielkoskalowych projektach informatycznych i integracyjnych, szczególny nacisk położymy na najważniejsze problemy charakterystyczne dla rozwiązao dla sektora publicznego. Chcąc uświadomid architektom złożonośd projektu, potencjalne problemy i dostępne opcje, zamieściliśmy tu ogólny opis zagadnieo związanych z architekturą techniczną, niezależny od specyficznych technologii czy implementacji. Bardziej szczegółowe zalecenia dotyczące rozwiązywania tych problemów zamieszczono w sekcjach Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego oraz Elementy składowe typowego rozwiązania integracyjnego dla sektora publicznego w dalszej części tego dokumentu. W witrynie MSDN dostępne są szczegółowe wskazówki firmy Microsoft, dotyczące architektur i wzorców projektowych dla korporacyjnych rozwiązao integracyjnych (patrz dział Integration Patterns pod adresem Pomimo że wzorce te opisywane są w kontekście integracji korporacyjnej, to niektóre z nich (na przykład Gateway, Message Broker) nadają się do bezpośredniego zastosowania w rozwiązaniach integracyjnych dla sektora publicznego. Złożonośd zagadnienia Wiele zagadnieo związanych z usługami dla sektora publicznego dotyczy problemu ich złożoności, w związku z czym konsolidacja i uproszczenie wynikające z unifikacji wspólnej infrastruktury, wspierającej te usługi, mogą okazad się bardzo korzystne. Zapewnienie dostępu do stale rozszerzającego się zakresu funkcji Inicjatywy dla sektora publicznego zwykle powstają, jako niewielkie projekty z ograniczonym zestawem funkcji, a następnie są stopniowo rozwijane i obejmują coraz szerszą funkcjonalnośd. Związanych jest z tym kilka specyficznych problemów, wynikających z różnorodności typów systemów i z rosnącej liczby tych systemów. Systemy zaplecza (back-end) świadczące usługi publiczne pracują na wielu różnych platformach i korzystają z różnych technologii. Stopniowe wdrażanie różnorodnych usług jest scenariuszem typowym ze względu na stały rozwój i ewolucję inicjatyw dla sektora publicznego. Zaprojektowanie i wdrożenie wspólnej infrastruktury, zdolnej do efektywnej obsługi rosnącej funkcjonalności systemu, jest dużym wyzwaniem, wykraczającym znacznie poza problemy spotykane w tradycyjnych systemach komercyjnych. Efektywna platforma dla sektora publicznego wdrożona i działająca w warunkach produkcyjnych powinna byd dostatecznie elastyczna, by można było w łatwy sposób wprowadzad nowe usługi, nowe transakcje i dostosowywad platformę do zmieniających się wymagao i to bez zmian w kodzie podstawowego rozwiązania, a najlepiej bez powodowania przestojów innych usług. Wdrażanie nowych usług powinno byd standardową funkcją systemu, odpowiednio uwzględnioną w projekcie rozwiązania, a nie rzadkim, wymagającym specjalnego traktowania przypadkiem. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 14

15 Różnorodnośd kanałów dostępu Istnieje wysokie prawdopodobieostwo, że nawet jeśli kanały dostępu do pierwotnego zestawu usług zostaną dobrze zdefiniowane w początkowym etapie projektu i właściwie przygotowane w pierwszej implementacji, to po pewnym czasie i tak pojawi się potrzeba obsługi nowych kanałów dostępu, takich jak kioski multimedialne, interaktywna telewizja czy urządzenia przenośne. Dobrze zaprojektowana platforma integracyjna, zapewniająca spójny sposób świadczenia usług, powinna umożliwiad dodawanie nowych kanałów dostępu poprzez jednorazowe zmodyfikowanie centralnego huba bez konieczności modyfikowania poszczególnych usług. Szerokie wsparcie różnorodnych platform klienckich Projekty dla administracji publicznej są często przedmiotem znacznie bardziej ścisłych regulacji i ograniczeo niż typowe systemy komercyjne. Zapewnienie niedyskryminującego dostępu do usług administracji publicznej z szerokiej gamy platform klienckich jest często wymaganiem jasno sprecyzowanym w przepisach prawnych, a przynajmniej pożądanym z politycznego punktu widzenia. Może się to wiązad z obsługą różnych typów i wersji sprzętu, systemów operacyjnych i oprogramowania przeglądarkowego. Właściciel systemu komercyjnego może podjąd uzasadnioną ekonomicznie decyzję wykluczenia niewielkiej części potencjalnych klientów poprzez ograniczenie zakresu obsługiwanych platform. Takie postępowanie niewiele zmniejszając potencjalny przychód pozwala uzyskad znaczne oszczędności, wynikające z mniejszego zakresu prac projektowych i programistycznych nad systemem i mniejszej liczby niezbędnych do wykonania testów. Dostawcy usług publicznych dla obywateli i przedsiębiorstw mają w tym zakresie mniejszą swobodę działania i często muszą ponosid znaczne koszty związane z uwzględnieniem różnych platform, by nie wykluczyd i nie dyskryminowad nawet niewielkich grup społecznych. Jest niezwykle istotne, by ograniczenia i wymagania związane z obsługą szerokiego spektrum platform klienckich zostały uwzględnione już na etapie projektowania architektury platformy integracyjnej dla sektora publicznego uwzględnienie tych warunków na dalszych etapach projektu może byd bardzo kosztowne, a nawet niemożliwe. Obsługa wielu języków i wszechstronny dostęp W wielu krajach zapewnienie wielojęzycznego dostępu do usług administracji publicznej jest wymaganiem prawnym, a przynajmniej należy do dobrych zwyczajów. W przypadku komunikacji z przedstawicielstwami Komisji Europejskiej jest to zwykle niezbędne. Uwzględnienie tego warunku już na początku realizacji projektu jest istotne, ponieważ wymaganie to ma duży wpływ na architekturę rozwiązania. Należy też mied na uwadze: Zapewnienie różnych poziomów obsługi wielojęzyczności, w tym akceptowanie danych wielojęzycznych, zróżnicowanie skryptów i stron (na przykład do obsługi języków zapisywanych od prawej do lewej lub z użyciem znaków diakrytycznych). Problemy dotyczące przetwarzania i przechowywania danych, które mają wpływ na stosowany model danych i wymagają szczególnej uwagi podczas pisania kodu aplikacji. Wymagania zaprojektowania w pełni wielojęzycznego interfejsu użytkownika, w którym wszystkie łaocuchy tekstowe i komunikaty są odseparowane od kodu. W takim wypadku do pełnej obsługi języków znakowych pisanych od prawej do lewej niezbędne jest przygotowanie alternatywnych plików graficznych i innych treści. Należy także wziąd pod uwagę, że ten sam tekst w różnych językach może mied różną długośd. Witryny i usługi administracji publicznej są często objęte bardzo rygorystycznymi wymaganiami dotyczącymi przystępności (accessibility) dla osób o ograniczonej sprawności znacznie większymi niż w przypadku zwykłych witryn komercyjnych, gdzie przystępnośd jest pożądana w celu poszerzenia grupy odbiorców, ale jej brak ma jedynie niewielki wpływ na komercyjny efekt RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 15

16 przedsięwzięcia. Dla witryn i usług administracji publicznej przystępnośd jest zwykle wymagana prawem, a na dodatek jest ważnym problemem politycznym. Zajęcie się problemem przystępności już po zaprojektowaniu systemu jest trudne, drogie, a często niewykonalne. Przystępnośd już od samego początku powinna byd podstawowym założeniem projektu. W części Odsyłacze, listy kontrolne i dalsze informacje tego opracowania zamieszczono listy kontrolne dotyczące tworzenia aplikacji łatwych w lokalizacji oraz listę odsyłaczy do bieżących regulacji prawnych dotyczących przystępności, do inicjatyw (w tym także do wytycznych w zakresie przystępności, opracowanych przez organizację World Wide Web Consortium W3C), do programów syntezy mowy odczytujących teksty z ekranu komputera oraz do specjalnych przeglądarek, narzędzi do testowania przystępności aplikacji oraz do innych przydatnych zasobów. Obsługa wielu różnych poświadczeo tożsamości Korzystanie z różnych usług administracji publicznej zwykle wymaga podania specyficznego dla danej usługi identyfikatora użytkownika na przykład numeru PESEL, identyfikatora NIP, identyfikatora dostawcy - REGON itp. Gdy kontrola dostępu jest implementowana niezależnie dla każdej z usług, umożliwienie elektronicznego dostępu do wielu usług oznacza utworzenie odrębnych, niezależnych dla każdej usługi poświadczeo tożsamości. Użytkownicy muszą wtedy pamiętad wiele identyfikatorów i zarządzad wieloma hasłami. Stanowi to problem nawet w przypadku często wykorzystywanych usług, takich jak bankowośd elektroniczna. W przypadku usług administracji publicznej, próba przypomnienia sobie hasła czy identyfikatora do każdej z usług może sprawiad jeszcze większe trudności. Wprowadzenie platformy dla sektora publicznego, zapewniającej dostęp do wielu usług na podstawie pojedynczego zestawu poświadczeo tożsamości, jest niezwykle istotne dla upowszechnienia się usług dla tego sektora. Udostępnienie każdej z usług dla sektora publicznego w spójny i bezpieczny sposób Udostępnienie dowolnej usługi dla sektora publicznego za pomocą kanałów elektronicznych wymaga znacznych nakładów i wysiłków konieczne jest spełnienie wszystkich wymagao w zakresie bezpieczeostwa, dostępności i niezawodności. W niektórych krajach obowiązują rygorystyczne uregulowania prawne i każdy system administracji publicznej przed podłączeniem do Internetu musi przejśd obowiązkowy proces certyfikacji. Tworzenie dostępu elektronicznego dla każdej usługi z osobna prowadzi do powielenia tych wysiłków. Oznacza to stratę czasu, zasobów i niepotrzebne angażowanie specjalistów, którzy nie zawsze są dostępni w agencjach świadczących te usługi. Problem staje się szczególnie istotny, gdy usługi elektroniczne zaczynają byd tak popularne, że muszą byd świadczone nie tylko przez początkową grupę dużych jednostek administracji, które mają odpowiednią wielkośd, widocznośd i wpływy polityczne potrzebne do zabezpieczenia sobie niezbędnych zasobów. Mniejsze organizacje, takie jak administracja samorządowa, nie są w stanie samodzielnie pokryd początkowych kosztów świadczenia usług w sposób elektroniczny. Zidentyfikowanie najbardziej problematycznych elementów systemu dla sektora publicznego i jednokrotne zaimplementowanie ich w powszechnej platformie dla sektora publicznego, współdzielonej przez wszystkie usługi, pozwala zapewnid wysoką jakośd, spójnośd i bezpieczeostwo tworzonych rozwiązao oraz uzyskad znaczące oszczędności. Zarządzanie tożsamością Zaprojektowanie i wdrożenie efektywnego i bezpiecznego systemu zarządzania tożsamością dla usług dla sektora publicznego nie jest zadaniem trywialnym, zważywszy że liczba potencjalnych użytkowników może sięgad setek tysięcy. Ze względu na koszty i złożonośd problemu, jest oczywiste, że zarządzanie tożsamością powinno zostad zaimplementowane w postaci pojedynczego systemu, współdzielonego przez wszystkie usługi. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 16

17 Pojedyncze poświadczenia do dostępu do wielu usług Wprowadzenie możliwości wykorzystania pojedynczego poświadczenia tożsamości do dostępu do wielu usług (jak zostało to opisane wcześniej w rozdziale Obsługa wielu różnych poświadczeo tożsamości) wymaga zbudowania powszechnej infrastruktury uwierzytelniania użytkowników, wspólnej dla wszystkich usług wchodzących w skład systemu. Warto w tym miejscu zauważyd, że stosowanie jednego zestawu poświadczeo tożsamości do dostępu do wielu usług wcale nie oznacza, że do dostępu do wszystkich usług musi byd stosowany jeden i ten sam zestaw poświadczeo. Mimo oczywistych zalet dostępu do wielu usług z wykorzystaniem jednego zestawu poświadczeo, platforma powinna pozostawiad użytkownikom swobodę wyboru usług, do których chcą uzyskiwad dostęp na podstawie określonego zestawu poświadczeo, i umożliwiad korzystanie z wielu niezależnych zestawów poświadczeo. Jest to zgodne z zasadami przedstawionymi w artykule The Laws of Identity, dostępnym pod adresem Spójne logowanie a pojedyncze logowanie Gdy użytkownicy uzyskali już możliwośd logowania się do rosnącej liczby usług za pomocą jednego zestawu poświadczeo, to zarówno dla użytkowników, jak i dostawców usług istotne staje się, by koszty i nakłady pracy, związane z umożliwieniem dostępu do każdej kolejnej usługi, utrzymad na jak najniższym poziomie. Dostęp do poszczególnych usług na podstawie jednego zestawu poświadczeo może byd realizowany na różnych poziomach między innymi poprzez spójne logowanie lub pojedyncze logowanie. Spójne logowanie to forma najprostsza dostęp do poszczególnych usług realizowany jest na podstawie pojedynczego zestawu poświadczeo, ale użytkownik nadal musi meldowad się do każdej usługi z osobna. Co prawda użytkownicy muszą pamiętad tylko jeden zestaw poświadczeo, ale za każdym razem, gdy chcą korzystad z innej usługi, muszą się ponownie zameldowad (jednak w niektórych przypadkach taki dodatkowy etap logowania może okazad się pożądany). Jednym ze sposobów implementacji spójnego logowania jest utrzymywanie przez każdą niezależną usługę własnej bazy danych uwierzytelniających. Bazy danych wzajemnie synchronizują swoją zawartośd, dzięki czemu poszczególne kopie poświadczeo logowania są identyczne. Poszczególne usługi zamiast implementowad własne mechanizmy uwierzytelniania mogą korzystad z pojedynczej, wspólnej usługi uwierzytelniania. Zakładana spójnośd uzyskiwana jest automatycznie, ponieważ poświadczenia użytkowników przechowywane są tylko w jednej lokalizacji. Bardziej zaawansowane rozwiązanie umożliwia użytkownikom przezroczysty dostęp do wielu usług po jednokrotnym zalogowaniu. Oznacza to prostotę korzystania z systemu przez użytkowników i pozwala na agregowanie usług. Dobrymi przykładami takich rozwiązao są portale, które komunikując się w tle z różnymi usługami zapewniają użytkownikom możliwośd korzystania z wielu usług jednocześnie. Odwzorowywanie tożsamości Zastosowanie pojedynczego zestawu poświadczeo do dostępu do wielu usług jest niewątpliwie użyteczne, ale rozwiązuje tylko jedną częśd problemu ułatwia użytkownikowi korzystanie z systemu. Systemy docelowe nadal korzystają z własnych, specyficznych identyfikatorów, wyróżniających użytkownika w kontekście danego systemu. Identyfikatory te są niezbędne do prawidłowego rozpoznania użytkownika i poprawnej pracy systemu i zwykle nie mają żadnego znaczenia poza kontekstem określonej usługi. Większośd obecnie wykorzystywanych systemów korzysta z takich specyficznych identyfikatorów, w związku z tym udostępnianie przez wspólną platformę dla sektora publicznego funkcji odwzorowania pojedynczego zestawu poświadczeo na odpowiednie identyfikatory, specyficzne dla poszczególnych usług, jest niezwykle istotne dla zapewnienia efektywnego dostępu do rosnącej liczby usług. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 17

18 W wielu krajach nie wprowadzono uniwersalnego krajowego identyfikatora dla obywateli, w związku z czym każda usługa wykorzystuje własne, specyficzne identyfikatory. Pewne ograniczenia istnieją nawet w krajach, w których wszyscy obywatele posiadają unikatowe identyfikatory i systemy administracji publicznej mogą w oparciu o nie identyfikowad użytkownika. Na przykład w sytuacji, gdy jedna osoba może mied wiele relacji z daną usługą (np. kontakt z wieloma urzędami), identyfikator obywatela nie pozwala na rozróżnienie poszczególnych relacji, w związku z czym potrzebny jest identyfikator specyficzny dla danej usługi. W przypadku bardziej złożonych relacji (na przykład takich jak opisane w następnym rozdziale Trudne przypadki) koniecznośd odwzorowania pojedynczego zestawu poświadczeo na odpowiedni, właściwy w danym kontekście identyfikator, jest jeszcze bardziej oczywista. Nawet jeśli bezpośrednie zastosowanie numeru identyfikacyjnego obywatela jest technicznie możliwe, mogą pojawid się wątpliwości dotyczące poufności danych. Takie stosowanie numeru identyfikacyjnego stoi także w sprzeczności z podstawowymi zasadami zarządzania tożsamością. Chodzi głównie o zasady minimalnego zakresu ujawniania niezbędnych informacji oraz tożsamości ukierunkowanej, opisane w dokumencie The Laws of Identity pod adresem W czasie obsługi interakcji użytkownika z usługą należy uwierzytelnid użytkownika (jeśli to możliwe na podstawie pojedynczego zestawu poświadczeo), a następnie przekazad usłudze jedynie specyficzne dla niej identyfikatory dotyczące tej interakcji. Nie należy ujawniad głównego identyfikatora użytkownika, który mógłby zostad użyty do skorelowania tożsamości użytkownika w poszczególnych usługach. W przypadkach, gdy taka korelacja jest korzystna i potrzebna (na przykład w celu zapewnienia lepszej obsługi użytkowników i agregacji usług), musi ona zostad przeprowadzona jawnie i za zgodą użytkownika. Korelowanie informacji o użytkowniku bez uzyskania zgody tego użytkownika jest niedozwolone raz ze względu na dobre praktyki, dwa na uwarunkowania prawne. W niektórych krajach, takich jak Francja, Portugalia czy Wielka Brytania, tworzenie takich korelacji jest zabronione prawem. Zapewnienie niezawodnego, bezpiecznego, jednokierunkowego odwzorowania tożsamości użytkownika na specyficzne dla usług i właściwe dla kontekstu interakcji identyfikatory to podstawowe zadanie, realizowane przez powszechną infrastrukturę dla sektora publicznego, współdzieloną przez wszystkie usługi wchodzące w skład systemu. Trudne przypadki W przypadku usług dla sektora publicznego dośd powszechne są sytuacje, których nie da się obsłużyd prostymi, tradycyjnymi metodami zarządzania dostępem. O ile zasada jeden użytkownik, jeden zestaw poświadczeo, dostęp do wielu usług to dobra podstawa, istnieją jednak sytuacje, w których potrzebne są bardziej złożone relacje pomiędzy użytkownikami a usługami docelowymi (np. jeden do wielu lub wielu do wielu): Wiele osób, z których każda posiada własny zestaw poświadczeo, uzyskuje dostęp do tej samej usługi docelowej w tym samym kontekście (innymi słowy, każda z tych osób korzysta z tego samego identyfikatora specyficznego dla usługi). Sytuacja taka ma miejsce w przypadku urzędników określonej organizacji czy pracowników przedsiębiorstwa lub korporacji. Odpowiednio umocowany reprezentant, korzystający z pojedynczego zestawu poświadczeo, uzyskuje dostęp do jednej usługi docelowej, działając w imieniu wielu klientów w różnych kontekstach, a więc używa różnych identyfikatorów specyficznych dla usługi. Ten typ uwierzytelniania dostępu można uzyskad poprzez powiązanie poświadczeo tożsamości określonej osoby z usługą docelową. Każdorazowe uzyskanie dostępu będzie wymagało podania informacji na temat kontekstu. Istotne jest także zapewnienie niezaprzeczalności (nonrepudiation) i możliwości śledzenia realizowanych transakcji, a także inspekcji wykorzystywanych poświadczeo. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 18

19 Utrzymywanie takich powiązao, a także śledzenie ich wykorzystania (o ile nie zmieniają się bardzo często) można realizowad w ramach wspólnej infrastruktury dla sektora publicznego, współdzielonej przez wszystkie usługi, zamiast w każdej usłudze z osobna. Rozwiązanie takie ma dwie zalety. Po pierwsze, implementowane jest tylko jednokrotnie, po drugie nie wymaga modyfikowania istniejących systemów, których dostosowanie do nowych potrzeb może byd utrudnione. Początkowa identyfikacja użytkowników Bezpieczne udostępnianie usług uzależnione jest od rozwiązania problemu identyfikacji początkowej, to jest od przydzielania poświadczeo tożsamości konkretnym osobom. Prawidłowa identyfikacja początkowa jest niezwykle istotna dla ogólnego bezpieczeostwa i udanego wdrożenia rozwiązania. W przypadku platformy dla sektora publicznego, gdzie liczba użytkowników może sięgad wielu milionów, a każdy z użytkowników korzysta z rosnącej liczby usług, niezwykle istotne jest przeprowadzenie tej identyfikacji w sposób efektywny, skalowalny i wystarczająco elastyczny, by uwzględnid szeroki zakres wymagao. Istnieje kilka sposobów początkowej identyfikacji użytkownika: Scentralizowany pojedynczy, zunifikowany mechanizm początkowej identyfikacji użytkowników. Po początkowym zidentyfikowaniu użytkownika i przydzieleniu mu poświadczeo tożsamości, wszystkie kolejne relacje z różnymi usługami inicjowane są na podstawie tej jednokrotnej identyfikacji początkowej, co implikuje, że wszystkie usługi opierają się na zunifikowanej procedurze identyfikacji początkowej i ufają jej. Zdecentralizowany (związany z usługami) relacje pomiędzy użytkownikiem a poszczególnymi usługami nawiązywane są indywidualnie i są niezależne od relacji z innymi usługami. W takim wypadku nie występują związki zaufania ani zależności pomiędzy usługami. Poszczególne usługi mogą definiowad własne, odpowiednie i różne reguły i procedury identyfikacji początkowej. Zaufanie ukierunkowane poszczególne usługi mogą opierad się na procedurach identyfikacyjnych innych usług. Inaczej mówiąc, mogą ufad tym usługom. Model ten jest podobny do modelu scentralizowanego, pozwala jednak na tworzenie wielu różnych związków zaufania. Model scentralizowany może wydawad się atrakcyjny, prostszy i bardziej efektywny, istnieje jednak kilka przeszkód utrudniających udaną implementację tego modelu w rozwiązaniach dla sektora publicznego: Model ten wymaga istnienia nadrzędnego organu, któremu ufają i będą ufad wszystkie inne usługi i który będzie prowadził scentralizowany proces identyfikacji. Nawet jeśli dostawcy początkowego zestawu usług uzgodnią odpowiadający im wspólny proces identyfikacji początkowej, to nie ma gwarancji, że powstające w przyszłości usługi będą pasowały do tego modelu. Wymagany poziom szczegółowości i niezawodności identyfikacji początkowej jest różny dla różnych kategorii usług, dlatego pojedyncza uniwersalna procedura identyfikacji musi gwarantowad najwyższy poziom pewności, jaki może byd wymagany przez dowolną z usług. Może to byd zbyt uciążliwe dla użytkowników, którzy korzystają wyłącznie z usług o niższych wymaganiach co do identyfikacji początkowej. Model zdecentralizowany (związany z usługami) daje większą elastycznośd i pozwala na uwzględnienie szerszego zakresu wymagao, włącznie z wymaganiami zmiennymi w czasie i nieznanymi podczas pierwotnej implementacji systemu. Jeśli identyfikacja początkowa zostanie oparta na podstawowej, wspólnej strukturze, pozwalającej na stosowanie wymiennych reguł, definiowanych przez poszczególne usługi, rozwiązanie może łatwo ewoluowad można w nim wprowadzad dodatkowe wymagania dla nowych usług bez wpływu na działanie usług już istniejących. Jeśli liczba oferowanych przez system usług jest znaczna, taki zdecentralizowany, związany z usługami model jest jedynym realnym rozwiązaniem. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 19

20 Szczegółowe praktyczne wskazówki dotyczące implementacji efektywnego, zdecentralizowanego modelu identyfikacji początkowej można znaleźd w rozdziałach poświęconych zarządzaniu tożsamością w sekcjach Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego oraz Elementy składowe typowego rozwiązania integracyjnego dla sektora publicznego niniejszego opracowania. Model zdecentralizowany, opisany w sekcji Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego dzięki elastyczności wymiennych modułów uwierzytelniania początkowego pozwala także na implementację modelu zaufania ukierunkowanego, który może obejmowad sprawdzenie, czy dany użytkownik został wcześniej zidentyfikowany przez inną usługę. Problemy integracji W przypadku inicjatyw dla sektora publicznego prawdopodobnie największym wyzwaniem jest efektywna integracja pośredniczącego w kontaktach z klientami huba ze stale rosnącą liczbą specjalizowanych systemów, specyficznych dla poszczególnych usług. Podczas gdy nawet najbardziej złożone systemy komercyjne muszą zapewnid integrację ze skooczonym, dobrze znanym już na początkowych etapach projektu zestawem systemów, przed rozwiązaniami z zakresu sektora publicznego stoi zwykle znacznie trudniejsze zadanie. Muszą one zapewnid platformę umożliwiającą integrację większych i w pewnym zakresie nieznanych zestawów usług, które są dostępne obecnie albo będą dostępne dopiero w przyszłości. Ułatwienie zadao integracji oraz zapobieganie przerwom w dostępności istniejących usług to ważny warunek udanego wdrożenia rozwiązania dla sektora publicznego. Różne możliwości integracji W kolejnych sekcjach tego dokumentu opisano różne możliwe sposoby integrowania odrębnych systemów (działających na różnych platformach z różnymi zestawami oprogramowania). Wybór najlepszego wariantu zależy od różnych ograniczeo, wymaganego typu integracji i współpracy oraz od innych czynników. Uwaga szczegółowe wytyczne Microsoft, dotyczące tego zagadnienia, można znaleźd w dokumencie Integration Patterns pod adresem Integracja natywna Warunkiem natywnej integracji dwóch systemów jest ich kompatybilnośd na odpowiednio wysokim poziomie (patrz sześd poziomów podstawowego modelu interoperacyjności wymienionych na początku tego opracowania). Innymi słowy, infrastruktura i systemy sieciowe, funkcje dostępu do danych, model usługowy i komponentowy, sposoby integracji procesów, implementacja systemu zabezpieczeo i zarządzania tożsamością oraz sposoby zarządzania systemem muszą byd wzajemnie kompatybilne w obu integrowanych rozwiązaniach. Jeśli obydwa systemy mogą współpracowad ze sobą, to do ich integracji byd może potrzebny będzie tylko minimalny nakład pracy. Do niedawna taka integracja była możliwa tylko wtedy, gdy obydwa systemy pracowały na tej samej platformie i oparte były na kompatybilnych: oprogramowaniu, modelu obiektowym i narzędziach programistycznych. Obecnie dzięki architekturze zorientowanej na usługi (SOA) taką interoperacyjnośd można uzyskad pomiędzy znacznie bardziej zróżnicowanymi platformami, o ile tylko są one zgodne z ogólnie przyjętymi standardami. Natywna integracja to idealne rozwiązanie dla systemów sektora publicznego. Należy dążyd do niego zawsze, gdy jest to możliwe, ponieważ pozwala na zminimalizowanie nakładów pracy niezbędnych do pełnej integracji. Architektura powinna jednak uwzględniad także przypadki, w których ograniczenia istniejących lub przyszłych systemów, niewspierających lub niemogących wspierad standardowych interfejsów SOA (takich jak usługi Web Services), mogłyby uniemożliwid integrację. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 20

21 Adaptery w hubie Jedną z typowych metod integrowania różnorodnych systemów, które byd może pracują na różnorodnych platformach, jest wbudowanie odpowiednich adapterów w system centralny, czyli hub. Każdy z adapterów zapewnia dostęp do innego typu systemu zdalnego. Podejście to przedstawiono na ilustracji 1. hub zawiera cztery adaptery, które z wykorzystaniem czterech technologii integracyjnych zapewniają dostęp do czterech usług. Ilustracja 1. Integracja różnych systemów poprzez zastosowanie adapterów wewnątrz huba Zaletą tego rozwiązania jest to, że nie trzeba wprowadzad zmian w systemach zdalnych to hub wykonuje wszystkie dodatkowe prace, takie jak tłumaczenie protokołów sieciowych, transformowanie danych, dopasowywanie semantyki, zarządzanie przepływem wymienianych komunikatów. Rozwiązanie to ma jednak pewne wady: Komunikacja pomiędzy hubem, wewnątrz którego znajdują się adaptery, a systemami zdalnymi odbywa się za pomocą natywnych protokołów tych systemów. Stosowanie tych protokołów poza granicami systemów macierzystych może byd kłopotliwe lub niemożliwe, jeżeli komunikacja ma odbywad się poprzez sied WAN lub poprzez Internet. Rozszerzenie integracji na systemy nowego typu wymaga wprowadzenia zmian w hubie konieczne jest dodanie nowego adaptera, co może mied wpływ na pracę innych usług. Rozwiązanie to charakteryzuje się ograniczoną skalowalnością, co może mied duże znaczenie z tego względu, że liczba i zróżnicowanie zintegrowanych systemów stale wzrastają. Realizacja rozwiązania polegającego na umieszczeniu adapterów w centralnym hubie nie jest zwykle realna. Wyjątkiem może tu byd system składający się z kilku adapterów wspierających powszechnie stosowane i dobrze znane standardy. Adaptery w systemach zdalnych Alternatywą powyższej metody jest stosowanie adapterów zdalnych. W takim wypadku adaptacja cech charakterystycznych danego systemu zdalnego łączności i protokołów sieciowych, formatów danych i semantyki komunikatów realizowana jest wewnątrz tego systemu. Każdy RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 21

22 system jest sam odpowiedzialny za zapewnienie sposobu komunikacji zgodnego z ogólnie przyjętym standardem. Obecnie powszechnie przyjętym i rekomendowanym standardem, stosowanym do tego celu, są usługi Web Services. System zdalny, wyposażony w odpowiedni adapter, może zostad w sposób natywny zintegrowany z hubem. Zakres niezbędnych prac integracyjnych zależy od tego, na ile system zdalny różni się od przyjętego standardu komunikacji. Zwykle jednak jest porównywalny z zakresem prac wymaganym do przygotowania rozwiązania adapter w hubie jedynie umiejscowienie adaptera jest inne. Adapter może zostad utworzony jako nowa częśd pierwotnego systemu zdalnego lub zaimplementowany osobno z wykorzystaniem platformy pośredniczącej. Ta druga metoda może byd przydatna w przypadku, gdy nie jest możliwe wprowadzenie zmian w istniejących systemach. Zarys architektury, której adaptery umieszczone są w systemach zdalnych, ale nie są ich częścią, przedstawiono na ilustracji 2. Ilustracja 2. Integracja różnych systemów poprzez zastosowanie adapterów w systemach zdalnych Cechy charakterystyczne takiego rozwiązania to: Każdy system jest odpowiedzialny za zapewnienie standardowego sposobu komunikacji; implementacja integracji realizowana jest lokalnie w systemie docelowym, dlatego potencjalnie jest łatwiejsza. Zestandaryzowany sposób komunikacji z systemami zdalnymi za pośrednictwem wydzielonej sieci WAN lub innych sieci, takich jak Internet. Dodawanie nowych usług jest łatwe, ponieważ nie ma potrzeby wprowadzania modyfikacji w hubie centralnym; do huba nie trzeba dodawad nowych adapterów, a integracja ze wszystkimi zdalnymi usługami realizowana jest w ten sam zestandaryzowany sposób. Pomimo że pomiędzy adapterami dla poszczególnych usług może istnied pewne podobieostwo, nakłady pracy poświęcanej na integrację zależą od liczby integrowanych systemów, a często to samo zadanie realizowane jest wielokrotnie. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 22

23 Rozdzielenie integracji ogólnej i specyficznej Adaptery integracyjne są specyficzne, dostosowane i unikatowe dla każdego systemu docelowego, charakteryzują się jednak pewną wspólną funkcjonalnością, niezbędną do integracji obsługiwanych przez nie systemów zdalnych z hubem centralnym. Wydzielenie takiej ogólnej funkcjonalności (na przykład bezpieczeostwo, niezawodnośd komunikacji, zarządzanie przepływem komunikatów) z adaptera integracyjnego niesie pewne korzyści. Daje na przykład możliwośd wielokrotnego wykorzystywania ogólnej podstawy integracyjnej, co eliminuje powtarzanie realizacji niektórych zadao integrując nową usługę z systemem wystarczy zaimplementowad funkcjonalnośd specyficzną dla tej usługi. Na ilustracji 3. przedstawiono wielokrotne wykorzystanie określonych elementów rozwiązania integracyjnego (na ilustracji oznaczono je literą X) w wielu adapterach, co skraca czas i zmniejsza nakłady pracy związane z implementacją integracji. Ilustracja 3. Wielokrotne wykorzystanie ogólnych składników integracyjnych w wielu adapterach systemów zdalnych Wspólne rozwiązanie integracyjne Następnym logicznym krokiem jest utworzenie wspólnej implementacji ogólnej funkcjonalności integracyjnej, co jest korzystne dla wszystkich usług zdalnych. Jednokrotne zainwestowanie w zaprojektowanie, utworzenie i przetestowanie takiego rozwiązania integracyjnego i udostępnienie go dostawcom usług jako podstawy dla ich własnych rozwiązao integracyjnych pozwala uzyskad znaczne oszczędności przy jednoczesnym zachowaniu wysokiej jakości rozwiązania podstawowego. Wspólne rozwiązanie integracyjne może efektywnie obsłużyd większośd trudnych zagadnieo, dotyczących niezawodności komunikacji, bezpieczeostwa i innych wymagao, do których realizacji niezbędne może byd zatrudnienie wysoko wykwalifikowanych specjalistów, na co nie każda agencja może sobie pozwolid zwłaszcza że usługi dla sektora publicznego zaczynają byd świadczone przez mniejsze, regionalne jednostki. Realizacja lokalnie, w systemie docelowym, jedynie integracji specyficznej dla danej usługi może byd znacznie łatwiejsza niż utworzenie pełnego rozwiązania integracyjnego do komunikacji z hubem. Połączenie takiego podejścia do projektowania struktury z odpowiednim nadzorem i działaniami handlowymi (na przykład udostępnienie kompletnego, bazowego rozwiązania integracyjnego, obejmującego sprzęt, oprogramowanie, instalację i wsparcie techniczne) może w znaczący sposób wpłynąd na popularyzację dostarczania usług dla sektora publicznego drogą elektroniczną. Zalety takiego właśnie podejścia do problemu integracji zostały potwierdzone pozytywnymi doświadczeniami w wielu krajach. Jest to znacznie lepsze rozwiązanie niż udostępnienie RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 23

24 potencjalnym dostawcom usług jedynie specyfikacji sposobu komunikacji z hubem i pozostawienie ich samym sobie. Elastycznośd i sprawnośd Dla większości systemów możliwośd efektywnego radzenia sobie ze zmianami oraz adaptacji do nowych wymagao to koniecznośd. W przypadku rozwiązao integracyjnych dla sektora publicznego cechy te są jeszcze ważniejsze szybkośd wzrostu i liczba niewiadomych na początku projektu sprawiają, że częstotliwośd zmian w tych systemach jest zwykle wysoka. Również potrzeba zapewnienia kompatybilności wstecznej z wdrożonymi wcześniej systemami i wcześniejszymi wersjami oprogramowania jest szczególnie silna. Dlaczego elastycznośd i sprawnośd są tak ważne Rozwiązanie integracyjne dla sektora publicznego to platforma, która musi wspierad stale rosnącą liczbę usług. W odróżnieniu od wielu systemów komercyjnych, gdzie liczba i zróżnicowanie obecnych i przyszłych usług i kanałów dostępu są zwykle dobrze znane, w przypadku platformy integracyjnej dla sektora publicznego musi istnied możliwośd dostosowania jej do zmieniających się wymagao (niezależnie od tego, czy zmiany te można było przewidzied, czy nie) i to najlepiej bez konieczności przeprojektowywania czy zakłócania pracy istniejących usług. W wielu krajach można spotkad się z następującym schematem: rozwiązanie dla sektora publicznego powstaje jako projekt pilotowy lub jako sprawdzenie koncepcji i obejmuje kilka precyzyjnie wybranych usług (dobranych na podstawie widoczności tych usług, pilności ich udostępnienia i łatwości dostarczenia w postaci elektronicznej). Po udanej fazie wstępnej bardzo szybko rosną ambicje i chęd udostępnienia większej liczby usług. Równocześnie pojawiają się oczekiwania, że dopiero co wdrożona platforma powinna bez trudu poradzid sobie z tym zadaniem. Zmiany takie jak udostępnienie nowych usług, wdrożenie nowych mechanizmów uwierzytelniania czy nowych kanałów dostępu nie mogą byd traktowane jako rzadkie przypadki, wymagające okresowego wdrażania nowych wersji platformy integracyjnej dla sektora publicznego. Wdrażanie nowych usług powinno byd standardową funkcją systemu. Warunek ten musi zostad we właściwy sposób uwzględniony w projekcie architektury systemu, muszą też powstad odpowiednie narzędzia i procedury. Idealne rozwiązanie powinno pozwalad na wprowadzanie takich zmian w działającym systemie bez potrzeby wstrzymywania jego pracy. Udane wdrożenia w kilku krajach potwierdziły, że opracowanie takiego systemu jest możliwe. Tworzenie architektury z myślą o elastyczności Uzyskanie tak wysokiej elastyczności to główny wyznacznik docelowej architektury systemu. Umożliwienie wprowadzania w systemie tak dużych zmian (dodawanie nowych usług, nowych typów transakcji, modyfikowanie reguł walidacji danych, rekonfigurowanie reguł przepływu informacji) i to bez modyfikowania kodu rozwiązania wymaga, by rozwiązaniem można było zarządzad za pomocą parametrów konfiguracyjnych i danych modyfikowanych zgodnie z potrzebami wtedy, gdy potrzeby te występują. Architektura, która z założenia wspiera modułowośd na każdym poziomie (mechanizmy autoryzacji, modele identyfikacji, reguły specyficzne dla usług), to warunek konieczny. Jeśli założymy, że wymagania i reguły związane z poszczególnymi usługami ulegają zmianom (jeśli nie już na pierwszych etapach projektu, to na pewno w przyszłości), to architektura rozwiązania musi wspierad klasyfikację. Pozwala to zminimalizowad liczbę powszechnych reguł i przepływów komunikatów, które będą musieli obsługiwad dostawcy w celu uwzględnienia ich usług w systemie. Gdy rozwiązanie musi wspierad stale rosnącą liczbę usług, unikanie zakładania z góry określonego sposobu komunikacji, konfiguracji zabezpieczeo czy narzucania innych ograniczeo logistycznych to koniecznośd. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 24

25 Zabezpieczanie rozwiązania Ze wszystkich problemów, jakie architekci oprogramowania i programiści muszą rozwiązad, tworząc platformę integracyjną dla sektora publicznego, bezpieczeostwo jeśli nie zostanie we właściwy sposób zaimplementowane na wszystkich poziomach, w całym zakresie aplikacji może sprawid największe kłopoty. Zabezpieczenia często traktowane są jako funkcje dodatkowe, o które można zacząd się martwid już po zaprojektowaniu i wdrożeniu rozwiązania. Takie podejście to proszenie się o kłopoty. Bezpieczeostwo musi zostad uwzględnione w architekturze aplikacji już na początku projektu. Dlaczego bezpieczeostwo jest tak ważne? Wszystkie witryny internetowe, usługi i aplikacje muszą stale bronid się przed utratą danych, atakami użytkowników działających w złych zamiarach, atakami automatycznych programów (takich jak wirusy i robaki internetowe) oraz przed przestojami powodowanymi przez ataki DoS (Denial of Service zablokowanie usługi). Projekty w zakresie sektora publicznego niosą ze sobą szczególne ryzyko nawet większe niż w przypadku instytucji finansowych, takich jak banki internetowe. Jest tak, ponieważ systemy takie są ważnym celem dla: osób próbujących dokonad kradzieży tożsamości na przykład pobrad szczegółowe informacje dotyczące zeznao podatkowych, prawa jazdy, paszportu, dokumentacji medycznej i innych szczegółowych informacji umożliwiających kradzież tożsamości użytkownika, anarchistów i politycznie zaangażowanych włamywaczy, mających na celu włamanie się do systemu i spowodowanie jak największych zniszczeo, ataków na indywidualnych użytkowników, podyktowanych celami pozapolitycznymi, na przykład prób podważenia bezpieczeostwa systemu w oczach użytkownika lub uniemożliwiania mu dostępu do usług, z których ma prawo korzystad, nadużyd lub prób nadużyd poprzez nieautoryzowaną modyfikację danych, na przykład w celu uniknięcia płatności podatku dochodowego, obrotowego lub od wartości dodanej. Do ataków tego typu można również zaliczyd próby zatarcia śladów wykonania działao, co przez opinię publiczną nie zawsze jest uznawane za nadużycie. Niektóre organizacje i instytucje starają się ukryd rezultaty naruszeo ich systemów bezpieczeostwa. Aplikacje dla sektora publicznego charakteryzują się jednak dobrą widocznością dla społeczeostwa, a więc każdy udany atak z pewnością nie zostanie przeoczony przez użytkowników. Wydarzenia takie stawiają organizację w kłopotliwej sytuacji zarówno pod względem politycznym, jak i w zakresie public relations wobec dostawców i użytkowników. Efektem nawet najmniejszych problemów z bezpieczeostwem mogą byd nieprzewidziane koszty oraz utrata zaufania użytkowników i innych organizacji, a więc na dłuższą metę utrudnienie upowszechnienia usług elektronicznych. Projektowanie bezpiecznych rozwiązao Szczegółowe wskazówki dotyczące projektowania i tworzenia bezpiecznych rozwiązao zawarto w sekcji Bezpieczeostwo w rozdziale Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego niniejszego przewodnika. Wskazówki obejmują między innymi sposób zastosowania wielu warstw zabezpieczeo do realizacji trzech głównych celów (poufnośd, integralnośd danych, niezawodne uwierzytelnianie). Opisano także zagadnienia związane z modelowaniem zagrożeo oraz dostępne środki zaradcze. Bezpieczeostwo zależy jednak od czegoś więcej niż od samej implementacji technicznej. Aby rozwiązanie mogło byd na bieżąco przystosowywane do stale zmieniających się wymagao w zakresie bezpieczeostwa, podczas projektowania należy wziąd pod uwagę dodatkowe uwarunkowania: możliwośd stopniowego rozbudowywania i wprowadzania nowych usług i funkcji, RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 25

26 zapewnienie bezpiecznych sposobów przechowywania istotnych danych, wykorzystanie kluczy cyfrowych i certyfikatów, zarządzanie zespołem programistycznym i metodologią implementacji w celu zagwarantowania przestrzegania najlepszych praktyk, przetestowanie zabezpieczeo aplikacji we wszystkich możliwych sytuacjach w celu upewnienia się, że projekt architektury jest poprawny i spełnia założone wymagania odnośnie bezpieczeostwa, wprowadzenie odpowiednich zabezpieczeo w trakcie oraz po wdrożeniu środowiska; upewnienie się, że konfiguracja i bezpieczeostwo instalacji spełniają założone wymagania, monitorowanie wydajności aplikacji i usług, inspekcja procesów, tworzenie planów awaryjnych na wypadek włamania lub uszkodzenia danych, stałe działania mające na celu analizowanie nowo odkrytych zagrożeo bezpieczeostwa, regularne aktualizowanie sprzętu i oprogramowania z wykorzystaniem dodatków service pack. Firma Microsoft stara się ułatwid projektowanie, tworzenie i wdrażanie bezpiecznych rozwiązao, zapewniając przewodniki, wzorce i przykłady, szczegółową dokumentację dla programistów oraz udokumentowane najlepsze praktyki. Materiały te można znaleźd w witrynie Microsoft Security Developer Center pod adresem Skalowalnośd, wydajnośd, dostępnośd Rozwiązania dla sektora publicznego muszą zwykle spełniad rygorystyczne wymagania pod względem wydajności i skalowalności. Ze względu na swą naturę, wiele interakcji z usługami administracji publicznej jest realizowane dośd rzadko raz na rok lub raz na kwartał z charakterystycznymi szczytami aktywności przypadającymi na terminy takie jak koniec roku podatkowego. Wydajnośd tworzonego systemu powinna pozwalad na obsługę takich szczytowych aktywności bez znacznych spadków wydajności. Jest to szczególnie istotne dla powszechnej popularyzacji świadczenia usług dla sektora publicznego drogą elektroniczną. Wszelkie awarie, opóźnienia czy brak dostępności usług w takich krytycznych okresach są kłopotliwe, podważają publiczne zaufanie co do pewności świadczonych usług i mają negatywny wpływ na jeden z najważniejszych czynników istotnych dla popularyzacji elektronicznego dostępu do usług przewagę szybkości interakcji elektronicznych nad tymi obsługiwanymi za pomocą tradycyjnych kanałów dostępu. Rozwiązania dla sektora publicznego, zwykle rozpoczynające swój żywot jako niewielkie projekty, stopniowo rosną i rozbudowują się w miarę wzrostu popularności usług elektronicznych oraz liczby użytkowników korzystających z takich usług. Gdy usługi udostępniane są za pośrednictwem współdzielonej infrastruktury, to poza wzrostem intensywności korzystania z każdej z usług, mamy też wzrost liczby usług. Warto więc dwukrotnie przemyśled i zweryfikowad szacowane i przewidywane współczynniki wzrostu. Zbyt często nasze założenia są za bardzo optymistyczne. Podstawowym wyznacznikiem jest ocena takich czynników poprzez porównanie ich z dostępnymi, znanymi wskaźnikami statystycznymi (obecna liczba interakcji w ramach tradycyjnych kanałów dostępu, rozpowszechnienie usług elektronicznych w podobnych obszarach zastosowao) oraz ograniczeniami (przepustowośd sieci, możliwości wykorzystywanych systemów zaplecza). W kilku przypadkach proste oszacowanie na podstawie liczby interakcji pomnożonej przez średni ruch generowany przez taką interakcję dało wyniki znacznie przekraczające przepustowośd wykorzystywanej sieci, jasno pokazując, że przyjęte wcześniej założenia były nierealne i niemożliwe do osiągnięcia z powodu innych ograniczeo. Ślepe akceptowanie takich przewidywanych wymagao w zakresie wydajności, a także próby spełnienia tak postawionych założeo mogą niepotrzebne skomplikowad projekt i implementację platformy dla sektora publicznego. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 26

27 Wskazówki na temat projektowania wydajnych i skalowalnych rozwiązao dla sektora publicznego można znaleźd w sekcji Wydajnośd i skalowalnośd rozdziału Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego tego opracowania. Dostępnośd i odpornośd Z zagadnieniami skalowalności i wydajności aplikacji związane są także inne problemy. Ograniczona wydajnośd w oczywisty sposób wpływa na dostępnośd rozwiązania, powodując chwilowe lub nawet długotrwałe utrudnienia dla użytkowników próbujących uzyskad dostęp do aplikacji i korzystad z niej. Zapewnienie wysokiej dostępności oznacza zagwarantowanie, że wszystkie składniki infrastruktury, takie jak sprzęt, oprogramowanie czy sied, są odporne na awarie. Innymi słowy, żadna pojedyncza awaria nie powinna zatrzymywad pracy całego systemu. Zagadnienia dostępności i odporności dotyczą wielu problemów związanych z architekturą rozwiązania. W sekcji Wydajnośd i skalowalnośd rozdziału Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego opisano, jak skalowanie sprzętu dzięki wykorzystaniu wielu komponentów lub zastosowaniu komponentów redundantnych pozwala na ochronę systemu przed przestojami, powodowanymi przez pojedynczą awarię sprzętu lub oprogramowania, poprzez przejmowanie pracy uszkodzonych komponentów. Odtwarzanie po awariach Oczywiście nie można zagwarantowad, że awaria nigdy się nie wydarzy. Awaria może zostad spowodowana błędem w oprogramowaniu, uszkodzonym komponentem sprzętowym, a nawet byd skutkiem uszkodzenia łącza internetowego przez ekipę wykonującą w okolicy roboty drogowe. W przypadku poważniejszych wydarzeo, takich jak pożar lub katastrofa budowlana budynku, w którym zainstalowane są serwery, awaria aplikacji jest prawie że gwarantowana. Innymi przyczynami awarii mogą byd złośliwe działania operatorów systemu, nieumyślne pomyłki personelu czy błędy logiczne danych, które mogą spowodowad utratę zawartości całych macierzy dyskowych. Aby móc poradzid sobie z takimi problemami, niezbędne jest opracowanie szczegółowego, ścisłego, w pełni przetestowanego planu postępowania na wypadek takiej awarii. Plan powinien obejmowad wszystkie możliwości od ponownego wczytania danych z dysków lub taśm zapasowych po przeniesienie działalności do innej lokalizacji, wyposażonej w sprzęt i oprogramowanie gotowe do natychmiastowego podjęcia pracy. Istnieją na rynku firmy świadczące usługi planowania i utrzymywania takich systemów, co może pozwolid na znaczne zredukowanie czasu przestoju aplikacji, których stała dostępnośd jak w przypadku rozwiązao dla sektora publicznego może byd sprawą najwyższej wagi. Konstrukcja wspólnego huba Powszechne rozwiązanie integracyjne dla sektora publicznego, współdzielone przez wiele usług, pozwala w efektywny sposób rozwiązad wiele z przedstawionych dotychczas problemów. Bardziej szczegółowe informacje na ten temat zamieszczono w sekcji Hub usług rozdziału Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego w tym przewodniku. Chociaż rozwiązanie to charakteryzuje się niewątpliwymi zaletami, jego wdrożenie może wiązad się z koniecznością pokonania wielu przeszkód natury politycznej lub komercyjnej oraz innych utrudnieo. Najważniejsze z tych zagadnieo omówiono w kolejnych sekcjach dokumentu. Potrzeba ustalenia właściciela lub finansującego W wielu krajach jednostki administracji publicznej wdrażają własne, oddzielne, nieskoordynowane ze sobą rozwiązania dla sektora publicznego, będące często rozszerzeniami systemów i projektów prowadzonych już przez te instytucje. Nawet jeśli istnieje jakiś centralny organ, odpowiedzialny za inicjatywy dla sektora publicznego, może on mied zbyt małe możliwości, by wspierad i koordynowad implementację wspólnej infrastruktury sektora publicznego oraz zbyt RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 27

28 małe fundusze, by zaprojektowad, opracowad i wdrożyd taką infrastrukturę. W efekcie nawet jeśli większośd uczestników rynku uzna zalety stosowania wspólnej platformy integracyjnej i przekona się o możliwych oszczędnościach bez jasnego wskazania właściciela i finansującego, rozwiązanie takie ma nikłe szanse na praktyczną realizację. Najlepsze rezultaty można osiągnąd, gdy istnieje centralna instytucja, posiadająca niezbędną władzę i zasoby finansowe umożliwiające popularyzację usług dla sektora publicznego, która może pokierowad pracami nad tworzeniem wspólnej platformy integracyjnej. Początkowa inwestycja z odroczonymi korzyściami Inwestycja w opracowanie architektury, zaprojektowanie, utworzenie i wdrożenie wspólnej platformy to pierwszy krok w kierunku udostępnienia efektywnych usług dla sektora publicznego. W początkowych fazach tworzona jest jednak tylko podstawowa infrastruktura. Infrastruktura ta nie jest widoczna dla użytkownika koocowego i bezpośrednio nie przynosi żadnych korzyści. Jest jedynie gwarancją sukcesu usług dla sektora publicznego, które są stopniowo udostępniane. Aby móc zademonstrowad zalety nowej platformy, potrzebne jest szybkie wdrożenie początkowego zestawu usług. Dzięki temu dostawcy usług i konsumenci usług szybciej zobaczą bardziej namacalne korzyści. Co więcej, jeśli platforma została poprawnie zaprojektowana i zaimplementowana, ogólne korzyści będą coraz lepiej widoczne wraz z każdą nową usługą dodaną do platformy. Typowe konflikty z projektami indywidualnymi Podczas jednoczesnych prac projektowania i implementowania platformy integracyjnej dla sektora publicznego oraz początkowego zestawu usług, które będą udostępniane w oparciu o tę platformę, pojawiają się napięcia powodowane różnicami pomiędzy ogólnym charakterem platformy a specyficznymi wymaganiami każdej z usług. O ile napięcia takie sprzyjają kreatywności i mają pozytywny wydźwięk, stanowiąc dobry sposób walidacji styku pomiędzy platformą a dostawcami usług na wczesnych stadiach projektu, mogą także wywierad negatywny wpływ na projekt platformy powodując, że zostanie w niej zaimplementowana funkcjonalnośd, która nie powinna się tam w ogóle znaleźd. Pod silną presją ciasnych ram czasowych i ograniczonych środków finansowych, wśród wykonawców odpowiedzialnych za poszczególne części projektu szczególnie wyraźnie widoczna staje naturalna tendencja przesuwania granicy pomiędzy usługami i przekazywania części zadao komuś innemu. W powiązaniu z faktem, że projekty dla sektora publicznego często prowadzone są przez jedną lub kilka silnych podmiotów, które zwykle zakres i budżet projektu wspólnej infrastruktury ustalają samodzielnie, naciski na przesunięcie części funkcjonalności szczególnie tej, która nie jest całkowicie ogólna, ale zaimplementowanie jej w platformie przyniosłoby oszczędności czasu i kosztów mogą byd bardzo duże. Działania takie z pewnością naruszą integralnośd architektury i będą miały wpływ na pozostałe usługi, które trzeba będzie dostosowad do zmian wprowadzonych dla wygody zaledwie kilku osób. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 28

29 Architektura referencyjna ogólnego rozwiązania integracyjnego dla sektora publicznego W tej sekcji przedstawiamy typową referencyjną architekturę rozwiązania integracyjnego dla sektora publicznego, opartą na połączonej platformie Microsoft Ramy Interoperacyjności Systemów Administracji Publicznej. Na rozdział ten składają się następujące sekcje: Reguły rządzące architekturą omówienie ogólnych zasad projektowania oraz architektury zorientowanej na usługi (Service Oriented Architecture SOA), na której oparta jest cała platforma. Hub usług jak zapewnid wspólną infrastrukturę, z której może korzystad wielu dostawców usług dla sektora publicznego. Zarządzanie tożsamością opis zadao takich jak początkowa identyfikacja użytkowników, przydzielanie poświadczeo, rejestrowanie użytkowników w usługach, zarządzanie rejestracjami użytkowników i przypisywanie uprawnieo wewnątrz usługi. Uwierzytelnianie i autoryzacja bardziej szczegółowy opis implementacji funkcji uwierzytelniania (w tym uwierzytelniania stowarzyszonego ang. federated authentication), autoryzacji, stosowania tokenów bezpieczeostwa oraz technik udostępniania usług uwierzytelniania i autoryzacji. Katalog usług analiza możliwości zastosowania katalogu do zapewnienia przezroczyści lokalizacji usług tak, by zmiana fizycznej lokalizacji świadczenia usługi nie powodowała awarii aplikacji. Rejestracja dokumentów zastosowanie usługi rejestracji dokumentów, umożliwiającej przyjmowanie i przetwarzanie dokumentów w imieniu klienta, może uprościd interakcję z użytkownikami i umożliwid orkiestrację procesów z uwzględnieniem usług zaplecza Orkiestracja procesów biznesowych silnik orkiestracji współpracujący z usługą rejestracji dokumentów pozwala zagwarantowad, że komunikaty będą poprawnie przetwarzane na każdym etapie procesu i na podstawie odpowiedniego zestawu reguł dostarczane do wielu punktów koocowych (partnerzy, inne usługi, aplikacje itp.). Integracja z usługami zaplecza w niektórych sytuacjach nie ma możliwości zapewnienia natywnej interakcji istniejących usług zaplecza z hubem usług z wykorzystaniem standardów usług sieciowych i konieczne jest zapewnienie komunikacji w inny sposób. Bezpieczeostwo w jaki sposób system taki jak rozwiązanie integracji usług dla sektora publicznego może i powinien byd zabezpieczony przed złośliwymi użytkownikami, zautomatyzowanymi atakami, atakami mającymi na celu zablokowanie dostępu do usług (denial of service) oraz ujawnianiem poufnych informacji. Wydajnośd i skalowalnośd opis zagadnieo związanych z problematyką budowy rozwiązania spełniającego kryteria dostępności, czasu odpowiedzi i wydajności. Omówiono techniki planowania obciążenia i implementacji skalowalnych architektur sprzętowych i software owych. Zarządzanie i eksploatacja zagadnienia związane z eksploatacją i zarządzaniem rozwiązaniem, świadczeniem pomocy technicznej i wsparcia technicznego, dostarczaniem usług. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 29

30 Reguły rządzące architekturą Aby pomyślnie rozwiązad problemy opisane w rozdziale RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 30

31 Powszechne problemy dotyczące architektury wyżej w tym dokumencie, opisywana tu architektura referencyjna dla sektora publicznego została przygotowana w oparciu o następujące zasady: Orientacja na usługi Zastosowanie architektury zorientowanej na usługi (Service Oriented Architecture SOA) w implementacji dużych i złożonych systemów informatycznych, jakimi są rozwiązania integracyjne dla sektora publicznego, pozwala na spełnienie warunku podstawowego sprawienie, by systemy te były łatwe w adaptacji, elastyczne i niezawodne. Architektura zorientowana na usługi to struktura oraz zestaw zasad i praktyk pozwalających na implementowanie funkcjonalności aplikacji w usługach dostępnych z zewnątrz. Szczegółowośd dekompozycji na usługi zależy wyłącznie od wymagao strony korzystającej z tych usług usługi pozwalają na wyodrębnienie implementacji części funkcjonalności aplikacji z wykorzystaniem pojedynczego, opartego na standardach, typu interfejsu. Funkcjonalnośd platformy integracyjnej dla sektora publicznego powinna byd dostępna w postaci zestawu ogólnych usług, z których można korzystad niezależnie od innych usług i wtedy, gdy jest to potrzebne. Interfejsy i standardy Dominującą metodą udostępniania usług w sposób zgodny z przyjętymi standardami i niezależny od implementacji oraz wykorzystywanej platformy stają się usługi sieciowe Web Services. Standardy związane z usługami Web Services wdrażane są przez wszystkich wiodących producentów oprogramowania i coraz więcej produktów programistycznych wspiera te standardy. Pozwoli to na stopniowe zmniejszenie ilości pracy poświęcanej na tworzenie kodu pisanego na miarę na rzecz korzystania tam, gdzie jest to możliwe z produktów komercyjnych. Oparcie implementacji podstawowych funkcji oprogramowania, takich jak bezpieczeostwo czy niezawodna komunikacja, na gotowych narzędziach i produktach, pozwoli zmniejszyd koszty i nakłady pracy niezbędne do uzyskania wymaganej funkcjonalności. Szczegółowe informacje oraz łącza do pełnej specyfikacji standardów usług Web Services można znaleźd pod adresem oraz w sekcji Odsyłacze, listy kontrolne i dalsze informacje w ostatniej części tego opracowania. Wyszukiwanie usług Architektura referencyjna zapewnia infrastrukturę pozwalającą na rejestrowanie i wyszukiwanie dostępnych usług (w czasie projektowania lub w czasie pracy aplikacji) oraz repozytorium do przechowywania metadanych opisujących usługi schematów, interfejsów, zasad. Format metadanych odpowiada powszechnie przyjętym standardom branżowym. Stowarzyszone funkcje zabezpieczeo Architektura musi obsługiwad wiele różnych mechanizmów uwierzytelniania, typów poświadczeo, dostawców tożsamości, metod autoryzacji i modeli zaufania. Co więcej, niektóre z nich nie są znane nawet na etapie projektowania architektury. Architektura powinna zatem zapewnid ogólną strukturę, umożliwiającą stopniowe dodawanie nowych dostawców i mechanizmów oraz konstruowanie systemów o różnych topologiach, uwzględniających specyficzne wymagania i ograniczenia. Nie należy zakładad, że możliwe jest centralne uwierzytelnianie i zarządzanie wszystkimi potencjalnymi użytkownikami systemu przez jednego dostawcę usług. Wprowadzenie standardów usług Web Service także w tej przestrzeni pozwoli na uzyskanie interoperacyjności pomiędzy różnymi implementacjami i efektywne wykorzystywanie gdy tylko staną się dostępne produktów komercyjnych o takich możliwościach. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 31

32 Elastycznośd Kluczem do sukcesu rozwiązao dla sektora publicznego jest elastycznośd zapewniana przez architekturę i uwzględniona już na pierwszym etapie projektu. Rozszerzanie i adaptowanie podstawowej infrastruktury w odpowiedzi na zmieniające się wymagania (na przykład dodawanie nowych usług lub dostawców uwierzytelniania) to standardowy możliwy do realizacji każdego dnia przypadek użycia, który powinien byd poprawnie obsługiwany przez platformę, procesy i narzędzia, a nie proces realizowany okresowo przy okazji wdrażania nowej wersji platformy. Bezpieczeostwo Aby umożliwid budowanie rozwiązao gwarantujących odpowiedni poziom bezpieczeostwa dostępu do usług dla sektora publicznego, już w pierwszych fazach projektowania architektury należy pomyśled o wielowarstwowych zabezpieczeniach i innych aspektach związanych z bezpieczeostwem systemu. Sam model zabezpieczeo powinien byd elastyczny i pozwalad na adaptację w celu uwzględnienia różnych dostępnych obecnie i w przyszłości technik zabezpieczeo bez potrzeby projektowania systemu od początku. Skalowalnośd i wydajnośd Architektura powinna zapewniad adekwatną wydajnośd i pozwalad na rozbudowę systemu wraz ze wzrostem zapotrzebowania na dostęp do coraz szerszego zakresu oferowanych usług. Hub usług Wspólna infrastruktura, współdzielona przez wielu dostawców usług dla sektora publicznego, jest rozwiązaniem wielu z problemów naświetlonych w rozdziale RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 32

33 Powszechne problemy dotyczące architektury. Infrastrukturę tę będziemy dalej nazywali hubem usług (lub w skrócie hubem). Chociaż zalety stosowania takiego huba są tym większe, im więcej usług z niego korzysta (zamiast niezależnie implementowad podobną funkcjonalnośd), nie oznacza to wcale, że wszystkie usługi dla sektora publicznego muszą byd obsługiwane za pomocą tylko jednego huba. Możliwa jest współpraca wielu hubów, z których każdy implementuje tylko częśd z pełnej funkcjonalności i współpracuje z pozostałymi hubami w różnych topologiach w stowarzyszonym modelu. Celem jest uzyskanie elastyczności umożliwiającej dostosowanie systemu do różnych wymagao, topologii i potrzebnej skali implementacji przy zachowaniu tych samych metod projektowania poszczególnych węzłów. Kontekst i interakcje zewnętrzne huba Hub usług dla sektora publicznego implementuje zestaw usług udostępnianych klientom różnego typu. Sam hub także jest klientem korzysta z innych systemów (usług) zewnętrznych (patrz ilustracja 4). Interakcje z klientami Z punktu widzenia architektury, klientem jest wszystko, co korzysta z usług udostępnianych przez hub usług dla sektora publicznego. Klientami mogą byd witryny internetowe i portale obsługujące własnych użytkowników koocowych w oparciu o usługi świadczone przez hub, aplikacje uruchamiane w systemach klienckich lub inne systemy korzystające z usług huba. Typowe kategorie klientów huba to: portale mogą korzystad z udostępnianych przez hub usług zarządzania tożsamością i bezpieczeostwem w celu uwierzytelniania użytkowników, wykonywania zadao konserwacyjnych, przekazywania dokumentów w imieniu użytkownika poprzez usługi komunikacyjne huba lub wykorzystywad usługi pomocnicze, aplikacje klienckie na przykład aplikacje finansowo-księgowe uruchamiane na stacjach roboczych i serwerach klientów, kontaktujące się z hubem w celu przekazywania dokumentów i dostępu do innej funkcjonalności, inne systemy (albo inne huby) mogą działad i korzystad z funkcjonalności huba jako klienty. Mogą to byd systemy utrzymywane przez niezależne organizacje, systemy zaplecza lub inne huby. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 33

34 Ilustracja 4. Kontekst i interakcje zewnętrzne huba usług dla sektora publicznego Wszystkie interakcje z klientami odbywają się za pośrednictwem opublikowanych interfejsów, opartych na branżowych standardach usług Web Service. Podejście takie zapewnia niezbędną otwartośd, kompatybilnośd z szeroką gamą produktów komercyjnych oraz możliwośd współpracy z oprogramowaniem działającym na innych platformach. Interakcje klientów z hubem usług dla sektora publicznego są niezależne od sposobu implementacji aplikacji klienckich i platform, na których aplikacje te są uruchamiane. Uwaga warto pomyśled przyszłościowo i udostępnid pełną funkcjonalnośd huba za pośrednictwem interfejsów programistycznych. W niektórych wczesnych implementacjach takich systemów częścią huba był przeglądarkowy interfejs użytkownika i częśd funkcjonalności dostępna była wyłącznie za pośrednictwem przeglądarki. Po pewnym czasie okazało się, że wiele urzędów wolałoby korzystad z funkcjonalności huba za pośrednictwem własnych portali ze względu na łatwiejszą obsługę. Dodanie interfejsów programistycznych do działającego systemu jest zwykle dużo trudniejsze niż uwzględnienie ich w projekcie już na samym początku. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 34

35 Interakcje z usługami zewnętrznymi Hub działa także jako klient, uzyskując dostęp do innych usług (wewnętrznych lub zewnętrznych). Z architektonicznego punktu widzenia interakcje te nie różnią się od siebie, chod można wyróżnid wśród nich następujące typy: Usługi, na których opiera się podstawowa funkcjonalnośd huba zewnętrzni dostawcy mechanizmów uwierzytelniania, wywoływani przez hub w celu weryfikacji poświadczeo tożsamości. Specjalizowane usługi docelowe, otrzymujące żądania od klientów za pośrednictwem huba. Hub działa jako pośrednik i może pełnid dodatkowe funkcje na drodze przekazywania komunikatów na przykład zapewnid walidację. Usługi docelowe mogą byd świadczone przez urząd, inne systemy lub inne huby integracyjne działające w takich systemach. Usługi centralne, z których korzystają klienci. Pomimo że hub może dostarczad usługi ogólnego przeznaczenia, pod względem architektury systemu usługi te znajdują się na zewnątrz huba. Usługi takie często są hostowane i zarządzane w oparciu o infrastrukturę techniczną huba centralnego, a dostęp do nich realizowany jest za pośrednictwem huba. Usługi świadczone przez hub Pełny zakres usług zapewnianych przez hub można podzielid na następujące główne kategorie (patrz ilustracja 4): usługi tożsamości i bezpieczeostwa, usługi komunikacyjne, usługi pomocnicze, usługi routingu i integracyjne. Usługi te zostały opisane w poniższych sekcjach. Usługi tożsamości i bezpieczeostwa Ta grupa usług obsługuje początkową identyfikację i rejestrację użytkowników, rejestrowanie użytkowników w usługach dla sektora publicznego, uwierzytelnianie i autoryzację, odwzorowywanie poświadczeo ogólnych na identyfikatory specyficzne dla usług oraz bieżące zarządzanie tożsamościami użytkowników. Jedną z podstawowych zasad warunkujących architekturę usług tożsamości i bezpieczeostwa jest wsparcie wielu dostawców każdej głównej funkcji. Na tej właśnie koncepcji opiera się model tożsamości stowarzyszonej. Zakładanie, że hub będzie jedynym centralnym systemem zarządzającym uniwersalnymi poświadczeniami, tożsamościami, służącym jako dostawca uwierzytelniania, nie zawsze jest prawidłowe mimo że istnieją liczne udane implementacje, w których zastosowano ten model. Możliwośd bezproblemowego opierania się na obcych rozwiązaniach pozwala zbudowad elastyczny i kompletny model huba, który może pracowad w wielu różnych topologiach, a nie w jednej, zaprojektowanej specjalnie dla danego rozwiązania. W sekcji Możliwe topologie dalej w tym dokumencie opisano różne systemy oparte na jednym lub wielu hubach ogólnych. Szczegółowy opis architektury usług tożsamości i bezpieczeostwa zawarto w sekcjach Usługi zarządzania tożsamością oraz Usługi uwierzytelniania i autoryzacji dalej w tym dokumencie. Usługi komunikacyjne Funkcja odbierania komunikatów lub rejestrowania dokumentów, weryfikowania ich integralności, sprawdzania autoryzacji i przekazywania ich do odpowiedniej usługi docelowej jest jedną z najważniejszych funkcji dodatkowych, dzięki którym hub usług dla sektora publicznego jest użyteczny zarówno dla klientów, jak i jednostek administracji publicznej świadczących usługi drogą elektroniczną. Możliwośd przeniesienia części pośrednich etapów przetwarzania na współdzieloną wspólną infrastrukturę pozwala agencjom skoncentrowad się na swoich zadaniach RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 35

36 biznesowych (przetwarzaniu otrzymanych dokumentów) i ułatwia świadczenie usług drogą elektroniczną. Szczegółowy opis architektury usług komunikacyjnych zamieszczono w sekcjach Usługi rejestracji dokumentów i Orkiestracja procesów biznesowych dalej w tym dokumencie. Usługi pomocnicze Niektóre funkcje często niezbędne do świadczenia usług dla sektora publicznego mogą byd bardziej efektywnie dostarczane w postaci wspólnych usług pomocniczych, udostępnianych przez hub (lub za jego pośrednictwem) i współdzielonych przez dostawców usług dla sektora publicznego, i nie muszą byd implementowanie niezależnie dla każdej usługi. Możliwośd ta jest szczególnie atrakcyjna dla mniejszych jednostek (na przykład dla ośrodków lokalnych), którym często brak środków i odpowiednio wykwalifikowanego personelu, by móc samodzielnie zaimplementowad takie usługi. Typowe przykłady takich usług pomocniczych to: Usługi płatności służące do obsługi płatności pomiędzy klientami (obywatele, przedsiębiorstwa, systemy) i dostawcami usług (agencje, urzędy). Bezpieczna poczta elektroniczna do bezpiecznego przesyłania poufnych informacji pomiędzy jednostkami administracji publicznej a ich usługobiorcami. Zakres usług pomocniczych dostarczanych przez hub może się stopniowo zwiększad, w zależności od potrzeb i spodziewanych korzyści. Ponieważ możliwe jest wdrożenie wielu instancji huba, huby mogą byd umieszczane w lokalizacjach najbardziej odpowiednich do świadczenia określonych usług pomocniczych na przykład na poziomie centralnym, regionalnym lub lokalnym. Możliwe topologie Ogólna natura architektury referencyjnej i funkcjonalności huba umożliwia budowanie wielu różnych topologii. W zależności od specyficznych wymagao i umiejscowienia każdego z hubów, dany hub może oferowad jedynie podzbiór ogólnej funkcjonalności. Daje to elastycznośd wyboru sposobu i miejsca wykonywania różnych operacji. Możliwe topologie są bardzo różne pojedynczy centralny hub, sied stowarzyszonych, współpracujących hubów równorzędnych, wielopoziomowa hierarchia hubów, a nawet bardziej skomplikowane struktury. Pojedynczy centralny hub Najbardziej oczywistą konfiguracją systemu jest wdrożenie pojedynczego, centralnego huba usług dla sektora publicznego (patrz ilustracja 5). Model ten z powodzeniem zastosowano w licznych wdrożeniach infrastruktury dla sektora publicznego w wielu krajach. Skupienie kluczowych funkcji (zarządzanie tożsamością, uwierzytelnianie i autoryzacja, przekazywanie komunikatów, walidacja danych) w pojedynczym hubie, współdzielonym przez wszystkich dostawców usług dla sektora publicznego, jest wygodne i efektywne oraz zapewnia wysoką niezawodnośd. System taki może byd szybko wdrożony i pozwala na bardzo stromy wzrost zarówno liczby oferowanych usług, jak i ich wykorzystania. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 36

37 Ilustracja 5. Pojedynczy, centralny hub Centralny hub usług dla sektora publicznego stanowi powszechną platformę, zapewniającą niezbędną funkcjonalnośd, taką jak zarządzanie tożsamością i bezpieczeostwem czy przetwarzanie komunikatów (przyjmowanie dokumentów). Dostawcy usług dla sektora publicznego mogą oprzed swoje systemy na usługach zapewnianych przez hub, implementując jedynie funkcje niezbędne do integracji własnych systemów z infrastrukturą dla sektora publicznego oraz funkcje biznesowe do celów przetwarzania otrzymywanych dokumentów. Hub jako platforma integracji systemów zaplecza Okrojona wersja ogólna huba dla sektora publicznego, w której pozostawiono jedynie funkcjonalnośd niezbędną do pełnienia roli systemu integracyjnego, może stanowid bardzo efektywną platformę, zapewniającą połączenie z systemami zaplecza utrzymywanymi przez dostawcę usług (patrz ilustracja 6). RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 37

38 Ilustracja 6. Hub integracyjny Hub integracyjny może zapewniad ogólną funkcjonalnośd komunikacyjną, przekazywania komunikatów i integracyjną do celów odbierania komunikatów od huba centralnego lub innych systemów, wykonywania niezbędnej walidacji i przekazywania tych komunikatów do systemów docelowych. Poza ogólnymi funkcjami komunikacyjnymi i integracyjnymi, hub może także udostępniad zaawansowane funkcje integracji i transformacji, specyficzne dla danej agencji lub systemów zaplecza. Więcej informacji na temat możliwości huba w zakresie wsparcia integracji z systemami zaplecza można znaleźd w znajdującej się dalej w tym dokumencie sekcji Integracja z usługami zaplecza. Hub integracyjny może ufad hubowi centralnemu i polegad na nim w zakresie walidacji i uwierzytelniania komunikatów przychodzących, ale może także we własnym zakresie przeprowadzad dodatkowe operacje uwierzytelniania i autoryzowania żądao. Operacje te mogą wymagad odwołao do usług zewnętrznych, w tym do huba centralnego szczególnie w przypadkach, gdy przetwarzane komunikaty nie zostały przesłane za pośrednictwem huba centralnego. Huby równorzędne W wielu przypadkach kierowanie całego ruchu przez jeden centralny hub może byd nieefektywne lub niepraktyczne szczególnie gdy hub nie pełni zbyt wielu funkcji w procesie (walidacja, autoryzacja, śledzenie wywołao itp.). Lepszym rozwiązaniem może byd wdrożenie dla określonych typów komunikatów komunikacji typu peer-to-peer jako uzupełnienia dla komunikacji za pośrednictwem huba. Na przykład odpowiedzi na wywołania mogą byd przekazywane bezpośrednio do systemu klienta, nawet jeśli żądanie zostało przesłane za pośrednictwem huba centralnego. Komunikacja bezpośrednia może byd także wykorzystywana na określonych etapach konwersacji wymagających przesłania wielu komunikatów, na przykład po zainicjowaniu interakcji za pośrednictwem huba. Efektywną komunikację typu peer-to-peer mogą obsługiwad instancje ogólnego huba, wykonując częśd standardowych zadao, które w innym wypadku wymagałyby implementacji w samych RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 38

39 usługach. W zależności od typu interakcji i wymaganej funkcjonalności, można zdecydowad się na wdrożenie sześciu różnych podzbiorów ogólnej funkcjonalności huba. Na ilustracji 7. przedstawiono jeden z możliwych sposobów wymiany komunikatów pomiędzy hubami równorzędnymi, w którym hub centralny pełni rolę dostawcy uwierzytelniania i usługi tokenów bezpieczeostwa (Security Token Service STS). Poszczególne etapy komunikacji mają następujący przebieg: 1. Żądający wywołuje hub centralny lub innego dostawcę tożsamości w celu uzyskania tokenu bezpieczeostwa pozwalającego na komunikację z usługą docelową. Token ten powinien byd wystawiony przez usługę tokenów bezpieczeostwa (Security Token Service STS), której ufa usługa docelowa. 2. Komunikat wraz z tokenem STS zostaje przekazany do huba usługi docelowej. 3. Następuje sprawdzenie poprawności tokenu STS. Usługi zarządzania tożsamością i bezpieczeostwem huba usługi docelowej podejmują decyzję o udzieleniu dostępu do tej usługi. Decyzja może zostad podjęta na podstawie danych przechowywanych lokalnie w hubie lub danych uzyskanych z zewnątrz poprzez odwołanie się do innej usługi. 4. Komunikat zostaje przekazany do usługi docelowej do przetworzenia. Ilustracja 7. Huby równorzędne W tym scenariuszu komunikacja z hubem centralnym odbywa się tylko w pierwszym etapie, w celu pobrania odpowiedniego tokenu STS. Po uzyskaniu tokenu mogą nastąpid interakcje bezpośrednio pomiędzy równorzędnymi hubami (do czasu wygaśnięcia okresu ważności tokenu bezpieczeostwa), bez potrzeby ponownego odwoływania się do huba centralnego, który w tym przypadku pełni wyłącznie rolę dostawcy uwierzytelniania (STS). Możliwych jest także wiele innych scenariuszy. Na przykład po zainicjowaniu interakcji w sposób opisany powyżej, hub usługi docelowej może wystawid własny, specyficzny dla wywoływanej usługi token sesji i przekazad go hubowi żądającego. Kolejne wywołania mogą byd uwierzytelniane w oparciu o ten token, a weryfikacja tokenu przez usługę docelową jest znacznie szybsza. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 39

40 Hierarchia hubów Możliwe jest budowanie jeszcze bardziej złożonych topologii, w których współpracujące ze sobą w stowarzyszonym modelu huby znajdują się na różnych poziomach hierarchii. Częśd z ogólnej funkcjonalności zapewnianej przez huby (routing, orkiestracja, decyzje dotyczące autoryzacji dostępu na różnych poziomach szczegółowości) może byd rozdzielana pomiędzy różne huby na podstawie warunków takich jak wydajnośd, dostępnośd, prawa własności danych, procedury aktualizacji i konserwacji itp. Rozwiązania, zamiast stosowad podejście jednorozmiarowe, mogą byd dostosowywane do znacznie szerszego zakresu wymagao i ograniczeo. Przykład takiej hierarchii przedstawiono na ilustracji 8. Ilustracja 8. Hierarchia hubów W lewej części ilustracji 8. przedstawiono jeden z możliwych sposobów dystrybucji funkcjonalności i organizacji przepływów danych (ze szczególnym uwzględnieniem routingu komunikatów w hubie regionalnym lub w hubie grupy. Proces ma następujący przebieg: 1. Centralny hub przyjmuje i przetwarza komunikaty w standardowy sposób, włącznie z walidacją danych i sprawdzeniem autoryzacji dostępu do żądanej usługi. 2. Komunikat jest następnie przesyłany do należącego do niższego poziomu huba regionalnego lub huba grupy, który może obsługiwad kilka agencji lub kilku dostawców usług. 3. Hub regionalny lub hub grupy może przetworzyd pakiet i użyd zaawansowanych funkcji routingu, na przykład w celu uwzględnienia dynamicznych warunków, takich jak bieżące obciążenie systemów lub trwające awarie, lub zrealizowad orkiestrację procesu w oparciu RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 40

41 o kilka usług zaplecza. Odpowiedzialnośd za te działania pozostaje na poziomie grupy hub centralny nie bierze w nich udziału. 4. Komunikaty zostają przekazane do odpowiednich dostawców usług, którzy sami mogą udostępniad swoje systemy za pośrednictwem hubów integracyjnych. W prawej części ilustracji 8. przedstawiono inny sposób dystrybucji funkcjonalności i organizacji przepływów danych (z naciskiem na autoryzowanie dostępu na różnych poziomach szczegółowości przez hub agencji). 1. Centralny hub przyjmuje i przetwarza komunikaty w standardowy sposób, włącznie z walidacją komunikatu, uwierzytelnieniem i sprawdzeniem autoryzacji dostępu do żądanej usługi. Poziom szczegółowości autoryzacji to poziom usługi, a nie poziom huba regionalnego lub huba grupy. 2. Komunikat zostaje następnie przesłany do huba agencji. 3. Hub agencji może dokonad bardziej szczegółowego sprawdzenia autoryzacji na podstawie zaświadczeo otrzymanych wraz z komunikatem. Na przykład odwzorowanie tożsamości może pozwolid związad żądanie z bardziej specyficznymi rolami lub istniejącymi na tym poziomie przypisaniami (np. delegacja uprawnieo). 4. Komunikaty zostają przekazane do odpowiednich dostawców usług, którzy sami mogą udostępniad swoje systemy za pośrednictwem hubów integracyjnych. Terminy hub grupy, hub regionalny, hub agencji i ich funkcjonalnośd, opisana w powyższym przykładzie, służą wyłącznie do celów ilustracyjnych. Istnieje oczywiście wiele różnych sposobów budowy topologii systemu. Ogólna funkcjonalnośd huba może zostad rozproszona na wiele instancji huba, co pozwala na budowanie rozwiązao dopasowanych do określonych wymagao i ograniczeo. Usługi zarządzania tożsamością Zarządzanie tożsamością jest podzbiorem usług zarządzania tożsamością i bezpieczeostwa, świadczonych przez ogólny hub usług dla sektora publicznego. Umiejscowienie usług zarządzania tożsamością w tym kontekście przedstawiono na ilustracji 9. Ilustracja 9. Zarządzanie tożsamością w kontekście huba usług dla sektora publicznego RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 41

42 Usługi zarządzania tożsamością są odpowiedzialne za: początkową identyfikację użytkowników, po której (w niektórych przypadkach) następuje wygenerowanie poświadczeo użytkownika i powiązanie tych poświadczeo z uwierzytelnioną tożsamością, rejestrowanie użytkowników w usługach, zarządzanie kontami użytkowników i ich rejestracjami w usługach, nadawanie uprawnieo do działania w imieniu innej osoby w kontekście określonej osoby (proces nazywany zwykle delegacją). Szczegółowy opis sposobu realizacji tej funkcjonalności zamieszczono w dalszych sekcjach tego dokumentu. Podstawowy model tożsamości i zasady Sekcja ta zwiera definicję podstawowych encji modelu tożsamości, relacji pomiędzy nimi oraz opis reguł określających wszystkie aspekty zarządzania tożsamością w architekturze. Ogólny model zarządzania tożsamością powinien byd na tyle otwarty i elastyczny, by można go było dostosowad do różnych (obecnych i przyszłych) wymagao dotyczących różnych typów uwierzytelniania, odwzorowywania poświadczeo na identyfikatory użytkowników stosowane w poszczególnych usługach, delegowania uprawnieo itp. Podstawowe encje modelu tożsamości Poniżej zestawiono opis encji składających się na podstawowy model tożsamości: użytkownik (petent, wyborca) osoba, która musi zostad zidentyfikowana, uwierzytelniona i otrzymad autoryzację do korzystania z określonych usług. W ramach modelu użytkownicy reprezentowani są przez poświadczenia i tożsamośd; tożsamośd reprezentuje i identyfikuje użytkownika w systemie zarządzania tożsamością. Pojedynczy użytkownik może posiadad kilka niezależnych tożsamości, odpowiadających różnym pełnionym przez niego rolom w systemie lub grupom wydzielonych usług; poświadczenie informacje lub inne obiekty, których weryfikacja pozwala na ustalenie tożsamości przedstawiającego się nimi użytkownika. Z pojedynczą tożsamością może byd powiązane wiele różnych poświadczeo. Typowe przykłady poświadczeo to nazwa użytkownika wraz z hasłem, certyfikat cyfrowy itp.; usługa logiczny zbiór funkcjonalności biznesowej udostępniany przez dostawcę usług, charakteryzujący się spójnymi regułami dotyczącymi autoryzacji i dostępu do usługi przez użytkowników. Administracja publiczna może oferowad wiele niezależnych usług, różniących się regułami dostępu i wymaganymi poziomami uwierzytelnienia. Jedna usługa może także udostępniad zbiór funkcjonalności biznesowej oferowanej przez różne agencje warunkiem jest jasne ustalenie zakresu własności i odpowiedzialności za każdą usługę zagregowaną w ramach tej jednej usługi; rejestracja powiązanie tożsamości z określoną usługą, realizowane za pośrednictwem odpowiednich, specyficznych dla danej usługi atrybutów kontekstu (identyfikatorów). Prawidłowa i aktywna rejestracja uprawnia jej posiadacza (lub dobrze umocowanego reprezentanta) do dostępu do usługi w kontekście określonym przez identyfikatory; identyfikatory atrybuty informacyjne towarzyszące rejestracji, które jednoznacznie identyfikują i stanowią kontekst relacji tożsamości z daną usługą. Przykładami takich identyfikatorów mogą byd: numer identyfikacji podatkowej, krajowy numer ubezpieczenia, numer ubezpieczenia społecznego, numer rejestrowy przedsiębiorstwa, identyfikator płatnika podatku VAT, identyfikator płatnika podatku od nieruchomości, identyfikator dostawcy czy numer konta; grupa reprezentuje zbiór użytkowników współdzielących takie same rejestracje. Użytkownicy tacy często pełnią rolę reprezentantów organizacji; RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 42

43 rola szeroka kategoria tożsamości stosowana do określenia lub ograniczenia dostępu do odpowiednich usług dla wszystkich użytkowników w ramach tej tożsamości. Typowe przykłady ról to między innymi: osoba (obywatel) reprezentuje klientów usług administracji publicznej; organizacja (grupa) reprezentuje organizacje (firmy), w których wiele osób należących do jednej grupy może współdzielid tę samą rejestrację i działad w imieniu organizacji; pośrednik (agent, delegat) stały lub wyznaczony tymczasowo reprezentant osoby lub organizacji, uprawniony do działania w ich imieniu w kontekście określonej usługi; administracja publiczna osoby i systemy reprezentujące jednostki administracji publicznej, uprawnione do dostępu do określonych usług. Model tożsamości Na ilustracji 10. przedstawiono relacje pomiędzy wymienionymi powyżej encjami modelu tożsamości. Warto zauważyd, że: pojedynczy użytkownik może posiadad wiele poświadczeo; każdy zestaw poświadczeo odpowiada pewnej tożsamości, a jedna tożsamośd może byd identyfikowana wieloma zestawami poświadczeo; każda tożsamośd jest powiązana z jedną rolą, która określa zbiór usług dostępnych dla osoby posługującej się tą tożsamością; z jedną grupą może byd związane wiele tożsamości; grupa może posiadad wiele rejestracji w poszczególnych usługach; jedna rejestracja dotyczy tylko jednej usługi; każda rejestracja w usłudze ma przypisane określone identyfikatory określające kontekst relacji pomiędzy posiadaczem rejestracji a usługą. Ilustracja 10. Model tożsamości Separacja tożsamości od poświadczeo uwierzytelniania Oddzielenie tożsamości od poświadczeo uwierzytelniania to ważna zasada, od której zależy elastycznośd modelu. Uwierzytelnienie określonej tożsamości może byd związane z niezależną weryfikacją wielu poświadczeo tożsamości. Pozwala to na wygodne uwierzytelnianie użytkownika korzystającego z usług za pośrednictwem wielu kanałów dostępu dostępne technologie i schematy korzystania z poszczególnych kanałów dostępu mogą ograniczad możliwośd przedstawiania niektórych typów poświadczeo (na przykład brak czytników kart elektronicznych, możliwośd wprowadzania wyłącznie danych numerycznych itp.). RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 43

44 Obsługa wielu typów poświadczeo pozwala na rozwój i rozszerzanie istniejącego zestawu relacji (rejestracji) poprzez stopniową migrację do wyższych poziomów uwierzytelniania, zapewniających dostęp do szerszego zestawu usług. Migrację taką można zrealizowad minimalnymi nakładami pracy bez zakłócania działania istniejących usług. Odseparowanie poświadczeo od tożsamości pozwala także na uwierzytelnianie na podstawie poświadczeo zewnętrznych, obsługiwane na zewnątrz huba usług dla sektora publicznego. Daje to podstawę do obsługi uwierzytelniania stowarzyszonego i innych zaawansowanych scenariuszy zastosowao. Usługi uwierzytelniania mogą byd zapewniane przez różnych dostawców (w zależności od rodzaju uwierzytelnienia i jego wystawcy) przy jednoczesnym zachowaniu ogólności funkcji autoryzacji i odwzorowywania tożsamości na identyfikatory wykorzystywane przez różne usługi. Jest to możliwe dzięki przypisaniu wielu poświadczeo do jednej tożsamości. Obsługa uwierzytelniania stowarzyszonego Tworząc rozwiązanie perspektywiczne, które bez większych modernizacji powinno funkcjonowad przez wiele lat, warto już na początku prac projektowych zastanowid się nad wdrożeniem modelu uwierzytelniania stowarzyszonego. Innymi słowy warto założyd, że system będzie korzystał z wielu dostawców poświadczeo i tożsamości. Aby to osiągnąd, dobrze jest oddzielid samo uwierzytelnianie (implementowane natywnie w istniejących i przyszłych produktach i technologiach) od specyficznej funkcjonalności, takiej jak odwzorowywanie tożsamości użytkowników na identyfikatory użytkowników stosowane przez usługi (odwzorowanie z pewnością jest specyficzną relacją, wymagającą obsługi za pomocą specjalnie zaprojektowanego do tego celu procesu). Uwierzytelnianie stowarzyszone powinno byd oparte na istniejących obecnie standardach branżowych, takich jak WS-Federation, WS-Trust itd. (więcej informacji na temat tych standardów można znaleźd w zasobach wymienionych w części Odsyłacze, listy kontrolne i dalsze informacje, będącej ostatnią częścią tego opracowania). Takie podejście pozwoli zagwarantowad interoperacyjnośd pomiędzy różnymi platformami i dostawcami oraz umożliwi wykorzystanie produktów komercyjnych wspierających te standardy. Więcej informacji na temat proponowanej przez Microsoft interoperacyjnej architektury zarządzania cyfrową tożsamością, opartej na założeniu, że każda osoba może posługiwad się wieloma cyfrowymi tożsamościami opartymi na różnych technologiach, implementacjach i przyznawanymi przez różnych dostawców, można znaleźd w artykule pod adresem Usługi Web Service Funkcjonalnośd podsystemu zarządzania tożsamościami w hubie usług dla sektora publicznego udostępniania jest w postaci zestawu usług Web Service, które można podzielid na następujące kategorie: identyfikacja początkowa i rejestracja; uwierzytelnianie; autoryzacja i odwzorowywanie tożsamości; zarządzanie użytkownikami i rejestracjami. Wzorzec ogólny wymienni dostawcy Implementacja usług tożsamości oparta jest na jednym, ogólnym wzorcu, który przedstawiono na ilustracji 11. Na implementację tę składa się wspólna, zunifikowana czołowa usługa Web Service oraz pewna liczba wymiennych dostawców, będących implementacjami dowolnych z następujących sposobów obsługi: interfejs łączący z zewnętrznym dostawcą usług, który może korzystad ze zdalnych danych referencyjnych, przetwarzanie wewnętrzne przez reguły znajdujące się w kodzie programu, bez potrzeby sięgania do danych referencyjnych, RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 44

45 wewnętrzny dostawca usługi, który lokalnie przechowuje niezbędne dane referencyjne. Ilustracja 11. Ogólny wzorzec wymiennych dostawców Możliwe jest stosowanie wielu instancji dostawcy tego typu, na przykład w celu realizacji różnych typów walidacji lub dostępu do różnych dostawców zewnętrznych. Zakłada się oparcie wszystkich interakcji zewnętrznych na standardowych usługach Web Service, jednak tam, gdzie nie jest to możliwe, można przygotowad komponent-interfejs, który tłumaczy wywołania na protokół zrozumiały przez dostawcę. Początkowe zgłaszanie użytkowników Jak wspomnieliśmy w sekcji Początkowa identyfikacja użytkowników rozdziału RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 45

46 Powszechne problemy dotyczące architektury tego opracowania, z tworzeniem rozwiązao dla sektora publicznego na wielką skalę związane są liczne problemy. Proces początkowego zgłaszania (identyfikacji i rejestracji) użytkowników musi byd efektywny, bezpieczny, a jednocześnie powinien wymagad jak najmniejszego nakładu pracy ludzkiej po stronie dostawcy usług. Idealnym rozwiązaniem byłoby zgłaszanie samoobsługowe, realizowane w całości przez samych użytkowników. Aby system pozwalał na dopasowanie do ewoluujących i coraz bardziej zróżnicowanych wymagao, musi zapewniad elastycznośd definiowania specyficznych reguł i procesów dla każdej z usług z osobna. Początkowe uwierzytelnianie oparte na wiedzy Zważywszy na specyficzne dla rozwiązao dla sektora publicznego wymagania, takie jak duża liczba potencjalnych użytkowników, brak wcześniejszych doświadczeo z systemami elektronicznymi i mała częstotliwośd interakcji, coraz większą popularnośd zyskuje pomysł nazywany uwierzytelnianiem opartym na wiedzy (Knowledge Based Authentication KBA). Mówiąc krótko, w modelu KBA do weryfikacji tożsamości użytkownika wykorzystywane są dostarczone przez niego informacje. Mogą to byd ogólne informacje związane z użytkownikiem (identyfikujące użytkownika) albo z kontekstem określonej usługi (identyfikacja płatnika podatku od nieruchomości na podstawie posiadanych przez niego nieruchomości). Na ilustracji 12. przedstawiono ogólną architekturę systemu uwierzytelniania na podstawie wiedzy. Obieg informacji, oznaczony na ilustracji kolejnymi liczbami, przebiega następująco: 1. Użytkownik przedstawia zestaw informacji (faza ta poprzedzona jest zadaniem użytkownikowi zestawu pytao). 2. Reguły KBA porównują przedstawione informacje (odpowiedzi na zadane pytania) z danymi referencyjnymi. Dane te mogą byd przechowywane lokalnie lub zdalnie. 3. Odpowiedź systemu zawiera informację na temat wyniku uwierzytelnienia (pozytywny lub negatywny) oraz dane dodatkowe na przykład unikalny identyfikator użytkownika, ustalony w procesie porównywania danych przedstawionych przez użytkownika. Identyfikator nie musi byd elementem tych informacji. Ilustracja 12. Ogólna architektura usługi uwierzytelniania opartego na wiedzy RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 46

47 Uwaga szczegółowe informacje na temat uwierzytelniania opartego na wiedzy można znaleźd w prezentacji KBA Applicability to e-government, której autorami są Mindy Rudell, Dick Stewart, Robin Medlock i Angel Rivera. Prezentacja dostępna jest pod adresem %20KBA%20Applicability%20to%20e-Gov.pdf Wybór odpowiedniego zestawu informacji dla KBA Wiarygodnośd uwierzytelniania KBA zależna jest od rodzaju wybranego zestawu informacji uwierzytelniających oraz od sposobu realizacji procesu walidacji. Typowe wymagania dotyczące doboru tych informacji to: Informacje są bezpośrednio związane z użytkownikiem i jednoznacznie go identyfikują. Informacją taką nie jest na przykład kod pocztowy, ale numer PESEL lub numer ubezpieczenia społecznego jest. Informacje są dobrze znane użytkownikowi, ale nie są łatwo dostępne dla innych osób. Informacją taką nie jest na przykład numer rejestrowy firmy (umieszczany na papierze firmowym i wizytówkach, dostępny praktycznie dla każdego). Informacjami takimi mogą byd na przykład specyficzne dane z ostatniej faktury numer referencyjny lub ilośd zamówionego towaru (dane takie znane są zwykle wyłącznie stronie zainteresowanej). Możliwośd odgadnięcia poprawnej odpowiedzi jest ograniczona zakres wartości jest na tyle szeroki, że wypróbowanie wszystkich możliwych wartości jest niewykonalne, a odgadnięcie poprawnej wartości na podstawie innych, znanych danych jest niemożliwe (należy na przykład unikad stosowania numerowania kolejnymi liczbami). Wykorzystanie do uwierzytelniania informacji podlegających okresowym zmianom (na przykład kwota ostatniej płatności) dodatkowo zmniejsza prawdopodobieostwo odgadnięcia, a więc dane takie stanowią lepsze zabezpieczenie niż dane niezmienne. Warto podkreślid, że powyższe wymagania dotyczą zbioru informacji jako całości. Innymi słowy, różne informacje, z których każda oddzielnie nie zapewnia dostatecznego poziomu wiarygodności identyfikacji, połączone razem mogą dad wysoką pewnośd i bezpieczeostwo uwierzytelnienia. Logika weryfikująca i dane referencyjne Gdy użytkownik przedstawi informacje uwierzytelniające, trzeba je zweryfikowad. Weryfikacja zwykle odbywa się na podstawie pewnych danych referencyjnych z wykorzystaniem odpowiednich reguł porównujących. Można stosowad różne transformacje pozwalające na porównywanie przybliżone na przykład nie uwzględniad wielkości liter, ignorowad znaki niedrukowane (np. spacje), dokonywad częściowego porównywania danych takich jak kod pocztowy i inne dane adresowe czy dopuszczad stosowanie skrótów i różnych wariantów pisowni. Ogólnie rzecz biorąc, trudno jest jednak opracowad zadowalające metody porównywania danych, które mogą występowad w wielu różnych formatach (tak jak na przykład dane adresowe), zatem zalecane jest wykorzystywanie danych o bardziej przewidywalnych formatach. Reguły porównujące mogą także sprawdzad zależności pomiędzy wprowadzonymi informacjami. Można na przykład uznad, że wystarczające jest udzielenie poprawnej odpowiedzi na 3 z 4 pytao. Ponieważ reguły porównujące mogą byd dostosowywane do potrzeb, i jeśli jest zachodzi taka koniecznośd można stosowad różne reguły dla różnych rodzajów uwierzytelniania i różnych usług, pozwalają na dopasowanie systemu do wielu różnych wymagao zarówno obecnych, jak i tych, które dopiero zostaną zdefiniowane. Jest to istotne dla elastyczności rozwiązania i stanowi jedno z podstawowych założeo architektury platformy (zgodnie z opisem w sekcji Elastycznośd i sprawnośd rozdziału RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 47

48 Powszechne problemy dotyczące architektury wcześniej w tym dokumencie). Dane referencyjne wykorzystane do walidacji mogą byd albo lokalne (dostarczone przez właściciela i przechowywane w hubie), albo zdalne (hub w celu weryfikacji informacji przedstawionych przez użytkownika odwołuje się do właściciela danych, a same dane pozostają u właściciela). Możliwe jest także skonstruowanie reguł sprawdzających, opierających się wyłącznie na informacjach przedstawionych przez użytkownika bez potrzeby korzystania z danych referencyjnych. W takim wypadku wynik uwierzytelnienia zależy od spójności całego zestawu danych. Jedna z przedstawianych informacji może byd na przykład wynikiem jakiejś transformacji pozostałych danych, podobnie jak w przypadku cyfr kontrolnych na kartach kredytowych jednak wykorzystana transformacja musi byd bardziej bezpieczna. W przypadku weryfikacji bez wykorzystania danych referencyjnych, w skład zestawu informacji przedstawianych przez użytkownika musi także wchodzid unikalny identyfikator użytkownika lub informacje te muszą wystarczad do ustalenia (np. obliczenia) identyfikatora użytkownika. Na ilustracji 13. przedstawiono trzy różne sposoby walidacji, możliwe do przeprowadzenia z wykorzystaniem wymiennego dostawcy, takiego jak usługa KBA. A dane referencyjne przechowywane są zdalnie, reguły KBA w celu walidacji użytkownika odwołują się do dostawcy danych, B logika walidacyjna jest niezależna od jakichkolwiek danych referencyjnych, C dane referencyjne przechowywane są wewnątrz huba, reguły walidacyjne odwołują się do nich lokalnie. Ilustracja 13. Różne rodzaje walidacji, korzystające z lokalnych i zdalnych danych referencyjnych Ogólna architektura huba obsługuje wymienne moduły walidacji dowolnego typu. Decyzja co do tego, który moduł należy zastosowad, zależy od wielu czynników. Najważniejsze z nich to: czas odpowiedzi operacji walidacji przechowywanie danych referencyjnych wewnątrz huba pozwala na przyspieszenie walidacji. Odwołania z huba do zdalnego magazynu RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 48

49 danych mogą wprowadzad znaczne opóźnienia, co może mied negatywny wpływ na wydajnośd i ocenę systemu przez użytkownika; dostępnośd przechowanie danych referencyjnych wewnątrz huba zapewnia niezależnośd procesu weryfikacji od innych systemów, dzięki czemu dostępnośd procesu walidacji jest równa dostępności huba. Oparcie walidacji na zdalnych danych referencyjnych uzależnia dostępnośd całego rozwiązania od dostępności systemu zdalnego; objętośd danych rozmiar danych referencyjnych może byd znaczny powinno byd to uwzględnione podczas planowania wydajności systemu. Jeśli z usługi korzystad będzie tylko niewielka częśd użytkowników, przechowywanie wewnątrz huba kopii danych referencyjnych całej społeczności może byd zbyt drogie i zbyt kłopotliwe; uaktualnianie danych referencyjnych dane referencyjne przechowywane wewnątrz huba muszą byd stale uaktualniane na podstawie ich źródła. W zależności od szybkości zmian zachodzących w tych danych, objętośd zmian danych dotyczących wszystkich potencjalnych użytkowników usługi może byd dośd duża. Korzystanie z danych zdalnych, pozostających u ich właściciela, eliminuje potrzebę aktualizowania danych w hubie; problemy dotyczące poufności danych prawodawstwo niektórych krajów (na przykład Portugalii) zabrania przechowywania danych specyficznych dla usługi poza systemami administracji publicznej udostępniającymi tę usługę. Przechowywanie danych referencyjnych w hubie centralnym jest tam niemożliwe niezależnie od wszelkich innych czynników czy możliwości technicznych. Wybór najlepszego mechanizmu walidacji i miejsca przechowywania danych referencyjnych może byd różny dla różnych dostawców usług. Pozyskiwanie informacji do celów uwierzytelniania opartego na wiedzy Informacje przedstawiane przez użytkowników do celów uwierzytelniania opartego na wiedzy mogą byd danymi znanymi przez tych użytkowników lub danymi, które uzyskali oni w wyników innych interakcji z dostawcą usług (na przykład w korespondencji lub wraz z rachunkiem). Mogą to byd również informacje przekazane specjalnie do celu pierwszego uwierzytelnienia elektronicznego. Możliwe jest także powiązanie procesu pozyskania niezbędnych informacji z jakąś procedurą, akredytacją lub weryfikacją dokumentów (przedstawianych zdalnie za pośrednictwem poczty elektronicznej lub osobiście). Uwierzytelnianie oparte na wiedzy to ogólny mechanizm, niezależny od dokładnego sposobu pozyskania niezbędnych danych. Realizacja procesów uwierzytelniania odbywa się poza samym hubem, może byd różna dla różnych usług i może byd łączona z innym, zewnętrznym procesem. Skoncentrowane na usługach podejście do zgłaszania użytkowników Jak wspomnieliśmy w sekcji Początkowa identyfikacja użytkowników we wcześniejszym rozdziale RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 49

50 Powszechne problemy dotyczące architektury, opracowanie metody początkowej identyfikacji użytkowników o wiarygodności na poziomie akceptowalnym przez wszystkie usługi jest często bardzo trudne. Aby zapewnid niezbędną elastycznośd i możliwośd adaptacji do zróżnicowanych wymagao, stawianych przez obecnych i przyszłych dostawców usług, preferowane jest przeprowadzanie początkowej identyfikacji użytkowników niezależnie dla każdej usługi. Pozwala to na definiowanie informacji uwierzytelniających, reguł walidacji i danych referencyjnych osobno dla każdej usługi i zupełnie niezależnie od innych usług. Takie specyficzne dla poszczególnych usług uwierzytelnianie początkowe może byd dodatkiem do jakiejś procedury wstępnej walidacji użytkownika jako osoby w sensie bardziej ogólnym (w oderwaniu od usług). Można też całkowicie zrezygnowad z ogólnej identyfikacji użytkownika każda usługa będzie identyfikowała użytkowników niezależnie, bez relacji zaufania do innych usług. W tym drugim wypadku rejestracja użytkownika w systemie zależy od pomyślnej początkowej identyfikacji użytkownika przez co najmniej jedną usługę. Takie rozwiązanie jest przydatne w krajach, w których nie ustalono ogólnego identyfikatora obywateli i identyfikacja początkowa musi byd oparta na danych referencyjnych i procedurach walidacji zdefiniowanych przez dostawców usług. Uwaga chociaż możliwe jest rejestrowanie użytkowników z pominięciem walidacji początkowej i późniejsze wiązanie tożsamości z usługami, należy unikad takich rozwiązao. Gdy nie ma wiarygodnego sposobu identyfikacji początkowej, trudno uchronid hub przed atakami typu DoS (Denial of Service) polegającymi na rejestrowaniu dużych ilości fałszywych użytkowników (bez walidacji przez jakiekolwiek usługi) nie istnieje wtedy żaden mechanizm, który pozwoliłby na odróżnienie rejestracji fałszywej od rejestracji prawdziwego użytkownika. Działania takie mogą ograniczyd objętośd dostępnej przestrzeni przechowywania danych i moc obliczeniową, co może negatywnie wpłynąd na dostępnośd systemu i znacznie podnieśd koszty bieżące. Podejście skoncentrowane na usługach wymaga przeprowadzania walidacji przed rejestracją użytkownika, przez co zapewnia lepsze bezpieczeostwo. Pozwala także na wdrożenie dodatkowych procedur aktywacji, zależnych od danych udostępnionych przez usługi (na przykład dane adresowe), co w przeciwnym wypadku może nie byd możliwe. Szczegółowe rozważania na temat możliwych rozwiązao aktywacji przedstawiono w sekcji Aktywacja zgłoszenia i rejestracji w dalszej części tego opracowania. Rejestracja w usługach i odwzorowywanie tożsamości Po udanej identyfikacji początkowej użytkownika w kontekście określonej usługi, dostępny zestaw unikalnych i specyficznych dla tej usługi identyfikatorów użytkownika pozwala na zarejestrowanie użytkownika w usłudze. Tożsamośd ogólna pozostaje przezroczysta i nie jest widoczna dla dostawcy usług jest ona odwzorowywana na identyfikatory zrozumiałe dla danej usługi. Obiekt rejestracji może na przykład powiązad tożsamośd Jana Kowalskiego z usługą urzędu za pośrednictwem identyfikatora przydzielonego przez tę usługę i z usługą podatkową za pośrednictwem numeru identyfikacji podatkowej i innych danych. Dzięki zapamiętaniu odpowiedniego zbioru unikalnych identyfikatorów, specyficznych dla danej usługi jako atrybutów rejestracji w tej usłudze, możliwe jest w czasie wszystkich późniejszych uwierzytelnieo i autoryzacji użytkownika odwzorowanie tożsamości ogólnej na tożsamośd specyficzną dla usługi. Odwzorowywanie tożsamości to jedna z unikatowych, dodatkowych funkcji zapewnianych przez hub usług dla sektora publicznego. Nawet jeśli mechanizmy uwierzytelniania zostaną przeniesione całkowicie na zewnątrz huba (innymi słowy, informacje na temat tożsamości użytkowników nie będą w żaden sposób przechowywane wewnątrz huba, a hub będzie całkowicie opierał się na zewnętrznych dostawcach uwierzytelniania), odwzorowywanie zweryfikowanej tożsamości ogólnej na odpowiadające jej identyfikatory specyficzne dla usług gwarantuje, że usługa docelowa otrzyma zrozumiałe dla siebie identyfikatory użytkownika. Podejście to jest zgodne z regułami zarządzania tożsamością (zasady minimalnego zakresu ujawniania niezbędnych informacji i tożsamości ukierunkowanej), opisanymi wcześniej w tym opracowaniu w rozdziale RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 50

51 Powszechne problemy dotyczące architektury. Aktywacja zgłoszenia i rejestracji Początkowa identyfikacja oparta na wiedzy może zostad uzupełniona dodatkowymi procedurami, podnoszącymi poziom bezpieczeostwa zapewniany przez identyfikowanie użytkowników na podstawie wprowadzonych przez nich informacji (i niskie prawdopodobieostwo, że jakiś użytkownik także może znad te informacje i wykorzystad je do podszycia się pod innego użytkownika). Dodatkowe procedury mogą byd uruchamiane po udanej walidacji początkowej opartej na wiedzy i mogą obejmowad wysłanie do użytkownika dodatkowych informacji, które ten musi wprowadzid do systemu w celu ukooczenia procesu weryfikacji. Typowa implementacja (zastosowano ją w Wielkiej Brytanii i innych krajach) polega na pobraniu od dostawcy usług adresu korespondencyjnego użytkownika i wysłaniu na ten adres jednorazowego kodu aktywacyjnego. Rejestracja w usłudze (utworzona w stanie oczekiwanie na aktywację) zostaje aktywowana, dając pełny dostęp do funkcjonalności dopiero po przedstawieniu hubowi otrzymanego kodu aktywacyjnego. Dzięki dodatkowej weryfikacji opartej na sprawdzeniu, czy użytkownik otrzymał kod aktywacyjny, procedura ta charakteryzuje się wyższym poziomem bezpieczeostwa. Udany atak przez osobę podszywającą się pod użytkownika wymagałby nie tylko pozyskania i przedstawienia poprawnych informacji do celów uwierzytelnienia w oparciu o wiedzę, ale także przechwycenia przesyłki pocztowej lub ingerencji w proces jej dostarczenia. Ze względu na wysoką wiarygodnośd przedsiębiorstw pocztowych i różne regulacje prawne (w USA na przykład wszelkie próby zakłócenia dostarczania poczty są przestępstwami federalnymi o wysokim wymiarze kary), dodatkowy etap weryfikacji znacząco podnosi ogólne bezpieczeostwo rozwiązania. Do przesłania kodu aktywacyjnego można też stosowad inne kanały komunikacyjne, takie jak poczta elektroniczna, telefon, wiadomośd SMS itp. Pojawia się tu jednak problem wiarygodności adresu docelowego. O ile większośd dostawców usług przechowuje adresy korespondencyjne swoich klientów, to inne dane kontaktowe mogą byd albo niedostępne, albo nieaktualne. Wybierając metodę komunikacji należy dokładnie rozważyd potencjalne zagrożenia i ograniczyd możliwości wykorzystania danego kanału do podszycia się pod użytkownika. Jednym ze sposobów podniesienia wiarygodności adresu poczty elektronicznej jest korzystanie z adresów, które zostały już wcześniej zweryfikowane na przykład adresów poczty elektronicznej podanych w certyfikatach cyfrowych użytkowników. Dodatkowy etap aktywacji może pomóc w podniesieniu bezpieczeostwa, jednak ma też pewne wady: Dostawca usługi musi dysponowad wiarygodnymi danymi adresowymi użytkowników. Rozpoczęcie dodatkowego etapu weryfikacji wymaga przesłania tych danych do huba (masowo lub pojedynczo w zależności od sposobu prowadzenia rejestracji). Konieczne jest zakupienie i wdrożenie lokalnie lub u zewnętrznego dostawcy urządzeo do bezpiecznego drukowania i rozsyłania kodów aktywacyjnych (w sposób podobny do stosowanego przez banki przy rozsyłaniu PIN-ów do kart płatniczych). Nie wszystkie jednostki, które będą korzystały z huba, mogą pozwolid sobie na zakup takich urządzeo konieczne jest udostępnienie tych urządzeo w ramach centralnej, współdzielonej infrastruktury dla sektora publicznego. Bezpieczne sposoby przekazywania kodów aktywacyjnych i danych adresowych do jednostki zajmującej się drukowaniem i rozsyłką dane te są ściśle poufne i powinny byd chronione odpowiednimi środkami technicznymi i procedurami operacyjnymi. Wprowadzenie opóźnienia druk kodów aktywacyjnych i rozsyłka ich drogą pocztową wydłuża okres pomiędzy identyfikacją początkową a aktywacją rejestracji w usłudze nawet o kilka dni. Może to byd niewygodne dla potencjalnych użytkowników szczególnie wtedy, gdy rejestrują się oni do usług dla sektora publicznego tuż przed jakimś wyznaczonym terminem i dowiadują się, że z powodu oczekiwania na aktywację nie będą RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 51

52 mogli ukooczyd określonej operacji na czas (na przykład nie złożą formularza podatkowego). Istnieje możliwośd wyeliminowania opóźnieo przy jednoczesnym zachowaniu zalet dodatkowej fazy aktywacji. W urzędzie podatkowym w Wielkiej Brytanii i w kilku innych instytucjach z powodzeniem udało się wdrożyd zmodyfikowany model aktywacji, zwany aktywacją natychmiastową. Polega on na wygenerowaniu kodów aktywacyjnych i przekazaniu ich potencjalnym użytkownikom jeszcze zanim zdecydują się zarejestrowad w usłudze. Można połączyd obydwie fazy początkowej identyfikacji użytkowników w oparciu o wiedzę i żądad podania kodu aktywacyjnego wraz z pozostałymi informacjami podczas rejestracji. Przesłany użytkownikowi kod aktywacyjny przechowywany jest wtedy wraz z danymi referencyjnymi, a procedura weryfikacyjna, oprócz sprawdzenia informacji przedstawionych przez użytkownika, sprawdza także podany przez niego kod. Jeżeli użytkownik poda prawidłowy kod, system może od razu aktywowad rejestrację i odpowiednie usługi natychmiast stają się dostępne dla użytkownika. Zmiana kolejności procedur weryfikacyjnych (rozsyłka kodów aktywacyjnych nadal ma miejsce, ale odbywa się przed rejestracją użytkownika w usłudze) pozwala na uzyskanie tak samo wysokiego poziomu bezpieczeostwa i uniknięcie opóźnieo. Rozsyłka kodów aktywacyjnych z wyprzedzeniem działa także jako swoiste zaproszenie do skorzystania z usług i przyczynia się do podniesienia świadomości społecznej dostępności usług dla sektora publicznego, zwiększając także popyt na te usługi. Ogólny dostawca poświadczeo i uwierzytelniania Funkcjonalnośd zarządzania tożsamością w hubie oparta jest na usługach świadczonych przez jednego lub kilku dostawców tożsamości. Niektórzy z dostawców mogą byd dostawcami zewnętrznymi. W takich wypadkach hub w celu weryfikacji poświadczeo przedstawionych przez użytkownika musi odwoład się do dostawcy zewnętrznego. Hub może całkowicie opierad się na zewnętrznych dostawcach uwierzytelniania i nie utrzymywad własnej wewnętrznej bazy poświadczeo, ale może też korzystad z wewnętrznego dostawcy poświadczeo i uwierzytelniania. Dzięki temu użytkownicy, którzy nie ustalili relacji z żadnym z dostawców zewnętrznych, mogą zarejestrowad się w systemie i uzyskad poświadczenia wygenerowane przez hub. Aby system mógł byd dostosowywany do stale zmieniających się wymogów związanych z różnymi typami poświadczeo, ogólny dostawca poświadczeo w hubie musi zapewniad elastyczną obsługę wydawania takich poświadczeo. Reguły mogą byd konfigurowane albo statycznie w czasie instalacji dostawy, albo dynamicznie poprzez zmianę parametrów podczas pracy. Oto przykładowe typy poświadczeo: identyfikator użytkownika wraz z hasłem dostawca poświadczeo generuje identyfikator użytkownika, który jest unikalny w obrębie huba. Format i długośd identyfikatora są z góry ustalone. Hasło jest albo wybierane przez użytkownika, albo generowane przez dostawcę. Tu także mają zastosowanie reguły narzucające format i odpowiednią złożonośd hasła. Do poprawnego uwierzytelnienia użytkownika niezbędne jest podanie pełnej i poprawnej kombinacji identyfikatora i hasła; zapamiętywane słowa (z podpowiedzią lub bez podpowiedzi) mechanizm ten można połączyd z nazwą i hasłem użytkownika w celu zapewnienia wyższego poziomu bezpieczeostwa. Podanie słów może byd wymagane tylko podczas przeprowadzania określonych operacji (na przykład zresetowanie hasła użytkownika) albo zawsze. Często stosuje się pytania o fragment zapamiętanego słowa na przykład o losowo wybrane znaki (trzecia i piąta litera, numery liter losowane są za każdym razem) lub wiele par pytao i odpowiedzi i zadanie tylko jednego, losowanego za każdym razem pytania; certyfikaty ogólny dostawca poświadczeo w hubie może wydawad cyfrowe certyfikaty dla użytkowników. O ile realizacja techniczna takiego systemu jest możliwa, to logistyka i zarządzanie nim wymagają głębokiego namysłu. Obsługa certyfikatów bez odpowiedniego doświadczenia i zaplecza technicznego może byd nie lada wyzwaniem. W większości krajów, w których wdrożono huby dla sektora publicznego, procedury wydawania i obsługi certyfikatów postanowiono oprzed na usługach świadczonych przez akredytowanych i sprawdzonych dostawców zewnętrznych. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 52

53 Wybierając rodzaj poświadczeo i reguły zarządzania poświadczeniami warto rozważyd następujące kwestie: wcześniejsze ograniczenia i wymagania, takie jak zalecenie wykorzystania jako identyfikatorów użytkownika zamiast identyfikatorów generowanych losowo ustalonych wcześniej unikalnych identyfikatorów (na przykład numer PESEL); skala zakres i rodzaj użytych identyfikatorów powinny pozwalad na wydanie unikalnych identyfikatorów w liczbie wystarczającej do obsłużenia potencjalnej liczby użytkowników; bezpieczeostwo długośd i złożonośd identyfikatora oraz hasła powinny byd na tyle duże, by nieopłacalne były ataki metodą przeglądu zupełnego (ang. brute force, próba odgadnięcia identyfikatora i hasła poprzez wypróbowanie wszystkich możliwych kombinacji); wygoda posługiwanie się identyfikatorami, hasłami i innymi informacjami powinno byd łatwe dla użytkowników (w idealnej sytuacji powinny dad się łatwo zapamiętad). Im dłuższe i bardziej złożone identyfikatory i hasła, tym większe prawdopodobieostwo, że użytkownicy będą musieli je zapisywad, co przyniesie skutek odwrotny do tego, który miał zostad osiągnięty poprzez podniesienie złożoności haseł. W tym obszarze niezbędny jest kompromis między wygodą a bezpieczeostwem; kanały dostępu sposób doboru identyfikatorów i haseł może ograniczyd stosowanie niektórych kanałów dostępu. Na przykład automatyczne systemy obsługi klienta (IVR), systemy telefoniczne, telefony komórkowe oraz telewizja interaktywna (IPTV) pozwalają na wprowadzanie wyłącznie liczb. Tu także uzyskany poziom bezpieczeostwa zależy od kompromisu pomiędzy zakładanym przeznaczeniem systemu a wygodą użytkowania. Byd może warto zastanowid się nad wprowadzeniem różnych zestawów poświadczeo dla różnych kanałów dostępu oraz zróżnicowaniem zestawów usług udostępnianych za pośrednictwem różnych kanałów w zależności od poziomu bezpieczeostwa zapewnianego przez dany kanał. Zarządzanie użytkownikami i rejestracjami W tej sekcji omówiono funkcje zarządzania użytkownikami i ich rejestracjami oraz zagadnienia bieżącego utrzymywania kont użytkowników, rejestracji w usługach, umowy, delegacje uprawnieo itp. Dodawanie i usuwanie użytkowników Oprócz procesu pełnego początkowego uwierzytelniania i zgłaszania użytkowników, opisanego w sekcji Początkowe zgłaszanie użytkowników w tym rozdziale, system może także obsługiwad inne sposoby zgłaszania użytkowników. Na przykład zarejestrowani użytkownicy mogą działad w roli mentorów i zgłaszad nowych użytkowników według procedury uproszczonej. Aby odróżnid ten proces od pełnego uwierzytelnienia początkowego, procedurę uproszczoną będziemy nazywad procesem dodawania lub wprowadzania nowych użytkowników. Użytkownicy wprowadzani w ten sposób do systemu współdzielą to samo zgłoszenie i nie muszą ustanawiad odrębnych, niezależnych zgłoszeo. Funkcjonalnośd ta jest najbardziej użyteczna w organizacjach, w których wielu użytkowników działa jednocześnie w imieniu całej organizacji oraz w przypadku, gdy wielu użytkowników korzysta z tego samego kontekstu usługi (posiada takie same identyfikatory specyficzne dla usługi). W wielu dotychczasowych implementacjach hubów usług dla sektora publicznego zastosowanie takiej funkcjonalności ograniczano jedynie do ról organizacji. Jednakże w przypadku zastosowania szerszego i bardziej wszechstronnego modelu, funkcjonalnośd taką można udostępnid także dla innych ról i na przykład pozwolid osobom na wprowadzanie innych użytkowników i tworzenie grupy osób współdzielących to samo zgłoszenie. Tożsamośd nowo wprowadzonego użytkownika (potwierdzana na podstawie istniejących lub nowo utworzonych poświadczeo) jest powiązana z tożsamością użytkownika, który wprowadził tę nową tożsamośd. W momencie wprowadzenia pierwszego użytkownika tworzona jest grupa RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 53

54 użytkowników. Kolejni wprowadzani użytkownicy dołączani są do istniejącej grupy, a ich tożsamości łączone są z tożsamościami wszystkich pozostałych użytkowników. Pozwala to na pominięcie całego procesu uwierzytelnienia opartego na wiedzy w relacji do jednej lub kilku usług oraz upraszcza i znacznie przyspiesza całą procedurę. W czasie wprowadzania nowego użytkownika, mentor może określid poziom jego uprawnieo: użytkownik pełnoprawny nowy użytkownik dołącza do grupy użytkowników równorzędnych, posiadających takie same uprawnienia jak mentor włącznie z możliwością wprowadzania nowych użytkowników i współdzielących wszystkie obecne i przyszłe rejestracje w usługach, utworzone przez dowolnego członka grupy; użytkownik-asysytent (konto ograniczone albo podrzędne) nowy użytkownik posiada bardzo ograniczone uprawnienia, które są kontrolowane przez mentora. Użytkownik taki musi zostad jawnie przypisany do wszystkich zgłoszeo, do których ma mied dostęp. Użytkownicy należący do grupy mogą przeglądad listę użytkowników tej grupy i usuwad z niej innych użytkowników. Użytkownicy o ograniczonych uprawnieniach widoczni są wyłącznie dla ich mentora i tylko on może nimi zarządzad. W przypadku usunięcia konta mentora, użytkownicy ograniczeni stają się widoczni dla wszystkich użytkowników należących do grupy. Dowolny z tych użytkowników może przypisad ich do nowego mentora. Mechanizm taki jest bardzo wygodny w dużych organizacjach, liczących wielu użytkowników i asystentów pozwala uniknąd powtarzania procesu wprowadzania asystentów, gdy ich sponsor odchodzi z organizacji lub zmienia pełnioną rolę. Użytkownicy mogą także samodzielnie usuwad (wyrejestrowywad) swoje konta - niezależnie od tego, czy należą do grupy, czy nie. Tworzenie, aktywacja i usuwanie rejestracji Rejestracja w nowych usługach odbywa się zgodnie z procesem uwierzytelniania opartym na wiedzy, opisanym w sekcji Początkowe zgłaszanie użytkowników wcześniej w tym rozdziale. Rejestracja w każdej usłudze rządzi się własnymi zasadami i jest całkowicie niezależna od rejestracji w pozostałych usługach. Uwaga rejestracje w usługach tworzone przez niezależnych użytkowników zawsze pozostają niezależne od siebie, nawet jeśli dotyczą tego samego kontekstu usługi (korzystają z tych samych identyfikatorów specyficznych dla usługi). Nie istnieje żadna wiarygodna metoda wykrywania współdzielenia określonych rejestracji czy przyłączenia takiego użytkownika do grupy. Fakt, że dwaj użytkownicy uzyskują dostęp do jednej usługi na podstawie tego samego identyfikatora, nie oznacza wcale, że użytkownicy ci chcą współdzielid pozostałe rejestracje w ramach grupy. W przypadkach, gdy współdzielenie rejestracji jest pożądane, nowi użytkownicy zamiast niezależnie rejestrowad się w systemie i w poszczególnych usługach powinni byd wprowadzani za pomocą funkcji dodawania użytkownika. Dzięki temu cała grupa będzie mogła współdzielid wszystkie rejestracje. Aktywacja rejestracji w nowej usłudze odbywa się w taki sam sposób poprzez jawną opóźnioną aktywację z wykorzystaniem kodu aktywacyjnego lub natychmiastowo o ile usługa pozwala na aktywację natychmiastową, a użytkownik przedstawił prawidłowy kod aktywacyjny. Użytkownicy, którzy utworzyli własne rejestracje, mogą nimi zarządzad i usuwad je, podobnie jak każdy użytkownik należący do ich grupy. Przypisywanie (delegowanie) uprawnieo agenci Użytkownicy mogą przypisywad (delegowad) swoje uprawnienia innym użytkownikom w odniesieniu do określonych rejestracji w usługach. Ustanowieni w ten sposób agenci mogą działao w imieniu użytkownika, który przypisał im prawa. Jednym z przykładów zastosowania tej techniki jest autoryzacja księgowych i agentów podatkowych do przesyłania dokumentów w imieniu ich mocodawcy, którym może byd osoba lub organizacja. W zależności od usługi docelowej można wymusid stosowanie określonych reguł, na przykład: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 54

55 Przypisanie (delegacja) uprawnieo może odbywad się na zasadzie wyłączności po przydzieleniu agentowi rejestracji do usługi, mocodawca traci prawo do działania w kontekście tej samej rejestracji do momentu usunięcia agenta (wycofania przypisania). Aby móc działad jako agent, użytkownik musi zarejestrowad się w określonej usłudze agenta. Jest tak najczęściej w przypadkach, w których wymagane jest zweryfikowanie określonych kwalifikacji zawodowych lub akredytacji. Reguły i procedury uwierzytelniania początkowego mogą w takim przypadku obejmowad niezbędną weryfikację przedstawienie dokumentów, uzyskanie kodu aktywacyjnego itp. Relacje przypisania agentów są przechowywane wewnątrz huba i wykorzystywane do realizacji odpowiedniego odwzorowania tożsamości agenta na identyfikatory wykorzystywane w rejestracjach przypisanych mu przez mocodawców. W złożonych przypadkach mocodawcy mogą wyznaczad na agentów całe organizacje organizacja ma wtedy możliwośd wyznaczenia agentów-asystentów opiekujących się określonymi klientami. Uwaga wyznaczenie agenta to delikatny proces o poważnych implikacjach prawnych. Fakt wyznaczenia agenta powinien podlegad inspekcji i byd łatwo weryfikowalny. Dowód delegacji uprawnieo powinien byd przechowywany w sposób niebudzący zastrzeżeo (najlepiej w postaci zapisu u dostawcy usługi docelowej) i gwarantowad niepodważalnośd działao agenta podjętych w imieniu użytkownika. Poza możliwością wyznaczenia stałego agenta, możliwa jest także czasowa delegacja uprawnieo (na ograniczony okres i wyłącznie w kontekście określonej transakcji). W takich wypadkach potwierdzeniem delegacji są odpowiednie tokeny bezpieczeostwa, przesyłane wraz z komunikatami w systemie. Tokeny te są niezależnie weryfikowane przez hub podczas przetwarzania żądania. Pomoc techniczna i odzyskiwanie kont użytkowników System musi zapewniad funkcje niezbędne do świadczenia pomocy dla użytkowników i realizacji działao biura obsługi klientów, takich jak resetowanie zapomnianych haseł, odszukiwanie utraconych poświadczeo itp. Aktualizowanie identyfikatorów specyficznych dla usługi W hubie przechowywany jest dla każdej rejestracji zestaw identyfikatorów specyficznych dla usługi, której dotyczy rejestracja. Kolejne interakcje z hubem (uwierzytelnienie, autoryzacja, przesłanie dokumentu) odwzorowują zweryfikowaną ogólną tożsamośd użytkownika na identyfikatory specyficzne dla usługi. Wszelkie zmiany tych identyfikatorów, na przykład ze względu na modyfikacje wprowadzane w systemach informatycznych dostawców usług lub reorganizację agencji, wymagają komunikacji z hubem w celu uaktualnienia odpowiednich identyfikatorów zapisanych wraz z rejestracjami użytkowników. Aktualizacje mogą byd realizowane na poziomie pojedynczej rejestracji (odnalezienie konkretnego zestawu identyfikatorów i wymienienie go na nowy zestaw) lub jako grupowe modyfikacje wybranych identyfikatorów (na przykład odnalezienie wszystkich zestawów identyfikatorów, w którym pole identyfikator urzędu skarbowego ma wartośd 015, 018 lub 022 i zmiana wartości tego pola na 088). Uwaga dobierając zestawy identyfikatorów dla poszczególnych usług, warto wziąd pod uwagę nakłady pracy, jakie będzie pochłaniało utrzymanie ich aktualności. O ile przechowywanie atrybutów dodatkowych (wykraczających poza minimalny zestaw niezbędny do jednoznacznej identyfikacji użytkownika i kontekstu) i otrzymywanie ich w wyniku odwzorowania tożsamości może byd bardzo wygodnym rozwiązaniem, nakład prac na utrzymanie aktualności tych identyfikatorów może przeważyd korzyści wynikające z ich przechowywania. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 55

56 Usługi uwierzytelniania i autoryzacji Uwierzytelnianie i autoryzacja to podzbiór usług tożsamości i bezpieczeostwa, świadczonych przez hub usług dla sektora publicznego. Funkcjonalnośd uwierzytelniania i autoryzacji, zapewniana przez hub usług dla sektora publicznego, jest ogólna i dotyczy wszystkich typów tożsamości reprezentujących użytkowników indywidualnych (bezpośrednio lub przez pośredników), organizacje, systemy i inne jednostki. Funkcjonalnośd ta może zostad wykorzystana bezpośrednio na przykład przez portale do weryfikowania tożsamości użytkowników. W takim wypadku hub pełni rolę dostawcy usług tożsamości i tokenów bezpieczeostwa. Możliwe jest także wykorzystanie niebezpośrednie, na przykład przez usługi komunikacyjne do celów walidacji tożsamości użytej do podpisania dokumentu i autoryzacji dokumentu przez usługę docelową. Uwierzytelnianie Funkcje uwierzytelniania weryfikują poświadczenia tożsamości przedstawione przez użytkownika i odwzorowują je na konkretną tożsamośd. Poziomy uwierzytelniania Do każdego uwierzytelnienia można przypisad poziom określający wiarygodnośd tego uwierzytelnienia i związane z nim procedury. Jedną z takich klasyfikacji jest używana w Wielkiej Brytanii klasyfikacja tscheme, której poszczególne poziomy 0, 1, 2 oraz 3 odpowiadają kolejnym wyższym poziomom wiarygodności uwierzytelnienia, uprawniającym do określonych typów działao. poziom 0 brak uwierzytelnienia. Rzeczywista tożsamośd osoby nie jest weryfikowana. Poziom ten dotyczy dostępu anonimowego lub sytuacji, w których użytkownicy podają pewne informacje, takie jak imię czy adres poczty elektronicznej, które są wykorzystywane w procesie i zapisywane, ale nie są weryfikowane; poziom 1 tożsamośd użytkownika jest z dużym prawdopodobieostwem prawdziwa (na przykład internetowe zamówienie książki z użyciem karty kredytowej z dostawą na adres posiadacza rachunku); poziom 2 istnieje wysoka pewnośd, że tożsamośd użytkownika jest prawdziwa (na przykład złożenie zeznania podatkowego dotyczącego podatku od towarów i usług lub podatku obrotowego, które jest wiążące prawnie); poziom 3 prawdziwośd tożsamości użytkownika pozostaje poza wszelką wątpliwością (złożenie elektronicznego podania o wydanie paszportu). Im wyższy poziom, tym wyższa wymagana pewnośd weryfikacji tożsamości użytkownika. Poszczególne poziomy wiarygodności weryfikacji uzyskuje się, stosując odpowiednie, zatwierdzone i akredytowane przez tscheme procedury i metody techniczne. Niewątpliwą zaletą stosowania systemu tscheme lub podobnego jest jednolitośd wymagao oraz powszechna akceptacja (i kompatybilnośd) akredytowanych w tscheme dostawców przez wszystkie jednostki administracji publicznej. W krajach, w których struktura taka jeszcze nie istnieje, wdrożenie podobnego systemu może mied wpływ na przyspieszenie popularyzacji usług dla sektora publicznego. Związanie z każdym uwierzytelnieniem informacji o poziomie jego wiarygodności oraz określenie minimalnego poziomu, wymaganego do przeprowadzania poszczególnych operacji, sprawia, że kontrola uprawnieo dostępu na różnych etapach przetwarzania staje się łatwa i bardzo efektywna. Na przykład odpowiedź na pytanie które usługi można udostępnid danemu użytkownikowi? brzmi: te, których minimalny wymagany poziom wiarygodności jest równy lub niższy niż poziom uwierzytelnienia tego użytkownika. Czy ten użytkownik może przesład żądanie tego typu? tak, pod warunkiem, że minimalny poziom wiarygodności, wymagany do RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 56

57 przesłania tego żądania, jest równy lub niższy niż poziom uwierzytelnienia tego użytkownika oraz spełnione są pozostałe warunki autoryzacji. Gdy szczegółowośd tscheme nie jest wystarczająca do zaspokojenia jakichś specyficznych wymagao, możliwe jest rozszerzenie i uogólnienie tej struktury na dwa sposoby: Dodanie poziomów pośrednich na przykład 1,5; 2,1; 2,3 przy jednoczesnym utrzymaniu prostoty reguły podstawowej (poziom uwierzytelnienia musi byd większy lub równy minimalnemu wymaganemu poziomowi wiarygodności). Różne rodzaje uwierzytelniania nadal porównywane są wyłącznie na podstawie zapewnianego przez nie poziomu, a więc poziom 2,2 zawsze będzie wyższy niż 2, niezależnie od dostawcy wybranego do celu uwierzytelnienia. Klasyfikacja ta jest powszechnie akceptowana przez wszystkich uczestników projektu i dostawców usług docelowych. Rozróżnianie dostawców uwierzytelniania (nawet jeśli oferują takie same poziomy wiarygodności) i stosowanie bardziej złożonych reguł na przykład uzależniających prawa dostępu zarówno od poziomu uwierzytelnienia, jak i od dostawcy. Chociaż takie podejście jest elastyczne i pozwala na definiowanie specyficznych wymagao (takich jak wymagaj uwierzytelniania na poziomie 3 za pomocą karty inteligentnej wbudowanej w prawo jazdy, ale nie akceptuj uwierzytelnienia na poziomie 3 od innego dostawcy, na przykład na podstawie karty kredytowej ), ogranicza jednak spójnośd oraz możliwości wielokrotnego wykorzystywania dostawców uwierzytelniania we wszystkich usługach dla sektora publicznego. Model każda usługa z własnym dostawcą uwierzytelniania nie jest zbyt wygodny, a jego zakres zastosowao jest ograniczony do spełnienia określonych wymagao. Zgodnie z zasadą elastyczności (patrz wcześniejsza sekcja Reguły rządzące architekturą), aby hub usług dla sektora publicznego mógł zaspokoid wszystkie wymagania, jakie mogą pojawid się w okresie jego eksploatacji, usługa uwierzytelniania i autoryzacji powinna zapewniad pełną elastycznośd według powyższego opisu (większa szczegółowośd poziomów oraz możliwośd definiowania bardziej skomplikowanych reguł). Przedstawianie poświadczeo i stwierdzeo Uwierzytelnienie polega na zweryfikowaniu poświadczeo lub stwierdzeo przedstawionych przez użytkownika. Jeśli weryfikacja zakooczy się pozytywnie, z użytkownikiem można powiązad odpowiednią tożsamośd, co pozwala na utworzenie nowych związanych z tą tożsamością. Model ogólnego dostawcy (opisany w sekcji Wzorzec ogólny wymienni dostawcy w rozdziale Usługi zarządzania tożsamością wcześniej w tym dokumencie) pozwala na stosowanie wielu dostawców obsługujących różne rodzaje poświadczeo tożsamości. Na ilustracji 14. przedstawiono kilka możliwych przebiegów procesu uwierzytelniania w oparciu o różnych dostawców uwierzytelniania. Numerami oznaczono różne sposoby weryfikacji tożsamości użytkownika w oparciu o przesłane wraz z żądaniem poświadczenia, ich rodzaj oraz miejsce, z którego je wysłano: bezpośrednio przez wewnętrznego (lokalnego) dostawcę (1), który weryfikuje dane użytkownika w oparciu o lokalny magazyn poświadczeo (2), poprzez odwołanie się do zaufanego dostawcy zewnętrznego (3), który przeprowadza własną procedurę weryfikacji poświadczeo. Gdy żądanie uwierzytelnienia zawiera token bezpieczeostwa, jest on zwykle weryfikowany lokalnie (4). Może to byd token wystawiony przez zaufaną przez hub usługę tokenów bezpieczeostwa (Security Token Service STS) lub token wystawiony przez sam hub w wyniku wcześniejszego uwierzytelnienia według jednego z opisanych wcześniej sposobów. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 57

58 Ilustracja 14. Wywoływanie różnych dostawców uwierzytelniania Niezależnie od konkretnego typu weryfikacji i dostawcy wykorzystywanego w procesie uwierzytelniania (dostawca wewnętrzny lub zewnętrzny), pomyślna weryfikacja odwzorowuje poświadczenia lub stwierdzenia na tożsamośd użytkownika. Daje to podstawę do dalszego odwzorowania tożsamości na identyfikatory użytkownika wykorzystywane przez poszczególne usługi (patrz sekcja Odwzorowanie tożsamości na identyfikatory specyficzne dla usług w dalszej części tego dokumentu) oraz wydawania tokenów bezpieczeostwa (patrz sekcja Usługa tokenów bezpieczeostwa w dalszej części tego dokumentu). Uwierzytelnianie stowarzyszone Tradycyjne modele uwierzytelniania, w których weryfikację poświadczeo realizuje jeden dostawca tożsamości, uniemożliwiają stosowanie wielu istniejących lub przyszłych dostawców tożsamości i ograniczają dostęp różnych grup użytkowników do wspólnego podstawowego zestawu usług dla sektora publicznego. Uwierzytelnianie stowarzyszone zapewnia lepszą elastycznośd i pozwala użytkownikom należącym do różnych (niezależnych i oddzielnych) domen zaufania uwierzytelniad się na podstawie poświadczeo charakterystycznych dla ich domen i uzyskiwad dostęp do zasobów w innych domenach w oparciu o relacje zaufania pomiędzy domenami. Usługi docelowe nie muszą znad lokalnych identyfikatorów użytkowników, w związku z czym tożsamośd i inne atrybuty mogą pozostawad niejawne. Pozostaje to w zgodzie z zasadami zarządzania tożsamością zasadą minimalnego zakresu ujawniania niezbędnych informacji oraz zasadą tożsamości ukierunkowanej opisanymi wcześniej w rozdziale RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 58

59 Powszechne problemy dotyczące architektury oraz w artykule Model uwierzytelniania stowarzyszonego oparty jest na zestawie specyfikacji i standardów usług Web Service, dzięki czemu jest niezależny od platform systemowych i implementacji. Pozwala to na łatwą integrację systemu oraz na stosowanie gotowego, komercyjnego oprogramowania. Więcej informacji na temat standardów takich jak WS-Security, WS-Trust i WS-Federation można znaleźd w ostatniej części tego opracowania, zatytułowanej Odsyłacze, listy kontrolne i dalsze informacje. Hub usług może pełnid wiele różnych ról i byd elementem różnych topologii relacji zaufania w modelu uwierzytelniania stowarzyszonego. Jak opisano w sekcji Możliwe topologie w rozdziale Hub usług wcześniej w tym przewodniku, pojedyncza topologia może obejmowad wiele hubów. Hub może działad jako: żądający dostawca tożsamości w procesie uwierzytelniania użytkownika hub generuje token bezpieczeostwa, który następnie w celu uzyskania autoryzowanego dostępu do usługi docelowej może zostad przedstawiony tej usłudze, docelowy dostawca tożsamości weryfikuje tokeny bezpieczeostwa przedstawiane przez użytkowników i wystawia tokeny uprawniające do dostępu do usługi docelowej, broker relacji zaufania pomiędzy dwiema lub więcej stronami (patrz ilustracja w temacie Huby równorzędne w sekcji Możliwe topologie wcześniej w tym opracowaniu) relacje zaufania każdej ze stron z brokerem zaufania pozwalają na utworzenie pośredniej relacji zaufania pomiędzy stronami. Na ilustracji 15. przedstawiono przykład typowych przepływów danych pomiędzy stronami. Numerami oznaczono kolejne kroki: 1. Żądający A przedstawia niezbędne poświadczenia swojemu dostawcy tożsamości w hubie Dostawca tożsamości żądającego w hubie 1 weryfikuje poświadczenia i zwraca token tożsamości żądającemu A. 3. Żądający A przedstawia token tożsamości docelowemu dostawcy tożsamości w hubie Docelowy dostawca tożsamości w hubie 2 sprawdza poprawnośd i pochodzenie tokenu tożsamości i zwraca token dostępu uprawniający do dostępu do zasobu docelowego. Docelowy dostawca tożsamości nie musi znad żądającego A ani jego tożsamości ufa dostawcy tożsamości żądającego w hubie 1 i wydanemu przez niego tokenowi tożsamości. 5. Żądający A w celu uzyskania dostępu do zasobu docelowego C, którego zabezpieczenia zarządzane są przez hub 2, przedstawia mu token dostępu. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 59

60 Ilustracja 15. Uwierzytelnianie stowarzyszone W przykładzie tym specjalnie rozdzielono poszczególne strony, by móc jasno przedstawid wszystkie interakcje. Żądający A może byd portalem lub innym systemem, hub 1 centralnym hubem usług dla sektora publicznego, zasób docelowy może byd jakimś dostawcą usług dla sektora publicznego, korzystającym z usług uwierzytelniania i autoryzacji świadczonych przez hub 2. Oczywiście możliwe są także inne warianty implementacji takiego samego ogólnego przepływu danych. Na przykład podsystem komunikacyjny (B), znajdujący się wewnątrz huba 1, także może pełnid rolę żądającego, który w celu komunikacji z podsystemem komunikacyjnym (D), działającym wewnątrz huba 2, musi uzyskad niezbędne tokeny tożsamości i dostępu. Autoryzacja Po poprawnym uwierzytelnieniu się i ustaleniu tożsamości użytkownika zwykle następuje proces autoryzacji o szczegółowości odpowiadającej poziomowi kontekstu. Połączenie procesu uwierzytelnienia z procesem autoryzacji pozwala podnieśd wydajnośd cały proces może zamknąd się w jednym odwołaniu do podsystemu uwierzytelniania i autoryzacji. Żądania autoryzacji można realizowad na dwa podstawowe sposoby: pobierz wszystko podaj listę wszystkich zasobów, do których dana tożsamośd posiada uprawnienia (i do których żądający może uzyskad autoryzowany dostęp patrz komentarze poniżej), proces jawny żądanie autoryzacji zawiera jawne określenie zasobu docelowego, którego dotyczy. O ile metoda pobierz wszystko może wydawad się prostsza i łatwiejsza, przed podjęciem decyzji o jej wykorzystaniu warto wziąd pod uwagę kilka istotnych w kontekście usług dla sektora publicznego zagadnieo. Stosując tę metodę można niepotrzebnie udostępnid żądającemu informacje, co do których nie mamy pewności, czy żądający może mied do nich dostęp. Ogólnie rzecz biorąc, zastosowanie tej metody może doprowadzid do złamania niektórych podstawowych zasad zarządzania tożsamością. Weźmy na przykład użytkownika, który posiada pojedyncze poświadczenie, uprawniające go do dostępu do kilku usług dla sektora publicznego. Użytkownik może nie życzyd sobie, by w czasie, gdy używa portalu systemu emerytalnego, portal ten mógł pobrad identyfikatory związane ze sprawami podatkowymi, czy chodby uzyskad informacje, że użytkownik jest zarejestrowany w takich usługach, skoro informacje te nie mają żadnego związku z usługą, z której korzysta użytkownik. Jeśli portal może przeprowadzid operację autoryzacji pobierz wszystko, to może uzyskad informacje o wszystkich relacjach pomiędzy tym użytkownikiem a innymi użytkownikami, co nie jest pożądane. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 60

61 Zalecanym rozwiązaniem w takich przypadkach jest autoryzacja jawna. Żądający definiuje, jakiego obiektu dotyczy żądanie, a dostawca usług autoryzacji zwraca odpowiednią odpowiedź. Żądanie autoryzacji nie musi dotyczyd pojedynczego celu może zawierad całą listę usług docelowych. Można też uwzględniad dodatkowe warunki, na przykład w oparciu o tożsamośd żądającego (w przypadku pośrednika można na przykład sprawdzid, do jakich zasobów żądający ma prawo sprawdzad autoryzację) lub w oparciu o jawną zgodę użytkownika, dołączoną do samego żądania. W uzasadnionych wypadkach (i gdy użytkownik wyraził na to zgodę) można odstąpid od tego ogólnego zalecenia i uzyskad autoryzację do wszystkich usług, do których użytkownik posiada prawa dostępu. Przykładem takiej sytuacji jest przedstawienie pełnej listy dostępnych usług w celach konserwacyjnych (zarządzanie rejestracjami, przypisywanie praw itp.). Sprawdzanie rejestracji w usługach Jednostką autoryzacji w przyjętym ogólnym modelu tożsamości (opisanym w części Podstawowy model tożsamości i zasady w sekcji Usługi zarządzania tożsamością wcześniej w tym dokumencie) jest pojedyncza usługa docelowa można sprawdzid tylko to, czy użytkownik może, czy nie może uzyskad dostęp do usługi X. Ma to wpływ na definicję usługi docelowej każda usługa musi byd grupą akcji (żądao lub operacji przedłożenia dokumentu) o odrębnych regułach dostępu. Żądanie autoryzacji odwzorowuje uwierzytelnioną wcześniej tożsamośd na poprawne, istniejące i aktywne rejestracje w usługach. W przypadku żądao typu pobierz wszystko operacja autoryzacji zwraca listę wszystkich rejestracji związanych z daną tożsamością. Autoryzacja jawna porównuje żądanie zawierające listę usług, do których żądający chce uzyskad dostęp, z ważnymi rejestracjami dla danej tożsamości i zwraca jedynie podzbiór tej listy (to jest listę usług, w których tożsamośd posada prawidłową rejestrację). Odwzorowanie tożsamości na identyfikatory specyficzne dla usług Ważnym aspektem autoryzacji jest odwzorowanie ogólnej (i potencjalnie takiej samej dla wielu usług) tożsamości na identyfikatory specyficzne dla danych usług, związane z aktywnymi rejestracjami, odnalezionymi w procesie autoryzacji. Odwzorowanie pozwala na ukrycie tożsamości ogólnej i określa kontekst relacji z daną usługą. Usługi docelowe mogą niezależnie ustalad wykorzystywane przez nie identyfikatory i nie ma potrzeby modyfikowania istniejących już systemów w celu wprowadzenia jakiegoś nowego identyfikatora (chyba że właściciel sam zdecyduje się na taki krok). Gdy ogólna tożsamośd zostanie związana z usługą poprzez proces rejestracji ustalający kontekst relacji i zbiór identyfikatorów specyficznych dla usługi, kolejne żądania autoryzacji dla tej tożsamości będą zwracały te identyfikatory. Szczegółowe zasady działania opisano w temacie Rejestracja w usługach i odwzorowywanie tożsamości w sekcji Usługi zarządzania tożsamością wcześniej w tym dokumencie. Delegowanie zaufania W przypadku delegowania uprawnieo, które polega na upoważnieniu innego użytkownika do działania w imieniu określonej osoby lub organizacji w kontekście określonej usługi (patrz temat Przypisywanie (delegowanie) uprawnieo agenci w sekcji Zarządzanie użytkownikami i rejestracjami wcześniej w tym dokumencie), proces odwzorowania jest bardziej skomplikowany. Polega on na odszukaniu prawidłowego łaocucha odwzorowao łączącego tożsamośd z usługą docelową. Użytkownik z jednej organizacji może na przykład uprawnid inną organizację-agenta do działania w jego imieniu, a następnie użytkownik z organizacji-agenta może ustanowid asystenta, którego zadaniem jest opiekowanie się określonymi klientami. Wynik operacji autoryzacji ma jednak nadal tę samą postad tożsamośd A może uzyskad dostęp do usługi S w kontekście wyznaczanym przez specyficzne dla tej usługi identyfikatory X, Y i Z. Taka delegacja uprawnieo jest relatywnie wygodna w przypadku stałej, długotrwałej delegacji, która może zostad unieważniona przez jawne jej wypowiedzenie. W przypadku delegacji krótkotrwałych (takich jak delegacje ustanowione jedynie na potrzeby określonej interakcji na przykład przedłożenia dokumentu), prawo delegacji może zostad przesłane wraz z samym żądaniem autoryzacji. W takim wypadku proces odwzorowania tożsamości na rejestrację w usłudze bierze pod uwagę delegację (i daje wynik taki sam, jak RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 61

62 w przypadku delegacji stałej, jedynie o krótszym okresie ważności i z innymi ograniczeniami). Taki proces nie oznacza trwałego zapisania relacji delegacji. Zrealizowana delegacja krótkotrwała nie ma wpływu na nowe żądania, chyba że żądania te same dotyczą delegacji. Szczegółowośd autoryzacji Testy autoryzacji, realizowane przez hub w oparciu o aktywne rejestracje i ewentualne delegacje uprawnieo, są ograniczone do poziomu usługi docelowej. Dalsze decyzje autoryzacji na niższych poziomach mogą byd realizowane gdzie indziej (na przykład w innym hubie) w oparciu o dostarczone przez hub identyfikatory specyficzne dla danej usługi. Ustalenie odpowiedniej szczegółowości usług oraz poziomu szczegółowości identyfikatorów to bardzo ważne zagadnienie. Niezbędne jest zachowanie równowagi pomiędzy wygodą otrzymywania wszystkich informacji w ramach identyfikatorów zwracanych w procesie autoryzacji (identyfikatory te mogę obejmowad także rolę i inne atrybuty) a koniecznością utrzymania aktualności kopii tych identyfikatorów, przechowywanej w hubie. Przykładem autoryzacji kaskadowej może byd przypadek prawnika działającego w imieniu swojego klienta w kontekście procesu sądowego. Prawnik, zarejestrowany w odpowiednich usługach prawniczych (przy czym rejestracja wymaga przedstawienia dokumentów potwierdzających prawo do wykonywania zawodu), może uzyskad dostęp do centralnego huba usług dla sektora publicznego, korzystając z poświadczeo wystawionych przez ten hub lub uzyskanych od innego zaufanego lub stowarzyszonego dostawcy tożsamości. Gdy prawnik korzysta z portalu prawnego lub innej usługi, hub sektora publicznego uwierzytelnia go i autoryzuje jego dostęp do usług prawniczych. Proces autoryzacji zwraca odpowiednie identyfikatory wykorzystywane przez usługi prawnicze. Z punktu widzenia huba, uwierzytelniona tożsamośd prawnika ma prawa dostępu do usług prawniczych w kontekście określanym przez odpowiednie, specyficzne dla tej usługi identyfikatory. W oparciu o te identyfikatory portal (lub inny system, z którego ten portal korzysta) może podejmowad dalsze decyzje dotyczące autoryzacji. Może na przykład sprawdzid powiązania z określoną sprawą lub pełnioną rolę i na tej podstawie udzielid dostępu do pewnych dokumentów. Usługa docelowa utrzymuje szczegółowe informacje autoryzacyjne, dotyczące powiązao prawników ze sprawami, i nie udostępnia tych informacji hubowi zadaniem huba jest tylko uwierzytelnienie użytkownika i sprawdzenie autoryzacji dostępu do określonej usługi jako całości. Usługa tokenów bezpieczeostwa Hub usług dla sektora publicznego może pełnid rolę usługi tokenów bezpieczeostwa (Security Token Service STS), zdefiniowanej w standardach WS-Trust, WS-Federation i WS-Security (łącza do tych standardów znajdują się w sekcji Odsyłacze, listy kontrolne i dalsze informacje). Hub może zatem byd częścią stowarzyszonej sieci usług Web Service, zapewniających funkcje uwierzytelniania, autoryzacji i inną funkcjonalnośd ułatwiającą integrowanie systemu w oparciu o sprawdzone standardy i specyfikacje. Usługa tokenów bezpieczeostwa wydaje, weryfikuje i wymienia tokeny bezpieczeostwa. Żądający przesyła żądanie, a usługa jeśli pozwalają na to wymagania adresata oraz obowiązujące zasady wydaje mu token bezpieczeostwa. Tokeny bezpieczeostwa Tokeny bezpieczeostwa zawierają zbiory stwierdzeo, których wiarygodnośd gwarantowana jest przez wydawcę tokenu. Wydawca może podpisywad tokeny z wykorzystaniem metod kryptograficznych, co gwarantuje ich integralnośd (brak możliwości wprowadzenia zmian po podpisaniu) i pozwala na weryfikację ich pochodzenia. Pomyślne przeprowadzenie przez hub usług dla sektora publicznego procesu uwierzytelniania i autoryzacji skutkuje zwykle wydaniem żądającemu tokenu bezpieczeostwa. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 62

63 Wydawanie tokenów bezpieczeostwa Token bezpieczeostwa jest wynikiem przeprowadzonego przez hub procesu uwierzytelniania i autoryzacji. Token może zawierad następujące informacje: uzyskane w wyniku uwierzytelnienia informacje na temat tożsamości wraz z odpowiednimi atrybutami, takimi jak sposób uwierzytelnienia i poziom wiarygodności, informacje na temat autoryzacji dostępu, na przykład w postaci listy dostępnych usług docelowych, specyficzne dla poszczególnych usług identyfikatory i atrybuty. Rodzaj stwierdzeo zawartych w tokenie może się różnid w zależności od roli pełnionej przez hub i jego lokalizacji w topologii całego systemu. Możliwe jest także wydawanie wielu tokenów uprawniających do dostępu do różnych usług docelowych. W następnej sekcji przewodnika opisano kilka przykładowych scenariuszy zastosowao. Możliwe scenariusze zastosowao Interakcje pomiędzy poszczególnymi hubami oraz role pełnione przez odpowiadające im usługi tokenów bezpieczeostwa mogą byd różne, w zależności od wybranej topologii systemu i przyjętego modelu zabezpieczeo. Na ilustracji 16. przedstawiono kilka możliwych scenariuszy. Kolejne etapy procesu oznaczono numerami: 1. Użytkownik kontaktuje się z portalem i przedstawia mu swoje poświadczenia tożsamości dla systemu dla sektora publicznego. 2. Portal wysyła żądanie do huba A (który może byd centralnym hubem dla sektora publicznego), przedstawiając poświadczenia tożsamości użytkownika i wskazując usługę docelową X. 3. Po pomyślnym uwierzytelnieniu użytkownika i sprawdzeniu autoryzacji dostępu do usługi X, hub A zwraca dwa tokeny wystawione przez usługę STS A: a.token uwierzytelnienia (Au) potwierdzający pomyślne uwierzytelnienie użytkownika. Token ten może zostad później wykorzystany do uzyskania dodatkowych autoryzacji bez potrzeby ponownego pełnego uwierzytelnienia użytkownika na podstawie poświadczeo tożsamości; b.token autoryzacji dostępu użytkownika do usługi X (AzX), zawierający odpowiednie identyfikatory specyficzne dla usługi X, definiujące kontekst relacji użytkownika z tą usługą (na przykład numer identyfikacji podatkowej, identyfikator PESEL, identyfikator usług socjalnych). 4. Portal w imieniu użytkownika kontaktuje się z usługą STS X i przedstawia jej token uwierzytelnienia AzX wystawiony przez usługę STS A. 5. Usługa STS X sprawdza prawidłowośd tokenu AzX i wystawia nowy token X (token specyficzny dla tej usługi STS), zawierający stwierdzenia potrzebne do dostępu do usługi X. Usługa może na przykład przetłumaczyd lub dokonad odwzorowania znajdujących się w tokenie AzX identyfikatorów specyficznych dla usługi na informację na temat roli danego użytkownika i na inne atrybuty w kontekście interakcji z usługą X. 6,7,8... Obsługując kolejne wywołania usługi X przez użytkownika koocowego, portal przedstawia token X, którego walidacja może byd bardzo efektywna o wiele bardziej wydajna niż wcześniejsza walidacja tokenu AzX z translacją lub odwzorowywaniem atrybutów. Umieszczenie w kontekście wywołania odpowiednich identyfikatorów, specyficznych dla usług X, zawartych w tokenie X, pozwala także na podejmowanie dalszych decyzji dotyczących autoryzacji wewnątrz usługi. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 63

64 Ilustracja 16. Role usług STS i wymiana tokenów Kontynuujmy nasz przykład. Po zakooczeniu interakcji z usługą X, użytkownik (lub portal w imieniu użytkownika) chce uzyskad dostęp do usługi Y. Proces autoryzacji przedstawiono na ilustracji 17. Proces przebiega nieco inaczej niż w poprzednim przykładzie. Jeśli token uwierzytelnienia (Au), wystawiony w poprzednim przykładzie przez usługę STS A, jest nadal ważny i został w odpowiedni, bezpieczny i wiarygodny sposób przechowany przez pośrednika (portal) lub użytkownika koocowego, uzyskanie autoryzacji dostępu do usługi Y jest prostsze i nie wymaga ponownego podania poświadczeo przez użytkownika. W ten sposób użytkownik raz zameldowany do systemu może uzyskad dostęp do wielu usług. Proces autoryzacji przebiega następująco: 1. Użytkownik żąda dostępu do usługi Y. 2. Portal wysyła żądanie do huba A, przedstawiając token uwierzytelniania (Au), uzyskany wcześniej od usługi STS A, i wskazuje usługę docelową Y. 3. Po zweryfikowaniu poprawności tokenu uwierzytelniania Au i autoryzacji dostępu użytkownika do usługi Y, hub A zwraca dwa tokeny wystawione przez usługę STS A: a.opcjonalnie odświeżony lub odnowiony token uwierzytelnienia (Au) o przedłużonym okresie ważności, co pozwala na przedłużenie pierwszego uwierzytelnienia i dalsze korzystanie z usług dostępu z jednokrotnym logowaniem (wystawienie takiego tokenu podlega odpowiednim zasadom konieczne jest utrzymanie równowagi między wygodą użytkowania a bezpieczeostwem); b.token autoryzacji dostępu użytkownika do usługi Y (AzY), zawierający odpowiednie identyfikatory specyficzne dla usługi Y, definiujące kontekst relacji użytkownika z tą usługą. 4. Portal w imieniu użytkownika kontaktuje się z usługą Y i przedstawia jej token autoryzacji AzY wystawiony przez usługę STS A. 5. Usługa STS Y sprawdza prawidłowośd tokenu AzY i wystawia nowy token Y (token specyficzny dla tej usługi STS), zawierający stwierdzenia potrzebne do dostępu do usługi Y. 6,7,8... W kolejnych wywołaniach usługi Y użytkownik koocowy lub portal przedstawia usłudze token Y, którego walidacja może byd bardzo efektywna o wiele bardziej wydajna niż początkowa walidacja tokenu AzY z translacją lub odwzorowywaniem atrybutów. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 64

65 Umieszczenie w kontekście wywołania odpowiednich identyfikatorów specyficznych dla usług Y, zawartych w tokenie Y, pozwala także na podjęcie dalszych decyzji dotyczących autoryzacji wewnątrz usługi. Ilustracja 17. Role STS i wymiana tokenów kolejna usługa Możliwośd pełnienia przez hub usług roli usługi tokenów bezpieczeostwa STS pozwala na obsługę także wielu innych scenariuszy i umożliwia stosowanie różnych topologii odpowiadających określonym wymaganiom i ograniczeniom. Udostępnianie usług uwierzytelniania i autoryzacji Funkcjonalnośd uwierzytelniania i autoryzacji udostępniania jest w postaci zbioru usług Web Service, dzięki czemu jest ogólne dostępna dla klientów wszystkich typów innych systemów, portali i pakietów oprogramowania uruchamianych na komputerach klienckich. Bezpieczeostwo wywołao usług Web Service może zostad zapewnione na różnych poziomach: bezpieczeostwo na poziomie transportowym, na przykład wykorzystanie protokołów TLS/SSL, które pozwalają na szyfrowanie wszystkich przesyłanych informacji i chronią przed podsłuchami. Protokoły te pozwalają także na zapewnienie dostępu tylko tym jednostkom, które posiadają odpowiedni certyfikat klienta; bezpieczeostwo na poziomie komunikatu (Web Service) żądanie samo zawiera elementy zabezpieczeo niezbędne do zidentyfikowania nadawcy i zaszyfrowania określonych części komunikatu. Zważywszy na poufnośd wywołao dotyczących uwierzytelniania i autoryzacji, warto rozważyd ograniczenie dostępu do różnych części tej funkcjonalności poprzez identyfikowanie klientów i wprowadzenie ochrony przed potencjalnymi atakami. Na przykład: Czy ten portal (usługa) jest akredytowany i ma prawo przeprowadzad operacje uwierzytelnienia i autoryzacji? oraz Czy ten klient ma prawo pytad o autoryzację dostępu do usługi X?. W przypadkach, gdy hub usług dla sektora publicznego zapewnia zarówno funkcjonalnośd komunikacyjną, jak i funkcjonalnośd uwierzytelniania i autoryzacji, warto rozważyd udostępnienie funkcjonalności uwierzytelniania i autoryzacji niezależnie od interfejsów Web Service wewnętrznie, dla zaufanych podsystemów, takich jak usługi komunikacji. Pozwoli to uniknąd RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 65

66 dodatkowych nakładów zasobów obliczeniowych na wywoływanie publicznie dostępnych usług Web Service i podnieśd wydajnośd. Podejmując decyzję o takiej modyfikacji, należy wziąd pod uwagę także inne interfejsy publiczne i prywatne. Usługa katalogu usług Jedną z głównych cech architektury zorientowanej na usługi (Service Oriented Architecture SOA) jest przezroczystośd (niezależnośd) lokalizacji usług udostępnianych konsumentom. Fizyczna lokalizacja usługi może ulec zmianie z wielu powodów jedna usługa, udostępniana w ramach jednego kontraktu usługowego, może byd świadczona jednocześnie z wielu rozproszonych geograficznie lokalizacji; udostępnienie usługi w innej lokalizacji może też byd spowodowane awarią w podstawowej lokalizacji świadczenia tej usługi. Fizyczny adres usługi może zostad odnaleziony ręcznie i zapisany w aplikacji w czasie jej tworzenia, ale także może byd przechowywany w danych konfiguracyjnych. Przeniesienie lub wycofanie usługi sprawi jednak, że aplikacja ta przestanie poprawnie funkcjonowad. Co więcej, konsumenta nie interesuje fizyczne miejsce świadczenia usług. Konsument jest zainteresowany tym, co dana usługa może mu zaoferowad. W związku z tym aby móc uniknąd zapisywania fizycznego adresu świadczenia usługi w kodzie aplikacji konsument musi mied możliwośd ustalenia tego adresu w czasie pracy aplikacji. W tym zakresie można polegad na katalogu usług. Katalog umożliwia konsumentom wyszukiwanie usług na podstawie pewnego zbioru kryteriów w czasie pracy aplikacji, wtedy, gdy zachodzi taka potrzeba. Ze względu na brak wiedzy na temat wzajemnego położenia aplikacji i usługi przed skorzystaniem z tej usługi, dostawca usługi powinien udostępnid prosty interfejs wywołania usługi. Interfejs zbyt drobnoziarnisty lub gadatliwy może powodowad kłopoty z wydajnością w przypadku, gdy aplikację i usługę będą dzieliły tysiące kilometrów. Usługi powinny przyjmowad komunikaty zawierające wszystkie dane niezbędne do realizacji całej operacji, bez konieczności prowadzenia długiej i kosztownej wymiany komunikatów pomiędzy konsumentem a dostawcą, typowej dla protokołów typu RPC z rozproszonym modelem obiektowym. Usługa katalogu usług powinna utrzymywad rejestr wszystkich usług huba dla sektora publicznego (bezpieczeostwo, komunikacja, usługi pomocnicze), pozwalając konsumentom na wyszukiwanie określonych usług na przykład usługi rejestracji dokumentów dla określonego regionu lub usługi pomocniczej oferującej funkcje obsługi płatności. Interakcje pomiędzy konsumentem a dostawcą z wykorzystaniem katalogu usług przedstawiono na ilustracji 18. Ilustracja 18. Interakcje pomiędzy konsumentem usługi, dostawcą usługi i katalogiem usług Dostawca usługi rejestruje się w katalogu usług, umożliwiając konsumentom odnalezienie potrzebnych im usług. Konsument może przeszukad katalog usług na podstawie metadanych opisujących zarejestrowane usługi. Po odnalezieniu odpowiedniej usługi konsument nawiązuje połączenie z jej dostawcą i może rozpocząd korzystanie z usługi. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 66

67 UDDI UDDI to zaakceptowany przez branżę standard, definiujący strukturę katalogu usług i odpowiednie protokoły do obsługi tego katalogu. Uwaga UDDI to akronim od Universal Description, Discovery and Integration (uniwersalne opisywanie, wyszukiwanie i integrowanie usług). Niedawno opublikowana została wersja 3. tego standardu, natomiast standard WS-I Basic Profile 1.1 (stanowiący podstawy interoperacyjności pomiędzy usługami Web Service) obecnie oparty jest na wersji 2 tego standardu. Tworzeniem specyfikacji UDDI zajmuje się organizacja OASIS; specyfikacja dostępna jest pod adresem UDDI umożliwia dostawcom rejestrowanie udostępnianych usług Web Service i publikowanie opisów usług dla konsumentów. Katalog może zatem służyd do ogłaszania dostępności usług i wyszukiwania potrzebnych usług. Usługi UDDI oferują zwykle trzy kategorie usług: tzw. białe strony, żółte strony i zielone strony. Białe strony zawierają dane kontaktowe, adresy i inne informacje na temat przedsiębiorstw udostępniających usługi Web Service. Żółte strony kategoryzują usługi Web Service zgodnie ze standardową taksonomią. Zielone strony obejmują specyfikacje techniczne zarejestrowanych usług, takie jak informacje niezbędne do nawiązania połączenia czy szczegóły na temat implementacji. Uwaga ze względu na potencjalnie dużą złożonośd relacji tworzonych w rejestrze UDDI, możliwośd rozszerzania modelu danych o nowe schematy kategoryzacyjne oraz koniecznośd stosowania spójnych standardów nazewniczych, przed implementacją katalogu konieczne jest zaplanowanie odpowiedniej struktury rejestru UDDI. Planowanie i projektowanie struktury zwykle odbywa się na zasadach podobnych do tych stosowanych podczas implementowania katalogu Active Directory. Metadane usług Każda usługa może posiadad w katalogu UDDI zestaw metadanych, który konsumenci mogą wykorzystywad w poszukiwaniu usług umożliwiających wykonanie określonej operacji lub funkcji. Te metadane to tmodel wykorzystywany do wymiany informacji takich jak opis usługi (który może byd zapisany w WSDL) lub wskaźników do innych metadanych związanych z usługą. tmodel nie jest ograniczony do poszczególnych rejestracji usług w UDDI może posłużyd do wyszukiwania kompatybilnych usług Web Service. Wiele usług może zawierad wskaźniki do tego samego obiektu tmodel. Każda usługa może także zawierad wskaźniki do wielu różnych obiektów tmodel, odpowiadających różnym implementowanym przez nią interfejsom. Publikacja usługi Katalog UDDI udostępnia interfejsy SOAP API do publikowania i pobierania informacji z katalogu UDDI. Dostawcy usług korzystają z publikacyjnego interfejsu API do wprowadzania do katalogu UDDI informacji kontaktowych na temat przedsiębiorstwa, nowych usług, tmodeli i klasyfikacji. Wszystkie żądania wykonania operacji przesyłane są do operatora katalogu UDDI z wykorzystaniem protokołu HTTPS, co zapewnia zachowanie poufności przekazywanych informacji. Dostawca usług, aby móc korzystad z publikacyjnego interfejsu API, musi najpierw zarejestrowad się u operatora katalogu UDDI (właściciela katalogu usług) i uzyskad poświadczenia niezbędne do nawiązania połączenia z katalogiem. Na podstawie tych poświadczeo dostawca usługi może za każdym razem, gdy chce skorzystad z interfejsu publikacyjnego do wprowadzenia danych o udostępnianych przez siebie usługach, uzyskad token uwierzytelniający. Wystawienie tokenu realizowane jest z wykorzystaniem operacji get_authtoken. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 67

68 Model danych UDDI obejmuje wymienione poniżej encje. Encje te modyfikowane są przez publikacyjny interfejs API podczas wprowadzania informacji o dostawcy usług oraz oferowanych przez niego usługach. businessentity opis dostawcy usługi. Z tą strukturą związane są wszystkie poniższe struktury oraz dane kontaktowe, takie jak nazwa i adres dostawcy. Dostawcy mogą byd organizacjami, oddziałami przedsiębiorstw itp. Wzajemne relacje pomiędzy elementami businessentity reprezentowane są przez encję publisherassertion; businessservice opis zbioru jednej lub więcej usług biznesowych udostępnianych przez dostawcę. Opis może zawierad kategoryzację usługi na podstawie schematu i obejmowad lokalizację geograficzną, typ usługi, parametry zapewnienia jakości obsługi (QoS Quality of Service) itd.; bindingtemplate opis sposobu połączenia z usługą Web Service reprezentującą określoną usługę biznesową. W przypadku usług Web Service udostępnianych za pośrednictwem protokołu SOAP, którego komunikaty przekazywane są za pomocą protokołu HTTP, encja ta zawiera adres URL, pod którym dostępna jest usługa; tmodel odcisk palca zbiór informacji na temat specyfikacji usługi Web Service. Zwykle jest to określenie lokalizacji przechowywania zapisanej w języku WSDL specyfikacji interfejsów usługi, jednak mogą to byd także inne dane opisowe. Relacje pomiędzy tymi encjami przedstawiono na ilustracji 19. Ilustracja 19. Relacje pomiędzy encjami UDDI Wyszukiwanie usługi Interfejs API wyszukiwania usług umożliwia konsumentowi usług odszukanie i nawiązanie połączenia z usługą Web Service w czasie wykonywania aplikacji. Kryteriami wyszukiwania mogą byd dane organizacji udostępniającej usługę, atrybuty usługi lub obiekty tmodel (interfejsy usług). W wyniku operacji wyszukiwania konsument otrzymuje zbiór wyników, który może następnie przejrzed i wybrad najbardziej odpowiednią usługę. Zawieranie kontraktu (tzn. ustalanie warunków dostarczania usług przez dostawcę) w czasie pracy aplikacji nie jest działaniem typowym to zadanie zwykle realizowane jest na etapie opracowywania aplikacji. Programista, aby móc wykorzystad daną usługę w swojej aplikacji, musi zrozumied jej interfejs. Nie da się tego zrobid dynamicznie. Dynamiczne łączenie z usługą w czasie wykonywania aplikacji dotyczy wyłącznie fizycznej lokalizacji usługi (adres lub łaocuch URL) oferującej znany interfejs. API umożliwia realizację kilku podstawowych operacji związanych z wyszukiwaniem zbioru powiązanych ze sobą usług: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 68

69 find_business wyszukanie informacji o jednej lub większej liczbie organizacji charakteryzowanych przez określone kategorie lub identyfikatory. Można także wyszukiwad według nazwy lub referencji do obiektu tmodel; find_service operacja zwraca listę usług spełniających podane kryteria wyszukiwania, na przykład typ usługi; find_tmodel operacja zwraca struktury tmodel, umożliwiając konsumentowi przeszukanie katalogu pod kątem usług implementujących interfejsy odpowiadające wyszukanej strukturze tmodel. Istnieje możliwośd wdrożenia prostej metody równoważenia obciążenia przy każdym wywołaniu usługi, aplikacja powinna nawiązywad połączenie z kolejną usługą z listy odnalezionych usług implementujących ten sam interfejs (tak zwane wybieranie round-robin). Co więcej, jeśli w przypadku niepowodzenia wywołania usługi Web Service aplikacja ponowi żądanie, wysyłając je do tej samej usługi lub do usługi następnej na liście, uzyskamy ochronę przed skutkami awarii pojedynczego dostawcy usług. Replikacja Rejestr UDDI pozwala na replikację danych z innymi rejestrami w sposób podobny do systemu DNS (Domain Name System). Do obsługi replikacji służy specjalny interfejs API, umożliwiający operatorom rejestru synchronizację rejestrów UDDI. Synchronizacja powoduje, że pomiędzy bazami danych przesyłane są informacje na temat zmian wprowadzonych do tych baz (na przykład zmienione adresy usług), jednak dostawca usług powinien aktualizowad własne informacje zawsze u tego operatora, u którego zarejestrował je po raz pierwszy. Replikacja rejestrów usług sprawia, że konsument może w lokalnym katalogu usług wyszukiwad usługi, których dostawcy zarejestrowani są w innych katalogach. Jedyna niezbędna konfiguracja to podanie lokalizacji odpowiedniego katalogu usług. Gdyby nie było replikacji, konsument, chcąc odszukad fizyczną lokalizację potrzebnej usługi, musiałby jeszcze przed rozpoczęciem poszukiwao wiedzied, w którym katalogu zarejestrowany jest dostawca poszukiwanej usługi. Usługi rejestracji dokumentów Opisana w tym przewodniku architektura referencyjna pozwala na elektroniczną interakcję z administracją publiczną za pośrednictwem wielu różnych kanałów dostępu. Najważniejszym etapem interakcji z dowolną jednostką administracji publicznej jest etap przedłożenia dokumentu. Złożenie zeznania podatkowego, wystąpienie o zezwolenie lub zgłoszenie błędu wszystkie te operacje wymagają przedłożenia w agencji dokumentu określonego rodzaju (czasem wraz z załącznikami takimi jak zdjęcia). Rola usługi rejestracji dokumentów Usługa rejestracji dokumentów w hubie usług jest odpowiedzialna za przyjmowanie dokumentów i przetwarzanie ich w imieniu usługi rejestracji dokumentów kanału lub innej równorzędnej usługi rejestracji dokumentów, która zainicjowała dostarczenie dokumentu. Koperta dokumentu to komunikat, który zawiera nie tylko sam dokument, ale także metadane opisujące ten dokument, takie jak tożsamośd nadawcy, aplikacja użyta do utworzenia dokumentu, data przedłożenia dokumentu oraz typ dokumentu dołączonego do komunikatu. Metadane komunikatu mogą byd przydatne dla usług, które muszą analizowad pewne ogólne cechy zawartości komunikatu (czyli dokumentu) w celu podjęcia decyzji na temat dalszego przetwarzania lub dalszej drogi przesyłu komunikatu. Przykładem podstawowych metadanych, jakie mogą byd przydatne podczas podejmowania decyzji o przekazaniu komunikatu do właściwej agencji, mogą byd agencja docelowa i typ dokumentu. Usługa rejestracji dokumentów jest także odpowiedzialna za sprawdzanie bezpieczeostwa komunikatu i ochronę przed manipulowaniem jego zawartością. Oprócz sprawdzenia poprawności komunikatu, obowiązkiem usługi może także byd odszyfrowanie zawartośd RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 69

70 komunikatu w celu przekazania jej usłudze agencji, która nie ma dostępu do technologii umożliwiającej poznanie treści komunikatu. Po sprawdzeniu poprawności komunikatu, usługa rejestracji dokumentu powinna zweryfikowad autentycznośd jego nadawcy poprzez sprawdzenie, czy dołączony do komunikatu token bezpieczeostwa jest poprawny. Następnie musi przeprowadzid autoryzację dokumentu w oparciu o wymagania usługi docelowej i porównanie poziomu uwierzytelnienia nadawcy z minimalnym poziomem określonym dla tej usługi. Innymi słowy, usługa może wymagad weryfikacji tożsamości nadawcy w oparciu o nazwę użytkownika i odpowiednio silne hasło. Jeśli uwierzytelnienie odbędzie się za pośrednictwem nazwy użytkownika i słabego hasła, usługa może odrzucid komunikat. Poziom uwierzytelnienia powinien byd właściwością komunikatu (zabezpieczoną podpisem elektronicznym przed ewentualnymi nadużyciami). Po zweryfikowaniu nadawcy i potwierdzeniu poziomu uwierzytelnienia odpowiedniego dla usługi docelowej może nastąpid ogólna autoryzacja operacji. Przez operację rozumiemy tu przedłożenie dokumentu określonego typu w określonej usłudze docelowej albo przekazanie dokumentu do innej, równorzędnej usługi rejestracji dokumentów. Przed takim przekazaniem może jednak nastąpid autoryzacja wstępna. Autoryzacja polega na sprawdzeniu zestawu stwierdzeo w oparciu o usługę autoryzacji. Jako stwierdzenia można przyjąd prawo nadawcy do przedkładania dokumentów typu X, jego przynależnośd do grupy Y lub dowolną kombinację takich stwierdzeo. Przekazanie dokumentu do usługi docelowej następuje po pozytywnym przejściu komunikatu przez wszystkie testy bezpieczeostwa. Jeśli dokument przekazywany jest do równorzędnej usługi rejestracji dokumentów, testy bezpieczeostwa mogą nie byd przeprowadzane zależy to tylko od wymagao stawianych nadawcy. Wymagania mogą byd określone w taki sposób, że komunikat zostanie sprawdzony tylko po przesłaniu go do właściwego odbiorcy lub przez dowolną usługę pośredniczącą w przekazywaniu tego dokumentu. Przekazanie dokumentu do usługi docelowej wymaga dostępu do pewnej formy funkcjonalności EAI (Enterprise Application Integration) najczęściej udostępnianej przez platformę integracyjną. Zagadnienia integracji zebrano w osobnej sekcji dalej w tym dokumencie. Podstawowa architektura Podstawową architekturę usługi rejestracji dokumentów można podzielid na dwa obszary: stronę publiczną, wykorzystywaną przez konsumentów przedkładających dokumenty, stronę prywatną, wykorzystywaną przez dostawcę usługi (centralną jednostkę administracji, władze, lokalny organ zarządzający lub pojedynczą agencję udostępniającą usługę rejestracji dokumentów) i umożliwiającą integrację usługi z systemami informatycznymi agencji. Dwa obszary podstawowej architektury usługi rejestracji dokumentów przedstawiono na ilustracji 20. Ilustracja 20. Podstawowa architektura usługi rejestracji dokumentów RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 70

71 Interfejs publiczny Publiczny interfejs usługi rejestracji dokumentów wyznacza sposób interakcji konsumentów z tą usługą, określa obsługiwane operacje, protokoły i formaty komunikatów oraz inne nakładane przez usługę na konsumenta niefunkcjonalne wymagania, takie jak wymagany poziom szyfrowania i podpisywania zawartości. Określa sposób, w jaki usługa ta jest widoczna dla konsumenta. Zewnętrzny konsument usługi, którym może byd portal, aplikacja niezależnego producenta, inna usługa lub partner, komunikuje się z usługą rejestracji dokumentów za pośrednictwem interfejsu publicznego. Dostawca usługi udostępnia interfejs, który umożliwia konsumentom przedkładanie dokumentów zarówno w sposób synchroniczny, jak i asynchroniczny. Interfejs obsługuje także operacje pomocnicze, takie jak sprawdzenie stanu dokumentu, a w przypadku komunikacji asynchronicznej pobranie i usunięcie odpowiedzi itp. Ogólną strukturę publicznego interfejsu usługi rejestracji dokumentów przedstawiono na ilustracji 21. Ilustracja 21. Wysokopoziomowe usługi świadczone przez interfejs publiczny usługi rejestracji dokumentów Komunikacja asynchroniczna Usługa rejestracji, aby zapewnid wsparcie dla jak największej liczby aplikacji klienckich, implementuje podstawowe mechanizmy komunikacyjne (synchroniczne i asynchroniczne). Gdy konsument korzysta z interfejsu synchronicznego, usługa musi przyjąd dokument, przetworzyd go i zwrócid odpowiedź w ramach tego samego połączenia. Oznacza to dłuższe blokowanie zasobów niż w przypadku połączeo asynchronicznych oraz ograniczenie skalowalności usługi. Preferowanym interfejsem, wykorzystywanym do przedkładania dokumentów, jest interfejs asynchroniczny, który zapewnia lepszą skalowalnośd konsument nie jest blokowany w oczekiwaniu na odpowiedź. Co więcej, technologia zastosowana do implementacji usługi rejestracji dokumentów nie musi gwarantowad przetworzenia dokumentu i zwrócenia odpowiedzi w najkrótszym możliwym czasie. Konsument podaje usłudze adres, na który ta ma przekazad swoją odpowiedź po przetworzeniu tego dokumentu, niezależnie od sesji, w której zostało przekazane żądanie. Jeśli konsument nie może podad takiego adresu, może co jakiś sprawdzad, czy odpowiedź jest już gotowa i czy można ją pobrad (tzw. polling). Z tego względu niezbędne jest, by usługa przechowywała informacje o stanie wszystkich odpowiedzi otrzymanych asynchronicznie z usług agencji, usług pomocniczych czy równorzędnych usług rejestracji dokumentów. Rodzi się także pytanie po jakim okresie można usunąd odpowiedzi nieodebrane przez konsumentów? Najprostszym wyjściem jest wprowadzenie w usłudze rejestracji dokumentów funkcji oczyszczania konsument po zakooczeniu przetwarzania odpowiedzi może uprzątnąd (zwolnid) zajmowane zasoby. Poza tym usługa rejestracji dokumentów może sama zwalniad RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 71

72 zasoby po odebraniu odpowiedzi przez konsumenta, a w przypadku odpowiedzi nieodebranych po ustalonym okresie zwłoki. W istocie jest to implementacja mechanizmu Garbage Collector dla komunikatów odpowiedzi. Komunikacja synchroniczna W niektórych przypadkach klient może nie mied możliwości obsłużenia asynchronicznego mechanizmu komunikacji, wymagającego podania adresu dla komunikatów z odpowiedzią. W takiej sytuacji klient może albo asynchronicznie sprawdzad co jakiś czas stan przetwarzania (polling), albo z innych względów odwoład się do usługi rejestracji dokumentów w sposób synchroniczny na przykład gdy musi natychmiast przekazad odpowiedź użytkownikowi koocowemu. Protokoły takie jak HTTP są protokołami żądania-odpowiedzi: przeglądarka internetowa wysyła żądanie do serwera, serwer generuje stronę HTML i w tym samym połączeniu zwraca ją do przeglądarki. W przypadku protokołu synchronicznego, odpowiedź jest faktyczną odpowiedzią biznesową usługi, natomiast w przypadku komunikacji asynchronicznej może to byd jednie techniczne potwierdzenie przyjęcia żądania. Ze względu na to, że odpowiedź dla konsumenta zależy od odpowiedzi uzyskanych z innych usług (np. usług innych agencji lub usług pomocniczych), realizacja synchronicznego schematu komunikacji na poziomie usługi rejestracji dokumentów (a nie na poziomie usługi agencji) może byd niezwykle trudna. Możliwośd wygenerowania odpowiedzi w trybie synchronicznym w całości zależy od tego, czy wszystkie pozostałe usługi biorące udział w procesie obsługują komunikację synchroniczną. Oznacza to, że w czasie projektowania aplikacji konsumenta należy sprawdzid, czy wykorzystywane usługi agencyjne i usługi pomocnicze obsługują interfejsy synchroniczne i asynchroniczne. Preferowanym sposobem komunikacji jest komunikacja asynchroniczna, jednak przez to interfejs publiczny musząc obsługiwad sprawdzanie stanu żądania i operacje oczyszczania rejestru stanu żądao staje się bardziej skomplikowany. Natomiast stosowanie wyłącznie synchronicznej metody komunikacji (o ile wykorzystywane usługi agencyjne na to pozwalają) może spowodowad dodatkowe problemy ze skalowalnością, które nie wystąpiłyby w przypadku rejestracji dokumentów z użyciem metody asynchronicznej. Warto zatem stosowad metodę synchroniczną tylko wtedy, gdy jest to konieczne na przykład w usłudze obsługi płatności, która weryfikuje dane na temat karty kredytowej i generuje odpowiedź w trybie natychmiastowym. Stosowanie standardów pozwala uzyskad lepszą interoperacyjnośd Poza funkcjonalnością usługi dostawca udostępnia także informacje niezbędne konsumentowi usługi do zrozumienia jej interfejsu, sposobu działania i komunikatów generowanych w czasie pracy. Dostawca usługi podaje także wszelkie wymagania tej usługi w zakresie stosowanych protokołów, formatów kodowania danych, bezpieczeostwa, poufności i integralności danych. Wymagania mogą byd opisywane z wykorzystaniem różnych specyfikacji. WS-Policy służy do opisu wymagao i funkcji usług Web Service, WSDL pozwala opisad sposób wywoływania usługi, XML Schema (XSD) pozwala definiowad format komunikatów, SOAP zapewnia podstawowy protokół transportu żądao i odpowiedzi, a XML stanowi podstawowy format zapisu żądao i odpowiedzi usług Web Service. Łącza do szczegółowych informacji na temat wymienionych specyfikacji znajdują się w sekcji Odsyłacze, listy kontrolne i dalsze informacje na koocu tego dokumentu. Zwykle protokół HTTP uznawany jest za protokół wyższego poziomu (w stosie protokołów sieciowych znajduje się on wyżej niż na przykład protokół TCP), który może służyd do przesyłania żądao SOAP podczas wywoływania usług Web Service. W rzeczywistości jednak do tego celu równie dobrze nadaje się dowolny protokół sieciowy, taki jak TCP czy UDP. Tak długo, jak długo działa odbiornik przyjmujący i przetwarzający żądania SOAP, protokół sieciowy stosowany do przesyłania tych komunikatów praktycznie nie ma znaczenia. Protokół HTTP ze względu na to, że jest powszechnie wykorzystywany do komunikacji między przeglądarkami i serwerami internetowymi jest po prostu najwygodniejszym protokołem do celów transmisji żądao SOAP. Dzięki wykorzystaniu serwera internetowego, który przyjmuje pakiety HTTP i HTTPS na portach odpowiednio 80 i 443 protokołu TCP, nie ma potrzeby rozbudowy i rekonfiguracji istniejącej RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 72

73 infrastruktury sieciowej (zapory firewall, routery itp.) do obsługi nowego rodzaju ruchu. Wywoływanie usług Web Service za pomocą protokołu SOAP w sposób naturalny wpasowuje się w istniejące środowisko. Projektując usługę rejestracji dokumentów, poza wyborem odpowiedniego protokołu należy także zwrócid uwagę na następujące zagadnienia: Podstawowa interoperacyjnośd. Ze względu na to, że w systemach administracji publicznej wykorzystywane są bardzo różne platformy i technologie, nowo wdrażane usługi Web Service muszą charakteryzowad się interoperacyjnością niezależnie od tego, w jakiej technologii zostały utworzone. Specyfikacja WS-I Basic Profile (na koocowym etapie prac, dostępna pod adresem stanowi podstawy interoperacyjności usług Web Service, definiując zestaw standardów, na których oparte powinny byd wszystkie implementacje usług Web Service. Specyfikacja ta precyzuje minimalny zestaw wymagao dla usług Web Service, których spełnienie gwarantuje interoperacyjnośd pomiędzy usługami działającymi na różnych platformach. Wymagane standardy to SOAP 1.1 (mimo że status rekomendacji W3C uzyskała już wersja 1.2 tego protokołu), XML 1.0 i HTTP 1.1 jako sposoby zapisu i przesyłania komunikatów, WSDL 1.1 i XML Schema 1.0 do opisu usług, UDDI v2 do publikowania i wyszukiwania usług oraz HTTPS (HTTP over TLS and SSL), X.509 Public Key Infrastructure Certificate i CRL Profile jako standardy zapewniające bezpieczeostwo. Bezpieczeostwo komunikatów. Po ustaleniu podstawowych specyfikacji, następnym krokiem jest zapewnienie bezpieczeostwa przesyłanych komunikatów. Zabezpieczanie komunikatów ma istotną przewagę nad zabezpieczaniem kanałów transmisji ma znacznie szerszy zakres działania. Innymi słowy, zastosowanie mechanizmów zabezpieczeo na poziomie warstwy transportowej jest nieistotne, ponieważ zabezpieczenia dotyczą bezpośrednio samego komunikatu. Zastosowanie specyfikacji WS-I Basic Security Profile (obecny status Working Group Draft, dokument dostępny pod adresem do zapewnienia bezpieczeostwa na poziomie komunikatu gwarantuje interoperacyjnośd w zakresie zabezpieczeo pomiędzy wszystkimi stronami interakcji, które wiedzą, w jaki sposób komunikat jest zabezpieczony. Specyfikacja definiuje akceptowalne mechanizmy zabezpieczania komunikacji z usługami Web Service. Uwzględniono zabezpieczenia warstwy transportowej (SSL i TLS) oraz zabezpieczanie komunikatów SOAP zgodnie ze specyfikacją WS-Security (http://www.oasisopen.org/committees/tc_home.php?wg_abbrev=wss) oraz określono wspierane typy tokenów bezpieczeostwa. Istnieją także dodatkowe specyfikacje, definiujące inne typy tokenów na przykład REL (Rights Expression Language) czy SAML (Security Assertion Markup Language). Pozostałych aspektów bezpieczeostwa komunikatów dotyczą inne specyfikacje z rodziny WS-*, na przykład WS-Trust dotyczy wystawiania tokenów bezpieczeostwa, WS-SecureConversation określa sposoby generowania kluczy sesji, używanych do zabezpieczania komunikacji na poziomie sesji, a WS-SecurityPolicy uzupełnia specyfikację WS-Security o możliwośd definiowania wymagao w zakresie bezpieczeostwa komunikatów typów obsługiwanych tokenów, algorytmów szyfrowania itp. Wymagania usług. Z poszczególnymi usługami mogą byd związane wymagania dotyczące konsumentów korzystających z tych usług. Wymagania te mogą precyzowad typy obsługiwanych tokenów bezpieczeostwa czy algorytmów podpisywania komunikatów. Informacje o wymaganiach powinny byd udostępniane w jednym, standardowym dla wszystkich usług formacie. Format taki został zdefiniowany w specyfikacji WS-Policy. Specyfikacja ta pozwala na określanie wymagao i możliwości usług poprzez tworzenie odpowiednich zasad, pobieranych przez programistów podczas tworzenia aplikacji. Ponieważ w specyfikacji nie określono sposobu pobierania zasad czy też dołączania ich do usług Web Service, konieczne jest oparcie się na innych specyfikacjach, charakterystycznych dla wykorzystywanych technologii. Taką specyfikacją jest WS-PolicyAttachment, która określa mechanizmy wiązania zasad z usługami Web Service. Adresowanie usług Web Service. Aby móc rozpocząd korzystanie z usługi Web Service, niezbędne jest poznanie stosowanego przez tę usługę protokołu wymiany komunikatów oraz adresu, pod który komunikaty te należy wysyład. Stosowanie specyfikacji RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 73

74 WS-Addressing (posiadającej obecnie status Working Draft; specyfikacja znajduje się pod adresem do przesyłania komunikatów w sieci w sposób niezależny od warstwy transportowej gwarantuje, że każda ze stron kontraktu będzie rozumiała sposoby adresowania komunikatów stosowane przez drugą stronę i znała adres, pod który ma wysyład komunikaty. Specyfikacja określa standardowe sposoby adresowania punktów koocowych usług Web Service za pomocą referencji punktu koocowego oraz przekazywania w nagłówkach informacyjnych komunikatu informacji na temat routingu komunikatu oraz sposobu wywołania usługi. Dzięki temu w nagłówkach komunikatu SOAP w standardowy sposób można definiowad przepływy zarówno synchroniczne, jak i asynchroniczne. Metoda ta jest całkowicie niezależna od warstwy transportowej, w przeciwieostwie do metod polegających na zawarciu opisu wywołania w nagłówkach warstwy transportowej. Przykładem może byd stosowanie nagłówka SOAP-ACTION w protokole HTTP do opisu operacji SOAP na poziomie warstwy transportowej, jak ma to dziś miejsce w większości usług Web Services. Przeniesienie tej informacji do nagłówka SOAP, dzięki czemu stanie się ona częścią komunikatu SOAP, pozwala zagwarantowad pomyślne przesłanie komunikatu SOAP z wykorzystaniem dowolnego protokołu sieciowego i wykonanie właściwej operacji we właściwej usłudze. Niezawodne dostarczanie. W każdej rozproszonej architekturze opartej na wymianie komunikatów, niektóre komunikaty z pewnością uznawane są za krytyczne i ich poprawne dostarczenie jest wymaganiem stawianym całemu systemowi. Stosowanie specyfikacji WS-ReliableMessaging (http://schemas.xmlsoap.org/ws/2005/02/rm/) pozwala na transmisję komunikatów z gwarancją dostarczenia. Przed przesłaniem komunikatu, nadawca i odbiorca wymieniają serię pakietów powitalnych (handshake), co gwarantuje niezawodnośd transmisji. Co więcej, specyfikacja WS-RealiableMessaging definiuje także mechanizmy zachowania kolejności komunikatów wywoływana usługa otrzymuje komunikaty w takiej kolejności, w jakiej zostały wysłane. Obsługa transakcji. Czasami zachodzi koniecznośd, by wywołanie usługi Web Service było elementem transakcji wchodzącej w skład większej operacji. Zakres transakcji może byd bardzo różny od prostych transakcji bazodanowych (będących zwykle transakcjami zgodnymi z warunkami ACID) po długoterminowe transakcje biznesowe, których czas realizacji liczony jest w dniach, tygodniach i miesiącach, a nie w sekundach. Specyfikacje WS-Coordination, WS-AtomicTransaction oraz WS-BusinessActivity zapewniają wsparcie dla transakcji, definiując sposób reprezentacji transakcji w komunikacie SOAP i pozwalając odbiorcy komunikatu na uczestnictwo w transakcji związanej z tym komunikatem. Załączniki komunikatów. Stosowanie załączników jest dośd powszechne, szczególnie w przypadku poczty elektronicznej. Może zaistnied potrzeba dołączenia do komunikatu jakiegoś materiału w celu przesłania go do usługi oddziałowej. W takim wypadku protokół stosowany do komunikacji z usługą Web Service musi pozwalad na osadzanie załączników. Zarówno specyfikacja SOAP Message Transmission Optimization Method (MTOM) jak i XMLbinary Optimized Packaging (XOP) pozwalają na osadzenie danych binarnych w kodzie XML w postaci wiadomości zakodowanej w MIME i dołączenie takiej treści do komunikatu SOAP. Metadane usług Web Service. Wraz z upowszechnieniem się usług Web Service nadejdzie koniecznośd udostępnienia standardowego mechanizmu pobierania metadanych, dzięki któremu konsumenci w czasie projektowania aplikacji będą mogli pobrad metadane związane z usługą Web Service w sposób niezależny od wykorzystywanej warstwy transportowej. Dzięki temu konsument będzie mógł poznad wymagania i możliwości usługi Web Service. Metadane obejmują informacje takie jak zasady (WS-Policy), kontrakt (WSDL) i schemat (XSD). Taki standardowy mechanizm pobierania metadanych związanych z usługą został zdefiniowany w specyfikacji WS-MetadataExchange. W skrócie dla konsumenta widoczny jest interfejs publiczny i tylko z tym interfejsem może on współpracowad. Aby zagwarantowad, że tworzone usługi będą mogły współpracowad z systemami działającymi na różnych platformach i korzystającymi z różnych technologii, usługi te nie mogą byd oparte na zamkniętych i zastrzeżonych standardach i specyfikacjach opracowanych specjalnie na potrzeby danego rozwiązania. Efektywne wdrożenie RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 74

75 elektronicznych usług administracji publicznej wymaga utworzenia zestandaryzowanej publicznej infostrady, dostępnej i zrozumiałej dla wszystkich elementów systemu. Implementacja prywatna Zadaniem interfejsu publicznego usługi rejestracji dokumentów jest zapewnienie standardowego sposobu interakcji z konsumentami. Natomiast zadaniem implementacji prywatnej jest faktyczne przetwarzanie dokumentów, zapewnienie integracji z usługami agencji i usługami pomocniczymi, generowanie odpowiedzi oraz zagwarantowanie, że usługa będzie dostarczała innym usługom prawidłowe informacje. Usługa rejestracji dokumentów pełni wiele różnych funkcji wymagających odpowiedniej implementacji. Niektóre z nich to: odbieranie i przetwarzanie żądao, zwracanie odpowiedzi synchronicznie lub asynchronicznie, w zależności od wymagao agencji lub usługi pomocniczej, zapisywanie żądao, których dostarczenie do docelowej agencji lub usługi pomocniczej jest w danej chwili niemożliwe, zapisywanie odpowiedzi, które nie mogą byd dostarczone w sposób asynchroniczny, lub gdy konsument sam cyklicznie sprawdza dostępnośd odpowiedzi (polling), autoryzacja żądao, sprawdzanie dostępności odpowiedzi (polling), oczyszczanie rejestru odpowiedzi, inspekcja żądao, odpowiedzi oraz operacje związane z bezpieczeostwem na przykład autoryzacja, zapewnienie instrumentacji w postaci informacji o błędach, ostrzeżeo, podstawowych informacji operacyjnych, liczników wydajności umożliwiających sprawdzenie stanu usługi oraz możliwości włączania i wyłączania dodatkowych funkcji monitorowania, ułatwiających diagnozowanie ewentualnych problemów, integracja z usługami agencji i usługami pomocniczymi, przekazywanie dokumentów do usług agencji, usług pomocniczych lub równorzędnych usług rejestracji, wsparcie protokołów aplikacyjnych wyższego poziomu poprzez orkiestrację procesów biznesowych. Funkcje te omówiono bliżej w tej i w następnych sekcjach dokumentu. Na ilustracji 22. przedstawiono zarys implementacji usługi rejestracji dokumentów. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 75

76 Ilustracja 22. Usługi wysokiego poziomu świadczone przez prywatną implementację usługi rejestracji dokumentów Format komunikatów Komunikaty przesyłane są w formacie XML, który de facto stał się standardem komunikacji pomiędzy aplikacjami (konsumentami usług) a usługami Web Service (dostawcami usług). XML pozwala na zdefiniowanie struktury, która nadaje znaczenie suchym danym. Uwaga nadzór nad specyfikacją XML utrzymuje organizacja World Wide Web Consortium (W3C). Obecnie obowiązującą wersją specyfikacji jest wersja 1.1, specyfikacja ta posiada status rekomendacji W3C. Witryna organizacji W3C znajduje się pod adresem a specyfikację XML można znaleźd pod adresem Swoją popularnośd standard XML zawdzięcza głównie łatwości użycia oraz faktowi, że jest on oparty na tekście, dzięki czemu komunikaty oparte na XML mogą byd odczytywane nawet przez najprostsze systemy. Funkcje obsługi XML są powszechnie dostępne w wielu systemach operacyjnych, XML jest też obsługiwany przez bazy danych jako natywny typ danych. W związku z powyższym, stosowanie XML jako podstawowej struktury komunikatu w strukturze mającej zapewnid interoperacyjnośd pomiędzy różnymi systemami i aplikacjami w heterogenicznym środowisku administracji publicznej wydaje się byd rozwiązaniem jak najbardziej właściwym. Koperty, nagłówki i zawartości komunikatów Zastosowanie kopertowego formatu komunikatów pozwala na przechowywanie metadanych komunikatu wraz z treścią tego komunikatu. Format obejmuje nagłówek zawierający metadane oraz ciało komunikatu zawierające jego treśd. Przykładem wykorzystywanego obecnie formatu kopertowego jest SOAP protokół oparty XML (i wykorzystywany przez wielu producentów oprogramowania opartego na Web Services), służący do komunikacji pomiędzy aplikacjami i pozwalający na uzupełnienie żądao i odpowiedzi odpowiednimi metadanymi. Usługa rejestracji RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 76

77 stosuje format SOAP do przesyłania żądao i odpowiedzi do innych usług. Ponieważ protokół SOAP powinien byd obsługiwany praktycznie przez wszystkie usługi administracji publicznej niezależnie od platformy sprzętowej i systemu operacyjnego zastosowanie tego protokołu w usłudze rejestracji komunikatów zapewnia wysoką interoperacyjnośd. Uwaga nadzór nas specyfikacją SOAP sprawuje organizacja W3C. Wersja 1.2 specyfikacji, posiadająca status rekomendacji W3C, dostępna jest pod adresem Na ilustracji 23. przedstawiono przykładową strukturę dokumentu o formacie kopertowym. Koperta to struktura zawierająca w sobie zarówno nagłówek, jak i treśd dokumentu. Ilustracja 23. Przykład dokumentu o formacie kopertowym Format ten pozwala także na zagnieżdżanie dokumentów. Zaawansowany format koperty, wykorzystywany w systemach administracji, może na przykład pozwalad na zagnieżdżenie treści dokumentu SOAP wewnątrz komunikatu SOAP. Pozwala to na budowanie wielopoziomowej struktury metadanych komunikatu metadane związane z dokumentem (metadane biznesowe) mogą byd oddzielone od metadanych związanych z komunikatem SOAP (metadane techniczne, dotyczące raczej kwestii bezpieczeostwa i wiarygodności). Uwaga przykładem kopertowego formatu wykorzystywanego w administracji publicznej w Wielkiej Brytanii jest schemat GovTalk, wchodzący w skład biblioteki schematów dostępnej pod adresem Na ilustracji 24. przedstawiono zagnieżdżony komunikat o formacie kopertowym treśd komunikatu pierwszego poziomu zawiera inną kopertę. Zagnieżdżanie może byd wielopoziomowe w razie potrzeby zagnieżdżone koperty mogą zawierad kolejne koperty. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 77

78 Ilustracja 24. Przykład dokumentu zawierającego zagnieżdżoną kopertę Załączniki komunikatów Czasami konieczne jest dołączenie do dokumentu jakichś dodatkowych informacji. Mogą to byd na przykład fotografie, kopia prawa jazdy, zeskanowany tradycyjny, papierowy list czy inne materiały cyfrowe. Osadzanie załączników w dokumentach XML jest już od jakiegoś czasu możliwe technicznie dzięki różnym mechanizmom i różnym specyfikacjom, takim jak SOAP with Attachments. Najnowsza specyfikacja, która zastępuje wszystkie poprzednie, jest oparta na dwóch specyfikacjach organizacji W3C: XML-binary Optimized Packaging (XOP) i SOAP Message Transmission Optimization Mechanism (MTOM). Uwaga specyfikacja XOP znajduje się pod adresem a specyfikacja MTOM pod adresem XOP pozwala na pakowanie danych binarnych w wiadomośd sformatowaną zgodnie z MIME za pomocą kodowania Base64. Schemat dokumentu definiuje dane Base64 jako typ danych xs:base64binary wspieraną leksykalną formę kanoniczną ujętą w specyfikacji XML InfoSet (abstrakcyjny model danych dla serializowanych dokumentów XML). Uwaga znaki Base64 muszą byd zapisane w postaci kanonicznej bez dodatkowych znaków niedrukowanych na początku, wewnątrz lub na koocu zakodowanego dokumentu. Jeśli warunek ten nie zostanie dotrzymany, usługa Web Service, która odbierze komunikat, nie będzie mogła odkodowad zawartości pól Base64. Format binarny prawdopodobnie jest bardziej optymalny niż dokument zakodowany w Base64, który przed odczytaniem musi jeszcze zostad odkodowany. Dane zapisane binarnie powinny także mied mniejszą objętośd. Zamiast danych XML InfoSet, zakodowanych w Base64, element XOP zawiera łącze do zoptymalizowanej binarnej treści komunikatu MIME. Otrzymany w ten sposób pakiet (po serializacji obiektu InfoSet) nazywany jest pakietem XOP. Zawiera on dokument XML (dokument XOP) oraz przetworzoną treśd komunikatu w postaci pakietu MIME Multipart/Related. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 78

79 MTOM to specyfikacja precyzująca sposoby optymalizacji transmisji komunikatów SOAP (a w szczególności koperty). W zakresie implementacji optymalizacji specyfikacja ta oparta jest na specyfikacji XOP. Usługa Web Service w momencie otrzymania komunikatu SOAP powinna odtworzyd oryginalny komunikat poprzez odkodowanie zoptymalizowanej zawartości binarnej z powrotem do reprezentacji Base64, jednak procedura ta nie jest obowiązkowa. Bezpieczeostwo komunikatów Podstawowa komunikacja z usługami Web Service polega na wysyłaniu i odbieraniu komunikatów. Najczęściej stosowanym formatem komunikatów jest SOAP. Przesyłanie dokumentów jako treści komunikatów SOAP jest dośd problematyczne, ponieważ nie ma możliwości zabezpieczenia poszczególnych komunikatów. Specyfikacja SOAP nie obejmuje żadnych mechanizmów zabezpieczeo, a jedynie podstawową strukturę komunikatu SOAP (koperta, nagłówek i treśd). Brak odpowiednich standardów i specyfikacji we wczesnych stadiach rozwoju usług Web Service i w szczególności protokołu SOAP powodował, że do zapewnienia bezpieczeostwa komunikacji stosowano inne mechanizmy. Stosowane mechanizmy zależały od środowiska, w którym działało rozwiązanie. Najczęściej stosowano protokoły zapewniające bezpieczeostwo na poziomie transportowym SSL, TLS oraz IPSec. Taki poziom zabezpieczeo często nie jest jednak wystarczający. Dlaczego zabezpieczenie tylko warstwy transportowej może nie byd wystarczające? Zabezpieczenia wprowadzone w warstwie transportowej chronią poufnośd informacji jedynie podczas przesyłania ich pomiędzy nadawcą a odbiorcą. Poza kanałem komunikacyjnym komunikaty są niezabezpieczone, mają postad jawnego tekstu. W takim przypadku bezpieczeostwo komunikatu zależy od zapewnianych przez platformę mechanizmów zachowania poufności i integralności komunikatów. Z tego względu w momencie otrzymania komunikatu przez adresata nie można zagwarantowad, że integralnośd tego komunikatu nie została naruszona i nikt nie poznał jego treści. Co gorsza, jeśli komunikat przesyłany jest z wykorzystaniem jednego lub kilku węzłów pośrednich, podczas przechodzenia przez te węzły komunikat pozostaje niezabezpieczony. Nawet w granicach pojedynczego systemu, zabezpieczenia warstwy transportowej często zapewniane są przez specjalistyczny sprzęt i oprogramowanie (ze względu na wydajnośd i efektywnośd działania), zainstalowane na granicy systemu. Bezpieczne sesje kooczą się właśnie w tym miejscu. Nawet jeśli do celów nawiązania połączenia zastosowano odpowiedni mechanizm uwierzytelnienia wzajemnego, podczas przetwarzania komunikatu przez system informacje o nadawcy tego komunikatu mogą zostad utracone. Przyszłośd to zabezpieczenia na poziomie komunikatu Problemy związane z zapewnieniem bezpieczeostwa transmisji na poziomie transportowym można rozwiad, stosując zabezpieczenia na poziomie pojedynczych komunikatów. Istnieje kilka specyfikacji pozwalających na umieszczenie w nagłówku SOAP informacji dotyczących bezpieczeostwa komunikatu. Najlepszą z tych specyfikacji jest WS-Security. Specyfikacja WS-Security zawiera definicje zestawu pól nagłówkowych SOAP, umożliwiających zachowanie poufności i integralności komunikatów w trakcie przesyłania ich pomiędzy nadawcą a odbiorcą niezależnie od rodzajów sieci, przez jakie są przesyłane, liczby węzłów pośrednich czy typów systemów wykorzystywanych do składowania komunikatów przed wysłaniem ich w dalszą drogę. Uwaga pieczę nad standardem WS-Security piastuje organizacja OASIS, patrz strona RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 79

80 Poufnośd Poufnośd danych chroniona jest za pomocą mechanizmów szyfrowania jawna treśd komunikatu zostaje z użyciem standardowego algorytmu szyfrowania (takiego jak potrójny DES, AES czy RSA) zamieniona na niemożliwe do odcyfrowania dane binarne. Rozróżnia się dwie metody szyfrowania symetryczną i asymetryczną. Obie oparte są na zaawansowanych algorytmach matematycznych, a do zaszyfrowania i odszyfrowania danych niezbędne jest posiadania odpowiedniego klucza szyfrującego. W przypadku szyfrowania symetrycznego zarówno nadawca, jak i odbiorca komunikatu dysponują tym samym kluczem szyfrującym (zwanym też wspólnym sekretem). Do stosowania szyfrowania symetrycznego niezbędne jest istnienie jakiegoś mechanizmu wymiany kluczy szyfrujących, gwarantującego, że obie strony przed rozpoczęciem zabezpieczonej transmisji dysponują identycznymi kluczami szyfrującymi. W przypadku szyfrowania asymetrycznego każda strona posiada dwa klucze prywatny i publiczny. Klucz publiczny służy do szyfrowania wiadomości nadawanych i odbieranych od jego właściciela; właściciel może udostępnid ten klucz wszystkim osobom, z którymi chce się komunikowad. Klucz prywatny (pozostający w wyłącznej dyspozycji jego właściciela) służy do odszyfrowywania komunikatów. Treśd zaszyfrowana z użyciem klucza publicznego może zostad odszyfrowana wyłącznie za pomocą klucza prywatnego, a treśd zaszyfrowana z użyciem klucza prywatnego może zostad odszyfrowana wyłącznie za pomocą klucza publicznego. Tak długo, jak długo właściciel klucza prywatnego potrafi uchronid go przed niepowołanym dostępem, szyfrowanie asymetryczne jest wygodną i pewną metodą ochrony poufności komunikatów klucz publiczny można udostępniad dowolnym osobom. Skoro dystrybucja kluczy w przypadku szyfrowania asymetrycznego jest tak łatwa, dlaczego ta metoda szyfrowania nie jest oczywistym wyborem za każdym razem, gdy trzeba zaszyfrowad jakieś dane? Jest tak, ponieważ algorytm matematyczny oraz rozmiar stosowanych kluczy (minimalny rozmiar zapewniający ochronę przed atakami metodą przeglądu zupełnego) sprawiają, że stosowanie tej metody wymaga większej mocy obliczeniowej niż w przypadku szyfrowania symetrycznego. Dlatego tam, gdzie jest to możliwe, należy stosowad szyfrowanie symetryczne, na przykład podczas wymiany komunikatów pomiędzy usługami Web Services. Szyfrowanie asymetryczne jest przydatne na etapie negocjacji współdzielonego sekretu albo klucza sesji, który zostanie użyty do symetrycznego szyfrowania transmisji. Przykładem protokołu opartego na takim mechanizmie jest HTTPS HTTP over Secure Sockets Layer (SSL). Zastosowanie standardu WS-Security pozwala na wprowadzenie szyfrowania na dowolnym poziomie. Można szyfrowad całą treśd komunikatu albo jedynie jej części. Można zaszyfrowad nawet pola nagłówków komunikatu. W zakresie opisu konwencji stosowanych do szyfrowania poszczególnych części komunikatu SOAP, standard WS-Security opiera się na specyfikacji XML Encryption. Integralnośd Nawet jeśli treśd komunikatu nie jest poufna i tajna i nie wymaga szyfrowania, często występuje koniecznośd zagwarantowania, że podczas transmisji komunikatu nie doszło do żadnej manipulacji i integralnośd komunikatu nie została naruszona. Mechanizm taki jest szczególnie przydatny w przypadku transmisji listu lub formularza aplikacyjnego możliwa jest wtedy weryfikacja tożsamości nadawcy dokumentu. Mechanizm ten nazywany jest podpisaniem dokumentu, jego wynikiem jest dołączenie do dokumentu podpisu elektronicznego. Uwaga więcej informacji na temat technik i funkcji podpisu elektronicznego można znaleźd w temacie Podpisy elektroniczne i certyfikaty w sekcji Elementy składowe typowego rozwiązania integracyjnego dla sektora publicznego w tym przewodniku. Podpisanie dokumentu wiąże z użyciem algorytmu funkcji skrótu (na przykład SHA-1) do obliczenia małej (i o stałym rozmiarze) wartości binarnej nazywanej wartością hasz lub skrótem RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 80

81 dokumentu. Wartości skrótu są unikalne; wartości dwóch nawet niewiele różniących się od siebie dokumentów także są różne od siebie. Wartośd skrótu dokumentu zaszyfrowana prywatnym kluczem nadawcy stanowi podpis elektroniczny tego dokumentu. Odbiorca dokumentu może odszyfrowad podpis za pomocą klucza publicznego nadawcy, ponownie obliczyd wartośd skrótu dokumentu za pomocą tego samego algorytmu funkcji skrótu i porównad wartośd odszyfrowaną z wartością obliczoną. Jeśli wartości te różnią się od siebie, treśd dokumentu uległa zmianie i komunikat powinien zostad odrzucony. Jeśli wartości są identyczne, adresat ma gwarancję, że komunikat dotarł do niego w stanie nienaruszonym. W przypadku obliczania wartości skrótu dokumentu XML występuje dodatkowy problem dwa dokumenty XML mogą byd identyczne syntaktycznie, ale różnid się ze względu na dodatkowe znaki niedrukowane (odstępy, znaki kooca linii itp.). Znaki te mają jedynie wpływ na formatowanie znaczników XML, ale nie zmieniają treści dokumentu. Zatem przed obliczeniem wartości skrótu dokumentu zachodzi koniecznośd doprowadzenia go do postaci kanonicznej za pomocą odpowiedniego algorytmu usuwającego niedrukowane znaki zgodnie ze ustalonymi zasadami. Uwaga organizacja W3C opracowała specyfikację o nazwie Canonical XML (czasem oznaczaną także symbolem C14N jako skrót słowa canonicalization), która precyzuje reguły transformowania dokumentów XML do postaci kanonicznej w celu obliczenia wartości skrótu dla podpisu cyfrowego. Specyfikacja w wersji 1.0 ma status rekomendacji W3C i dostępna jest pod adresem Standard WS-Security pozwala na cyfrowe podpisywanie różnych części komunikatu SOAP tak samo, jak ma to miejsce w przypadku szyfrowania. W zakresie tworzenia podpisów cyfrowych i dołączania ich do komunikatów SOAP, standard WS-Security opiera się na specyfikacji XML Signature. Uwaga specyfikacja XML Signature ma status rekomendacji W3C i jest dostępna pod adresem Autoryzacja Usługa rejestracji dokumentów powinna poprawnie obsługiwad przesłane w nagłówkach komunikatów SOAP tokeny zabezpieczeo, pozwalające adresatowi zidentyfikowad nadawcę dokumentu. Nadawca przed wysłaniem dokumentu powinien uwierzytelnid się w swojej domenie zaufania, dzięki czemu pod warunkiem, że pomiędzy domeną, która wystawiła token, a domeną, w której znajduje się usługa rejestracji dokumentów, istnieje relacja zaufania usługa zaakceptuje uwierzytelnienie nadawcy. Możliwośd manipulowania zawartością tokenu jest wykluczona przez podpis cyfrowy tokenu. Istnieje także możliwośd sprawdzenia integralności komunikatu. Po zweryfikowaniu tokena bezpieczeostwa, usługa rejestracji dokumentów musi sprawdzid, czy nadawca posiada autoryzację do przesłania dokumentu do usługi agencji lub usługi pomocniczej. Może to zrobid poprzez sprawdzenie rejestracji nadawcy w tych usługach. Poza tym sprawdzany jest także poziom uwierzytelnienia nadawcy w jego lokalnej domenie zaufania w odniesieniu do minimalnego poziomu akceptowanego przez usługę agencji lub usługę pomocniczą. Dowolna negatywna odpowiedź usługi uwierzytelniania powoduje, że usługa rejestracji dokumentów zwraca komunikat błędu SOAP z informacją, że nadawca nie jest autoryzowany do przesłania dokumentu do tej usługi. Walidacja komunikatu Po zweryfikowaniu nadawcy i autoryzowaniu go do przesłania dokumentu i komunikatu oraz po sprawdzeniu nagłówków komunikatu może byd konieczne zwalidowanie treści komunikatu. Walidacja treści pozwala przed dostarczeniem dokumentu do docelowej usługi agencji lub usługi pomocniczej upewnid się, że struktura i zawartośd dokumentu mają właściwą postad. Można RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 81

82 także przeprowadzid walidację dokumentów, które mają zostad przekazane do równorzędnej usługi rejestracji dokumentów. Podejście to można stosowad na przykład wtedy, gdy usługa równorzędna nie ma wystarczających zasobów do przeprowadzenia takiej walidacji. Jeśli walidacja dokumentu nie powiedzie się, usługa rejestracji dokumentów powinna zwrócid komunikat błędu SOAP. Zaletą wykonywania podstawowej walidacji przez usługę rejestracji dokumentów jest fakt, że usługi docelowe otrzymują wyłącznie dokumenty zgodne z ustalonym schematem. Zwykle do walidacji wykorzystywany jest schemat zdefiniowany za pomocą XML Schema (XSD). XSD pozwala na ścisłe zdefiniowanie struktury dokumentu XML, włącznie z ograniczeniem liczby powtórzeo poszczególnych elementów, obowiązkiem istnienia pewnych elementów itd. XSD pozwala także na sprawdzanie typów danych poszczególnych elementów i atrybutów, a także sprawdzanie, czy użyte wartości danych należą do dozwolonych zakresów wartości (lub zbiorów wartości typów wyliczeniowych) oraz na porównywanie danych ze złożonymi wzorcami. Magazyn komunikatów Usługa rejestracji dokumentów powinna zwrócid nadawcy informację o poprawnym przyjęciu komunikatu i zagwarantowad, że przesłany komunikat nie zostanie zagubiony lub zignorowany. Aby dotrzymad tych warunków, kopia dokumentu na czas jego przetwarzania zostaje zapisana w tymczasowym magazynie danych. Jeśli usługa rejestracji dokumentów nie będzie mogła dostarczyd dokumentu do usługi agencji, usługi pomocniczej lub równorzędnej usługi rejestracji dokumentów, komunikat będzie przechowywany tak długo, aż jego dostarczenie będzie możliwe. Usługa rejestracji dokumentów może na przykład okresowo ponawiad próby dostarczenia dokumentu zgodnie z określonym algorytmem. Magazyn komunikatów jest także miejscem tymczasowego składowania odpowiedzi, które nie zostały jeszcze przekazane nadawcy dokumentu (w przypadku, gdy nadawca podał adres zwrotny) lub nie zostały jeszcze pobrane przez nadawcę komunikatu (w przypadku, gdy nadawca zdecydował się na okresowe sprawdzanie dostępności odpowiedzi polling). Magazyn komunikatów jest elementem krytycznym dla działania usługi rejestracji dokumentów, powinien byd więc odpowiednio zabezpieczony przed awariami sprzętu i oprogramowania oraz skutkami klęsk żywiołowych. Routing komunikatów Jednym z głównych zadao usług rejestracji jest przekazywanie dokumentów do ich odpowiednich odbiorców. Może się to wiązad z koniecznością przekazania dokumentu do: stowarzyszonej usługi znajdującej się lokalnie, w agencji (w przypadku dokumentów przekazywanych przez usługę rejestracji dokumentów na poziomie domenowym), stowarzyszonej usługi centralnej dla danej domeny (w przypadku dokumentów przekazywanych przez lokalną usługę rejestracji dokumentów), stowarzyszonej usługi znajdującej się w innej domenie zaufania (w przypadku dokumentów przekazywanych przez usługi rejestracji dokumentów na poziomie lokalnym lub poziomie domeny), centralnej usługi pomocniczej, usługi agencyjnej. Na ilustracji 25. przedstawiono różne ścieżki przekazywania dokumentu. Kolory linii oznaczają: linia czerwona fizyczna droga przekazania dokumentu pomiędzy stowarzyszonymi usługami, przerywana linia czerwona logiczna droga przekazania dokumentu; faktyczna fizyczna droga dokumentu może prowadzid przez inne węzły, linia niebieska droga przekazania komunikatu do usługi urzędu, linia zielona droga przekazania komunikatu do usługi pomocniczej. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 82

83 Ilustracja 25. Drogi przekazywania dokumentów przez usługę rejestracji dokumentów Adresowanie usług Web Services Lokalizacja usługi Web Services ustalana jest w czasie działania aplikacji poprzez przeszukanie katalogu UDDI. Pozwala to utrzymad jedno z podstawowych założeo architektury zorientowanej na usługi przezroczystośd lokalizacji. Adres uzyskany w wyniku wyszukiwania odpowiada fizycznej lokalizacji usługi Web Service. Może on mied postad adresu URL protokołu HTTP jeśli komunikacja z usługą Web Service odbywa się za pośrednictwem protokołu HTTP, ale może to byd także inny typ adresu jeśli wykorzystywany jest inny protokół komunikacyjny, na przykład podstawowy TCP/IP. Komunikat SOAP z dokumentem biznesowym powinien zawierad nagłówki SOAP z adresem punktu koocowego, który ma otrzymad i przetworzyd dokument. Adresem tym często jest adres usługi rejestracji dokumentów, której zadaniem jest przekazanie komunikatu do docelowej usługi agencji lub usługi pomocniczej. Oprócz adresu punktu koocowego, komunikat może zawierad także zestaw właściwości opisujących docelową usługę agencji lub usługę pomocniczą, a także inne właściwości techniczne i specyficzne dla aplikacji, wymagane przez daną usługę agencji lub usługę pomocniczą. Dzięki tym właściwościom usługa rejestracji dokumentów, do której trafi komunikat, może przekazad komunikat dalej do właściwej usługi docelowej. Specyfikacja WS-Addressing umożliwia stosowanie zestandaryzowanego formatu adresów Web Service w nagłówkach komunikatów SOAP. Adresat komunikatu (adres punktu koocowego) jest określony przez element To, a operacja, która ma zostad wykonana przez usługę Web Service jest określana przez element Action. Element From identyfikuje nadawcę komunikatu, a element RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 83

84 ReplyTo wskazuje adres, pod który należy skierowad odpowiedź. Natomiast element FaultTo wskazuje adres, pod który należy kierowad komunikaty informujące o błędach. Z każdym elementem adresu punktu koocowego mogą byd (opcjonalnie) związane właściwości referencji, reprezentowane przez element ReferenceProperties. Ścieżki komunikatów i węzły pośredniczące Istnieje możliwośd przesłania komunikatu do usługi rejestracji dokumentów, która działa jako serwer pośredniczący i nie jest usługą identyfikowaną przez element To nagłówka SOAP. W takim wypadku usługa rejestracji dokumentów przekaże komunikat dalej, używając reguł biznesowych do wyznaczenia kolejnego węzła na podstawie zawartości adresu podanego w nagłówku To. Kolejny węzeł także nie musi byd węzłem koocowym komunikat SOAP przekazywany jest wyznaczaną dynamicznie ścieżką pomiędzy kolejnymi węzłami pośredniczącymi. O ile możliwe jest zdefiniowanie ścieżki przekazywania komunikatu SOAP w nagłówku tego komunikatu (starsze specyfikacje, takie jak WS-Routing proponowały nawet standardy definiowania takich ścieżek), nie zawsze jest to pożądane. Gdy ścieżka przekazywania komunikatu jest określona w jego nagłówku, wprowadzanie jakichkolwiek zmian jest praktycznie niemożliwe, chyba że węzeł pośredniczący ma możliwośd aktualizacji nagłówka. Węzeł musiałby albo usunąd swój wpis ze ścieżki albo ustawid flagę wskazującą, że komunikat został poddany przetwarzaniu. Z działaniem takim związany jest problem bezpieczeostwa. Aby uniknąd przesyłania komunikatów do podejrzanych węzłów, nagłówki adresowe tych komunikatów powinny byd chronione podpisem cyfrowym. Jeśli węzeł pośredniczący ma mied możliwośd uaktualnienia nagłówka, nagłówek ten nie może byd podpisany, a to z kolei mogłoby umożliwid atakującemu zmodyfikowanie nagłówków i umieszczenie w nich adresu podstawionego węzła. Jest więc oczywiste, że nagłówki muszą byd podpisywane cyfrowo, a zatem dynamiczne modyfikowanie ścieżki komunikatu przez węzły pośredniczące jest niemożliwe w nagłówku komunikatu musi byd ustalona stała ścieżka. Routing komunikatów do węzłów równorzędnych Dany węzeł może przekazad komunikat do innego, równorzędnego węzła do innej usługi rejestracji dokumentów istniejącej w tej samej lub w innej domenie zaufania. Przekazanie takie może byd spowodowane na przykład niedostępnością koocowego węzła, do którego ma trafid dany komunikat. Usługa docelowa, do której przekazany zostanie komunikat, ustalana jest poprzez odwzorowanie określonego w nagłówku adresu punktu docelowego na adres kolejnego węzła w łaocuchu albo adres węzła koocowego. Reguły odwzorowao zwykle utrzymywane są przez silnik reguł lub bufor routujący (podobnie jak w przypadku routera sieciowego). Reguły mogą byd modyfikowane przez administratorów w celu optymalizacji przekazywania komunikatów. Routing komunikatów w oparciu o metadane Czasami samo odwzorowanie adresu docelowego z nagłówka nie wystarcza do ustalenia dalszej drogi komunikatu potrzebne są dodatkowe właściwości. Właściwości te są związane z komunikatem, ale nie są uznawane za treśd tego komunikatu. Właściwościami tymi może byd protokół sieciowy wykorzystany do przesłania komunikatu (HTTP, TCP, UDP, IPX itp.), usługa agencji, która może przetwarzad dokumenty tego typu, nadawca komunikatu itd. Takie dodatkowe informacje mogą wesprzed proces podejmowania decyzji dotyczącej następnego węzła w ścieżce. Routing komunikatów w oparciu o treśd dokumentu Przekazywanie dokumentów w oparciu o treśd dokumentu (Content Based Routing CBR) jest rozwinięciem pomysłu przekazywania komunikatów w oparciu o metadane. Mechanizm ten zapewnia bardzo precyzyjną kontrolę nad regułami rządzącymi przekazywaniem komunikatów. Węzeł odpowiedzialny za podjecie decyzji o dalszej drodze komunikatu musi z treści dokumentu RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 84

85 pobrad właściwości, na podstawie których decyzja ta ma byd podjęta. Węzeł ten musi zatem znad format dokumentu i umied go odczytad. Niezawodne dostarczanie komunikatów Samo wysłanie komunikatu do usługi rejestracji dokumentów nie daje gwarancji, że komunikat ten zostanie dostarczony. Nadawca komunikatu nie ma żadnej możliwości dowiedzenia się, że adresat otrzymał ten komunikat lub że konieczne jest jego ponowne wysłanie. Co więcej, dostawca usługi może wymagad dostarczania komunikatów w kolejności takiej, w jakiej zostały wysłane. Podstawowy protokół SOAP nie zawiera żadnego mechanizmu wspierającego dostarczanie komunikatów w kolejności wysłania. Specyfikacja WS-ReliableMessaging definiuje standardowy protokół niezawodnej transmisji komunikatów w określonej kolejności, odporny na awarie sieci i systemów. Pomimo że specyfikacja WS-ReliableMessaging została dopiero niedawno przekazana do OASIS, będzie podstawą nowej technologii komunikacyjnej Microsoft o nazwie Indigo. Komunikacja przebiega w następujący sposób: aplikacja wysyła komunikat do węzła docelowego. Węzeł docelowy potwierdza przyjęcie komunikatu, wysyłając komunikat zwrotny do aplikacji adresata. Ścieżka przekazywania komunikatów ustalana jest z wykorzystaniem różnych komunikatów określonych w standardzie WS-ReliableMessaging CreateSequence, LastMessage, SequenceAcknowledgement oraz TerminateSequence. Przyjrzyjmy się teraz przebiegowi komunikacji na poziomie protokołu. System źródłowy (source system) po otrzymaniu komunikatu od aplikacji-nadawcy wysyła do systemu docelowego (target system) komunikat CreateSequence. System docelowy generuje identyfikator sekwencji i wysyła do systemu źródłowego komunikat CreateSequenceResponse. Następnie system źródłowy wysyła jeden lub klika komunikatów opatrzonych numerami rosnącymi. Ostatni komunikat jest oznaczony tokenem LastMessage. System docelowy odpowiada komunikatem SequenceAcknowledgement, zawierającym numery otrzymanych komunikatów. System źródłowy sprawdza otrzymany komunikat, i jeśli niektóre komunikaty nie zostały dostarczone wysyła je ponownie z prośbą o potwierdzenie dostarczenia. Gdy system docelowy potwierdzi otrzymanie wszystkich komunikatów, system źródłowy wysyła komunikat TerminateSequence. Uwaga specyfikacja protokołu WS-ReliableMessaging dostępna jest pod adresem Mechanizm wymiany komunikatów, opisany w specyfikacji WS-ReliableMessaging, przestawiono na ilustracji 26. Komunikat nr 2 nie został dostarczony, mechanizm komunikacji wykrywa brak i powoduje ponowne wysłanie komunikatu przez nadawcę. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 85

86 Ilustracja 26. Podstawowy protokół wymiany komunikatów niezbędny do niezawodnej komunikacji Obsługa transakcji Dostarczenie komunikatu może byd elementem działania o wyższym poziomie abstrakcji na przykład transakcji obejmującej wiele operacji. Transakcje mogą byd krótkoterminowe lub długoterminowe. Transakcje krótkoterminowe są podobne do transakcji znanych z systemów baz danych i mają charakter operacji niepodzielnych (atomowych). Wszystko albo nic albo wykonanie wszystkich operacji składowych transakcji powiedzie się, albo wszystkie zostaną wycofane. Co więcej, do czasu zatwierdzenia transakcji wyniki wszystkich operacji wykonanych w ramach tej transakcji są odseparowane od pozostałych transakcji w innym wypadku dane stałyby się niespójne. Koniecznośd izolowania transakcji krótkoterminowych od innych operacji i blokowanie zasobów do momentu zakooczenia wszystkich operacji składających się na transakcję sprawia, że transakcje takie nie mogą byd realizowane zbyt długo, gdyż zachodzi możliwośd wyczerpania zasobów i spowodowania problemów współbieżności. Efekty realizacji transakcji widoczne we wszystkich menedżerach zasobów są trwałe po zatwierdzeniu transakcji wynik jest trwały i widoczny dla innych transakcji. Opisane tu warunki realizacji transakcji określa się mianem ACID (atomicity niepodzielnośd, consistency spójnośd, isolation izolacja, durability trwałośd). Natomiast realizacja transakcji długoterminowych może trwad dni, tygodnie czy nawet miesiące, co nie jest możliwe w przypadku transakcji krótkoterminowych. Ten typ transakcji stosuje się zwykle w procesach, w których niezbędna jest wymiana komunikatów pomiędzy różnymi organizacjami. Transakcja długoterminowa może zainicjowad wiele mniejszych transakcji długoterminowych lub pojedynczych operacji, jednak efekt wykonania transakcji długoterminowej nie jest zgodny z regułami ACID, które dotyczą z reguły transakcji krótkoterminowych. W przypadku niepowodzenia wykonania operacji wchodzącej w skład transakcji długoterminowej nie jest możliwe automatyczne wycofanie efektów wykonanych wcześniej operacji (jak to ma miejsce w przypadku transakcji niepodzielnych). Może to spowodowad zakłócenie spójności RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 86

87 zasobów zewnętrznych. Niezbędne jest więc wdrożenie procedur kompensacyjnych, pozwalających na umiejętne wycofanie rezultatów wcześniejszych, udanych operacji. Obecnie usługi Web Service nie pozwalają na korzystanie z dobrodziejstw przetwarzania transakcyjnego specyfikacja protokołu SOAP nie definiuje protokołu umożliwiającego włączenie wywołania usługi Web Service do transakcji. Z braku wysokopoziomowego protokołu aplikacyjnego, wszystkie komunikaty SOAP traktowane są jako niezależne operacje (zresztą procesor SOAP nie mógłby inaczej traktowad komunikatów, ponieważ ewentualny protokół byłby specyficzny dla aplikacji i nie obejmowałby warstwy komunikacyjnej SOAP). Protokoły niezbędne do obsługi różnych typów transakcji przez usługi Web Service definiowane są przez specyfikację WS-Coordination, a także specyfikacje WS-AtomicTransaction oraz WS-BusinessActivity. W specyfikacjach tych zdefiniowano zestaw standardowych nagłówków SOAP, dzięki którym operacje wykonywane na usługach Web Service mogą byd elementami rozproszonych transakcji pomiędzy różnymi organizacjami. Przedłożenie dokumentu w usłudze rejestracji dokumentów może byd realizowane w ramach transakcji krótko- lub długoterminowej w zależności od wymagao konsumentów oraz możliwości usługi agencji lub usługi pomocniczej. Jednak zanim obsługa transakcji stanie się realna, potrzebne jest ukooczenie prac nad wymienionymi wyżej specyfikacjami oraz implementacja tych specyfikacji w platformach wykorzystywanych do budowy systemów informatycznych. Orkiestracja procesów biznesowych Usługa rejestracji przekazuje dokumenty dalej do innych usług na podstawie reguł działających w oparciu o mapowanie adresów, metadane lub treśd dokumentu. Usługa ta powinna byd oparta na przyjętych w branży standardach i specyfikacjach opracowanych przez organizacje W3C i OASIS oraz specyfikacjach WS-* i spełniad podstawowe wymagania dotyczące komunikacji i wymiany komunikatów, takie jak zachowanie poufności i integralności komunikatów, gwarantowane dostarczenie komunikatu, obsługa transakcji, załączników itp. Spełnienie wymienionych wyżej wymagao warstwy komunikacyjnej jest w niektórych przypadkach krytyczne, a w innych pożądane. Opisane do tej pory usługi nie pozwalają jednak na zbudowanie protokołu aplikacyjnego w oparciu o proste mechanizmy wymiany komunikatów, koordynujące przepływ komunikatów oraz wysyłanie i odbieranie komunikatów z różnych węzłów systemu. Protokół aplikacyjny (zwany też procesem biznesowym) budowany jest zwykle na podstawie zestawu statycznych i dynamicznych reguł biznesowych. Czasem używa się też pojęcia systemowy obieg zadao (system workflow) obieg zadao pomiędzy systemem lokalnym i systemami zdalnymi, nie wymagający interakcji z użytkownikami tych systemów. Realizacja procesu biznesowego przez silnik orkiestracji polega na ustaleniu drogi przepływu komunikatu przez ten proces i dostarczeniu komunikatu do pewnej liczby punktów koocowych (partnerów, usług, aplikacji itp.) zgodnie z określonymi dla tego procesu regułami. Na przykład protokół wymiany komunikatów między konsumentem a dostawcą usługi realizacji płatności (payment service provider PSP) może składad się z następujących etapów: wysłanie do PSP żądania autoryzacji wstępnej, odbiór potwierdzenia żądania, sprawdzenie stanu autoryzacji, następnie, jeśli autoryzacja przebiegła pomyślnie: wysłanie do PSP żądania realizacji płatności, odbiór potwierdzenia żądania, sprawdzenie, czy realizacja żądania przebiegła bezbłędnie. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 87

88 W przyszłości proces taki mógłby zostad rozbudowany o dodatkowy etap, polegający na wybraniu najbardziej ekonomicznego PSP w oparciu o kwotę transakcji oraz opłatę pobieraną przez PSP za realizację płatności o danej wysokości. W tym wypadku statyczna częśd procesu biznesowego definiuje poszczególne kroki, decyzje i rozgałęzienia sterowania, niezbędne do budowy logiki biznesowej. Częśd ta jest częścią statyczną, ponieważ pozostaje niezmieniona do czasu, aż zmiana wymagao systemowych spowoduje koniecznośd dodania kilku dodatkowych kroków związanych na przykład z włączeniem do procesu jakiejś aplikacji branżowej. Częśd dynamiczna procesu definiuje parametry lub zasady biznesowe, mające wpływ na wyniki poszczególnych decyzji. Zmiany zasad biznesowych wymagają odpowiedniego uwzględnienia ich w sposobie działania systemu w celu utrzymania sprawności jego działania. Wródmy do naszego przykładu. Elementem takich dynamicznych zasad biznesowych mogą byd wysokości prowizji od operacji płatności informacje takie muszą byd natychmiast aktualizowane w odpowiedzi na zmiany cen, publikowane przez dostawców usług realizacji płatności. Innym parametrem wymagającym aktualizacji może byd progowa wartośd transakcji płatności, określająca preferowanego dostawcę dla realizacji tej transakcji. Na ilustracji 27. przedstawiono uproszczony schemat opisanej wyżej interakcji pomiędzy dwoma uczestnikami. Kolorowe trójkątne symbole odpowiadają interfejsom publicznym usług, czyli punktom, w których realizowane są interakcje. Symbolami dokumentów oznaczono przepływy danych pomiędzy stronami interakcji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 88

89 Ilustracja 27. Przykład procesu biznesowego implementującego protokół biznesowy pomiędzy dwiema stronami Do reprezentacji interakcji pomiędzy elementami systemu służy specyfikacja WS-BPEL (znana wcześniej pod nazwą BPEL4WS), która może byd wykorzystywana przez silnik orkiestracji do wykonywania logiki procesu biznesowego. BPEL to standard reprezentacji procesów biznesowych. Standard ten jest niezależny od wykorzystywanych technologii i może obejmowad usługi działające w różnych systemach i organizacjach. Uwaga pieczę nad standardem WS-BPEL sprawuje organizacja OASIS. Wersja 2 tej specyfikacji, posiadająca obecnie status Draft, dostępna jest pod adresem Procesy biznesowe w hubie usług Mimo że podstawowym zadaniem huba jest ułatwienie komunikacji, częśd operacji komunikacyjnych może byd bardziej złożona niż proste przekazanie dokumentu pomiędzy dwoma punktami koocowymi. Jeśli potrzebne jest stosowanie wysokopoziomowych protokołów biznesowych i procesów, hub powinien zapewnid możliwośd wykonywania tych procesów w standardowy sposób, którego realizacja możliwa jest na różnych platformach, z wykorzystaniem różnych technologii. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 89

90 W odróżnieniu od interfejsu publicznego (protokołu biznesowego wykorzystanego do interakcji pomiędzy różnymi elementami systemu), prywatne implementacje procesów biznesowych są z reguły wewnętrzną sprawą realizujących je organizacji. Dostępne w hubie usług warstwa publiczna oraz usługi warstwy prywatnej usługi przekazywania komunikatów, usługi integracyjne, usługi procesów biznesowych można modyfikowad i dopasowywad do potrzeb organizacji będącej właścicielem danej części rozwiązania niezależnie od tego, czy jest to agencja centralna, agencja lokalna czy partner współuczestniczący w kosztach utrzymania huba. Integracja z usługami zaplecza Większośd wcześniejszych sekcji tego dokumentu zawiera opis architektury referencyjnej ogólnego huba usług, w którym interakcje pomiędzy usługami zachodzą w oparciu o uznane standardy branżowe i specyfikacje, pozwalające uzyskad tak ważny w środowisku heterogenicznym wysoki poziom interoperacyjności. Uzyskanie bezpośredniej interoperacyjności pomiędzy systemami opartymi na standardach to ważny cel w budowaniu systemu, jednak integracja z istniejącymi systemami i usługami administracji publicznej rozwiązaniami bardzo zróżnicowanymi, tworzonymi na zamówienie albo produktami gotowymi jest sporym wyzwaniem. Prawdopodobnie systemy te z wolna będą uzyskiwały możliwośd komunikacji z wykorzystaniem usług Web Service o ile w ogóle taka możliwośd się pojawi. Prywatna strona (biała skrzynka) usługi rejestracji przekazuje dokument do innej usługi lub do silnika usług integracyjnych. Usługi integracyjne to ogólna nazwa wspólnej platformy integracyjnej, zapewniającej komunikację EAI (Enterprise Application Integration) i B2B (Businessto-Business). Implementacja białej skrzynki usługi rejestracji jest elementem platformy usług integracyjnych, pozwala więc na integrację z usługami agencji nieobsługującymi interfejsu Web Service opartego na standardach i profilu interoperacyjności przyjętym w sektorze publicznym na przykład WS-I Basic Profile. W ramach wspólnej platformy usługi integracyjne umożliwiają integrację z systemami wykorzystującymi różnorodne mechanizmy, takie jak: SOAP do komunikacji z usługami Web Service, HTTP proste publikowanie dokumentów na serwerach internetowych, często w formacie XML, FTP do transmisji plików zawierających duże ilości danych, mechanizmy kolejkowania, takie jak IBM MQSeries i Microsoft MSMQ, pliki w lokalnych lub sieciowych systemach plików, zapytania do baz danych z wykorzystaniem technologii ODBC i OLEDB, SMTP i POP3 do dostępu do poczty elektronicznej i wysyłania wiadomości , niestandardowe interfejsy API czasami oferowane przez producentów oprogramowania w celu umożliwienia klientom dostępu do danych w zorganizowany i wspierany sposób. Na ilustracji 28 przedstawiono strukturę logiczną platformy usług integracyjnych. Adaptery to komponenty zapewniające obsługę konkretnego protokołu lub komunikację z interfejsem API. Implementacje czarnej i białej skrzynki są logicznie elementami usługi rejestracji, jednak implementacja białej skrzynki może korzystad z platformy usług integracyjnych w zakresie komunikacji z usługami agencji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 90

91 Ilustracja 28. Struktura logiczna usług integracyjnych Systemy zwykle obsługują jakąś metodę integracji. Czasem jest to po prostu możliwośd wsadowego importu danych, bez komunikacji w czasie rzeczywistym. Zdarzają się jednak systemy wykorzystujące gotową aplikację, która nie oferuje żadnych możliwości integracji. Aplikacje takie albo wykorzystują zamknięty format danych, albo są oparte na standardowej bazie danych, ale ich producent nie przewidział żadnego interfejsu umożliwiającego dostęp do zgromadzonych danych. W takich przypadkach zachodzi koniecznośd rozszerzenia typowo systemowego przepływu zadao o elementy obsługiwane przez ludzi. Element obsługiwany przez operatora lub użytkownika koocowego służy zadaniom takim jak przyjmowanie danych i wprowadzanie ich do aplikacji, która nie daje się zintegrowad. Uwaga w niektórych przypadkach aplikacje oparte są na standardowej bazie danych, takiej jak Oracle czy SQL Server, ale nie zapewniają żadnego wspieranego interfejsu dostępu do danych zgromadzonych w bazie danych. Chociaż producenci baz danych zapewniają metody dostępu programistycznego do baz danych, taka metoda dostępu do danych aplikacji nie jest zalecana. Polega ona na bezpośrednim dostępie do surowych danych w tabelach bazy danych, a struktura danych może byd różna w różnych wersjach aplikacji. W przypadku budowy rozwiązania integracyjnego na poziomie bazy danych każde uaktualnienie oprogramowania może uniemożliwid dalsze funkcjonowanie systemu lub byd przyczyną występowania błędów, na które nie można sobie pozwolid w środowisku produkcyjnym. Istnieje także prawdopodobieostwo, że platforma integracyjna i integrowana aplikacja będą zarządzane przez różne departamenty. W takiej sytuacji uaktualnienie aplikacji może nastąpid bez wiedzy departamentu zarządzającego platformą integracyjną. W celu uniknięcia takich problemów każda integracja systemu lub aplikacji powinna byd oparta na wspieranym interfejsie lub protokole. Przekazywanie dokumentów do zainteresowanych stron Chociaż silnik usług integracyjnych nie zawsze jest głównym silnikiem decydującym o drodze przekazywania komunikatów, zapewnia on możliwośd przekazywania komunikatów w oparciu o reguły routingu zapisane w postaci metadanych lub w oparciu o treśd komunikatu (patrz wcześniejsza sekcja Usługi rejestracji dokumentów). Po przyjęciu dokumentu przez platformę integracyjną, silnik usług integracyjnych musi przekazad ten dokument do odpowiedniego systemu, aplikacji lub partnera z wykorzystaniem mechanizmu komunikacyjnego skonfigurowanego dla systemu docelowego. Mechanizmem takim może byd folder dyskowy, publikacja dokumentu na serwerze WWW lub wywołanie procedury składowanej z określonej bazy danych. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 91

92 Schemat brokera komunikatów Broker komunikatów stanowi pewien rodzaj separatora pomiędzy systemem źródłowym a docelowym. Rozwiązanie to przewyższa rozwiązania integracyjne punkt-punkt pod tym względem, że broker może transformowad dane systemu źródłowego na format oczekiwany przez system docelowy. Oznacza to, że systemy docelowe nie muszą obsługiwad danych w formatach udostępnianych przez systemy źródłowe. Co więcej, broker komunikatów może pracowad zarówno w trybie bezpośrednim, jak i pośrednim. Tryb pracy decyduje o sposobie komunikacji systemu źródłowego z systemem docelowym. W trybie bezpośrednim system źródłowy kieruje do brokera pytanie o lokalizację systemu docelowego, a gdy otrzyma odpowiedź, komunikuje się bezpośrednio z systemem docelowym. Ten tryb pracy nie zapewnia jednak pełnej separacji systemu źródłowego i docelowego. Z tego względu brokery komunikatów obsługują także pośredni tryb komunikacji, w pełni kontrolując komunikację pomiędzy systemem źródłowym i docelowym. Mogą także oferowad dodatkowe usługi związane z bezpieczeostwem, transformowaniem komunikatów, routingiem, inspekcją i raportowaniem. Pośredni tryb komunikacji często nazywany jest modelem huba i szprych. Schemat brokera komunikatów przedstawiono na ilustracji 29. Ilustracja 29. Schemat brokera komunikatów Schemat magistrali komunikacyjnej Schemat magistrali komunikacyjnej różni się od schematu brokera komunikatów tym, że systemy docelowe zgłaszają chęd uczestnictwa w procesie przekazywania komunikatów, a dostarczanie komunikatów z użyciem magistrali odbywa się albo poprzez routing (na podstawie danych o konfiguracji routingu), albo poprzez mechanizm publikowania i subskrypcji. W przeciwieostwie do schematu brokera komunikatów, w którym system źródłowy musi znad lokalizację systemu docelowego, w przypadku magistrali komunikacyjnej system źródłowy nie musi nawet wiedzied, kto jest odbiorcą komunikatów. Stosowanie schematu magistrali komunikacyjnej ułatwia dodawanie i usuwanie systemów docelowych bez wpływu na pozostałe interakcje pomiędzy systemami i zapewnia pełną separację systemów źródłowych i docelowych. Wszystkie systemy korzystające z magistrali komunikacyjnej muszą obsługiwad pewien wspólny (kanoniczny) zbiór schematów komunikatów z danymi oraz komunikatów sterujących i stosowad te schematy do formatowania wszystkich komunikatów przesyłanych magistralą. Jeśli jakiś system źródłowy nie obsługuje natywnie wymaganego formatu komunikatów, konieczne jest zastosowanie translatora konwertującego format natywny systemu na format kanoniczny. Analogicznie, w przypadku systemu docelowego konieczne jest zastosowanie translatora konwertującego format kanoniczny na format natywny. Systemy źródłowe i docelowe muszą byd wyposażone w interfejsy łączące je z magistralą komunikacyjną. Jeśli nie zapewniają takiej funkcjonalności w sposób natywny, konieczne jest opracowanie odpowiednich adapterów obsługujących komunikację z systemem poprzez wywołania odpowiedniego interfejsu API lub z wykorzystaniem określonego protokołu sieciowego. Schemat magistrali komunikacyjnej przedstawiono na ilustracji 30. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 92

93 Ilustracja 30. Schemat magistrali komunikacyjnej Wspólna platforma infrastruktury zapewnia mechanizmy do wysyłania komunikatów z użyciem magistrali. Zarządza komunikatami przesyłanymi magistralą i dba, by były one przekazywane do właściwych systemów docelowych na postawie zestawu reguł routingu lub mechanizmu znanego jako mechanizm publikowania i subskrypcji. Mechanizm ten opisano w następnej sekcji. Mechanizm publikowania i subskrypcji Jednym z najbardziej elastycznych mechanizmów routingu komunikatów na magistrali komunikacyjnej jest mechanizm publikowania i subskrypcji. System źródłowy publikuje komunikat na magistrali komunikacyjnej nie musi nic wiedzied o systemie docelowym. Z kolei systemy docelowe rejestrują chęd otrzymywania komunikatów określonych typów poprzez subskrypcję komunikatów spełniających określone wymagania. Nowe i istniejące systemy docelowe mogą subskrybowad komunikaty i rezygnowad z subskrypcji, nie wpływając w żaden sposób na publikowanie ich przez systemy źródłowe i subskrypcje innych systemów docelowych. Subskrypcje mogą byd bardzo precyzyjnie definiowane w oparciu o zasady routingu zapisane w metadanych oraz w oparciu o treśd komunikatów (patrz wcześniejsza sekcja Usługi rejestracji dokumentów). Współdzielona infrastruktura magistrali komunikacyjnej implementuje mechanizm publikowania i subskrypcji i utrzymuje subskrypcje zarejestrowane przez systemy docelowe. Jest także odpowiedzialna za filtrowanie subskrypcji i identyfikowanie systemów docelowych, do których powinny trafid komunikaty opublikowane na magistrali. Zasadę działania magistrali komunikacyjnej i mechanizmu publikowania i subskrypcji przedstawiono na ilustracji 31. Dokument opublikowany przez system źródłowy A nie trafi ani do systemu docelowego B, ani do systemu docelowego C parametry zarejestrowanych przez te systemy subskrypcji (określające metadane i treśd komunikatu) nie odpowiadają właściwościom opublikowanego komunikatu. Właściwości komunikatu odpowiadają natomiast parametrom subskrypcji zarejestrowanych przez systemy docelowe A i D i w związku z tym komunikat zostanie doręczony do tych właśnie systemów. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 93

94 Ilustracja 31. Mechanizm publikowania i subskrypcji Uwaga szczegółowy opis struktury magistrali komunikacyjnej i mechanizmu publikowania i subskrypcji znajduje się w dziale Microsoft Patterns and Practices witryny MSDN pod adresem Komunikacja z systemami zaplecza Usługa rejestracji (opisana wyżej w sekcji Usługi rejestracji dokumentów) obsługuje zarówno asynchroniczne, jak i synchroniczne mechanizmy przekazywania dokumentów, w zależności od możliwości systemu zaplecza. Synchroniczne przesyłanie dokumentów do systemu zaplecza zwykle wymaga, by system zaplecza w ramach operacji żądania-odpowiedzi udzielił jakiejś odpowiedzi biznesowej. Na przykład gdy usługa rejestracji zażąda walidacji znanych faktów określonej usługi agencji, żądanie zostanie zablokowane do czasu otrzymania odpowiedzi. To, czy system zaplecza potrafi obsługiwad żądania synchroniczne czy asynchroniczne, zależy wyłącznie od technologii, w jakiej system ten został zaimplementowany. Niektóre systemy obsługują tylko jeden tryb komunikacji. Aby skompensowad wymagania i zapewnid pełne możliwości integracyjne, architektura usług integracyjnych powinna uwzględniad obsługę zarówno żądao synchronicznych, jak i asynchronicznych. Szczegółowy opis sposobów integracji z różnymi technologiami i platformami wykracza poza zakres tego dokumentu, jednak w następnych sekcjach zamieszczono ogólne wskazówki na ten temat. Komunikacja synchroniczna Gdy komunikacja z systemem zaplecza realizowana jest w sposób synchroniczny, usługa integracyjna w ramach operacji żądania-odpowiedzi powinna otrzymad jakąś odpowiedź biznesową. Innymi słowy, dokument zwrócony w wyniku wywołania systemu powinien zawierad odpowiedź na to żądanie. Ta metoda komunikacji jest typowa dla protokołów żądania-odpowiedzi takich jak HTTP, w którego przypadku przeglądarka internetowa w odpowiedzi na żądanie określonej strony otrzymuje treśd dokumentu HTML. System zaplecza może obsługiwad integrację na podobnych zasadach, przyjmując w ramach żądania HTTP dokument XML z typem zawartości text/xml zamiast tradycyjnego text/html, charakterystycznego dla stron internetowych. Następnie system zwraca odpowiedź biznesową, zawartą w standardowej odpowiedzi HTTP z odpowiednim kodem odpowiedzi (np. 200 OK w przypadku poprawnego przetworzenia dokumentu lub z kodem błędu, jeśli podczas przetwarzania napotkane zostały jakieś błędy). Przesłanie odpowiedzi biznesowej może zostad zrealizowane z użyciem dowolnego innego protokołu synchronicznego, na przykład specyficznego dla aplikacji protokołu opartego na TCP/IP RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 94

95 o ile oczywiście istnieje adapter pozwalający usłudze integracyjnej na komunikację z użyciem tego protokołu. Na ilustracji 32. przedstawiono usługę integracyjną, obsługującą komunikację synchroniczną z usługą agencji w imieniu usługi rejestracji użytkowników za pośrednictwem usługi rejestracji dokumentów. W tym scenariuszu usługa rejestracji użytkowników (początkowy system źródłowy) żąda walidacji informacji przedstawionych przez użytkownika względem danych referencyjnych przechowywanych przez usługę docelową, a nie w lokalnej składnicy danych. Ilustracja 32. Komunikacja synchroniczna Uwaga komunikacja synchroniczna może mied poważny wpływ na wydajnośd i skalowalnośd systemu. Pomiędzy żądaniem a odpowiedzią powinny występowad jak najmniejsze opóźnienia, co może nie byd możliwe w przypadku dużego obciążenia systemu (w zależności od przyjętej architektury). Wraz ze wzrostem obciążenia systemu opóźnienie wzrasta do poziomu, na którym przestaje byd akceptowalne dla użytkowników koocowych. Może także wykroczyd poza ramy określone w umowie o poziomie usługi (Service Level Agreement SLA). Komunikacja synchroniczna może mied także wpływ na skalowalnośd rozwiązania, szczególne w przypadku, gdy w umowie SLA określono limity opóźnieo. Ponieważ wymagania dotyczące rozwiązao synchronicznych (niskie opóźnienia, praca w czasie rzeczywistym) z reguły różnią się od wymagao dla rozwiązao asynchronicznych (przepustowośd, praca prawie w czasie rzeczywistym, trwałośd komunikatów), dlatego infrastruktura potrzebna do obsługi obu typów rozwiązao jest różna; różnią się także sposoby dostrajania wydajności. Komunikacja asynchroniczna Komunikacja asynchroniczna z systemem zaplecza to preferowany model komunikacji w systemach opartych na wymianie komunikatów. Skalowalnośd systemów asynchronicznych jest wyższa niż systemów synchronicznych nie ma potrzeby zapewniania obsługi w czasie rzeczywistym z minimalnymi czasami odpowiedzi. Nadawca może jednak po przesłaniu żądania nadal wymagad odpowiedzi biznesowej. Udzielenie takiej odpowiedzi na komunikat żądania w ramach ścieżki zwrotnej lub komunikatu zwrotnego nie jest możliwe. W takim przypadku nadawca podaje adres zwrotny (np. używając elementu ReplyTo specyfikacji WS-Addressing), na który system docelowy ma przesład odpowiedź biznesową. Na wypadek niemożliwości przesłania odpowiedzi (np. z powodu jakiegoś błędu), nadawca może określid także dodatkowy adres (element FaultTo specyfikacji WS-Addressing), na przykład lokalizację odbiorcy wszystkich komunikatów o błędach. Sposób dostarczenia początkowego żądania do systemu zaplecza może nadal wymagad jakiejś odpowiedzi technicznej, np. kodu odpowiedzi HTTP 200 OK potwierdzającej poprawne przyjęcie komunikatu. Na ilustracji 33. przestawiono asynchroniczną komunikację z usługą agencji przez usługi integracyjne w imieniu usługi rejestracji dokumentów. Usługa agencji odsyła odpowiedź do usługi rejestracji z użyciem osobnego kanału komunikacyjnego (na adres ReplyTo), która następnie przekazuje ją nadawcy żądania w tym wypadku jest to portal internetowy. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 95

96 Ilustracja 33. Komunikacja asynchroniczna Bezpieczeostwo Jednym z najważniejszych aspektów, dotyczących każdej aplikacji, jest zabezpieczenie tej aplikacji przed działaniami złośliwych użytkowników, automatycznymi atakami z wykorzystaniem wirusów i robaków internetowych, atakami typu DoS (Denial of Service zablokowanie usługi) czy wyciekami informacji poufnych. W przypadku projektów integracyjnych dla sektora publicznego wymagania te mają szczególne znaczenie charakter przechowywanych danych sprawia, że aplikacje te są narażone na częste ataki mające na celu kradzież tożsamości, zniszczenie danych lub zablokowanie dostępu do usług. Architektura bezpiecznego rozwiązania musi uwzględniad zarówno ogólne zagadnienia związane z bezpieczeostwem, jak i zagadnienia specyficzne dla rozwiązao integracyjnych dla sektora publicznego. Ogólne sposoby podejścia do problemu bezpiecznej architektury rozwiązania Trzy najważniejsze związane z bezpieczeostwem cele, o których należy pamiętad projektując dowolną aplikację, to: poufnośd aplikacja musi dawad gwarancję, że dostęp do danych oraz do wszystkich funkcji modyfikujących dane mają wyłącznie uprawnieni użytkownicy. Żaden inny użytkownik nie powinien mied możliwości wyświetlenia, usunięcia lub zmodyfikowania jakichkolwiek danych; integralnośd wszystkie realizowane na danych operacje muszą chronid te dane przed uszkodzeniem. Każda operacja powinna albo zakooczyd się pomyślnie i pozostawid dane w nowym, poprawnym stanie, albo zakooczyd się niepowodzeniem, pozostawid dane w stanie niezmienionym i poinformowad użytkownika lub inną uprawnioną osobę o niepowodzeniu. Wszelkie modyfikacje danych muszą byd odnotowywane (na przykład w dzienniku inspekcji) z możliwością odtworzenia danych oryginalnych i bieżącego monitorowania wprowadzanych zmian; uwierzytelnianie każdy użytkownik musi zostad odpowiednio zidentyfikowany na początku pracy z aplikacją, oraz jeśli zachodzi taka potrzeba także w trakcie pracy, przed wykonaniem określonej operacji. Dotyczy to przede wszystkim przeglądania, usuwania i modyfikowania danych. Realizacja tych celów wymaga podziału architektury na warstwy logiczne i zaimplementowania bezpieczeostwa w poszczególnych warstwach. Każda warstwa, odwołując się do innej warstwy albo do usługi zewnętrznej, wraz z wywołaniem przesyła informacje uwierzytelniające, oparte na uwierzytelnieniu użytkownika, który spowodował wywołanie danej usługi. Jeśli warstwa lub usługa odbierająca wywołanie wymaga dodatkowych informacji, powinna zażądad ich przed przejściem do dalszych etapów procesu. Wskazówki dotyczące projektowania architektur bezpiecznych rozwiązao, opartych na.net Framework i usługach Web Service, oraz implementowania takich rozwiązao można znaleźd w witrynie Microsoft Security Developer Center. Witryna, znajdująca się pod adresem zawiera ogólne informacje dotyczące bezpieczeostwa oraz łącza do witryny Microsoft Patterns and Practices Center, w której zgromadzono zalecenia dotyczące określonych przykładów zastosowao. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 96

97 Wzorce i dobre praktyki dotyczące bezpieczeostwa Koncepcję wzorców i najlepszych praktyk opisano na stronie katalogowej witryny Microsoft Patterns and Practices Center pod adresem Lista dostępnych wzorców i praktyk znajduje się pod adresem Pierwszy etap tworzenia bezpiecznej architektury polega na rozpoznaniu zagrożeo dla danej aplikacji oraz analizie dostępnych technik zabezpieczenia aplikacji przed tymi zagrożeniami. Najczęstsze zagrożenia przedstawia ilustracja 34, zaczerpnięta z opracowanego przez dział Microsoft Patterns & Practices dokumentu Improving Web Application Security: Threats and Countermeasures. Dokument ten dostępny jest pod adresem Ilustracja 34. Zakres ulepszeo bezpieczeostwa aplikacji internetowych zagrożenia i środki zaradcze (ilustracja zaczerpnięta z dokumentu Improving Web Application Security: Threats and Countermeasures, opracowanego przez dział Patterns and Practices) Dokument zawiera opisy zagadnieo takich jak modelowanie zagrożeo, zabezpieczanie poszczególnych warstw aplikacji, zabezpieczanie hostów oraz zabezpieczanie samej aplikacji. W dokumencie zamieszczono także listy kontrolne, pomocne w praktycznym wykorzystaniu zgromadzonych informacji, oraz serię artykułów jak to zrobid, opisujących poszczególne zadania w systematyczny sposób. Najlepsze praktyki dotyczące bezpieczeostwa Szczegółowe informacje na temat projektowania bezpiecznych architektur rozwiązao dostępne są w witrynie Security Best Practices pod adresem Można tam znaleźd serie artykułów poświęcone najlepszym praktykom stosowanym w określonych sytuacjach, w tym między innymi: wskazówki dotyczące pisania bezpiecznego kodu dla platformy.net Framework, najlepsze praktyki stosowania zabezpieczeo opartych na uprawnieniach kodu (Code Access Security), RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 97

98 minimalizacja ilości kodu dostępnego dla niezaufanych użytkowników, projektowanie zarządzanych przez aplikację mechanizmów autoryzacji, budowa i konfiguracja bezpiecznych witryn internetowych. Zabezpieczanie usług Web Service Bezpieczeostwo aplikacji opartych na architekturze zorientowanej na usługi (SOA), czyli większości aplikacji integracji usług w tym także projektów integracyjnych dla sektora publicznego w znacznym stopniu zależy od bezpieczeostwa i niezawodności protokołów wykorzystanych do przekazywania komunikatów pomiędzy użytkownikami a usługami docelowymi. Aby zapewnid odpowiedni poziom bezpieczeostwa, usługi Web Service muszą byd wyposażone w niezawodne mechanizmy uwierzytelniania, zapewniad poufnośd danych na wszystkich etapach przetwarzania i wspierad mechanizmy gwarantowanego jednorazowego dostarczania komunikatów z niezaprzeczalnością ich odbioru. Przekazywaniem komunikatów zwykle zajmują się usługi i oprogramowanie orkiestracyjne na przykład Microsoft BizTalk Server. BizTalk Server zapewnia funkcjonalnośd niezawodnego dostarczania komunikatów. Ochrona zawartości i zachowanie poufności komunikatów wymagają utrzymania bezpiecznych połączeo sieciowych pomiędzy użytkownikiem, hubem i usługami docelowymi. Odpowiednie bezpieczeostwo połączeo zapewniają protokoły SSL (Secure Sockets Layer) oraz HTTPS. Gwarancja niepodważalności i ochrona przed manipulowaniem zawartością komunikatów zapewniana jest przez certyfikaty cyfrowe. Uwierzytelnianie dostępu do usług Web Service najlepiej jest rozwiązad poprzez wykorzystanie rozszerzeo WS* standardów usług Web Services. Jedną z implementacji tych rozszerzeo jest pakiet Microsoft Web Service Enhancements (WSE). Szczegółowe informacje na temat pakietu można znaleźd pod adresem Dostępny jest także artykuł opisujący całą serię rozszerzeo oraz uzasadniający koniecznośd stosowania ich w aplikacjach Web Service. Artykuł ten znajduje się pod adresem Uwaga warto w tym miejscu podkreślid, że WSE to pakiet zbiorczy, obejmujący obsługę wielu rozszerzeo standardów Web Service. Z punktu widzenia bezpieczeostwa, najważniejszymi rozszerzeniami są: WS-Security pozwala na łatwe przekazywanie zabezpieczonych komunikatów z wykorzystaniem istniejących mechanizmów transportowych. Bezpieczeostwo realizowane jest na poziomie pojedynczego komunikatu, a nie warstwy transportowej. WS-Trust zapewnia funkcje bezpiecznego przesyłania poświadczeo tożsamości za pośrednictwem usług Web Service. WS-Policy definicja składni XML do celów walidacji odbieranych komunikatów SOAP w oparciu o opis cech takich jak podpisy elektroniczne i szyfrowanie. Cechy te nie są obsługiwane przez standardowe dokumenty WSDL. WS-Addressing zapewnia lepszą kontrolę nad przekazywaniem komunikatów Web Service pomiędzy serwerami i usługami. Jednym ze sposobów uproszczenia uwierzytelniania i autoryzacji w rozwiązaniu integracyjnym, obejmującym wiele zdalnych usług, jest zaimplementowanie do tego celu centralnej usługi opartej na tokenach, której będą ufały wszystkie pozostałe usługi. Usługa centralna zaimplementowana wewnątrz huba wydaje użytkownikom tokeny, które ci następnie przedstawiają każdej usłudze, do której uzyskują dostęp. Usługi zdalne mogą zweryfikowad token, odwołując się do usługi centralnej. Uzyskujemy w ten sposób proste rozwiązanie problemów zwielokrotnienia, charakterystycznych dla wszystkich rozwiązao integracyjnych. Podejście takie na dodatek ułatwia tworzenie niestandardowych mechanizmów uwierzytelniania dla każdego użytkownika i każdej usługi. System uwierzytelniania wykorzystany w architekturze referencyjnej opisano w sekcji na temat uwierzytelniania i autoryzacji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 98

99 Zagadnienia bezpieczeostwa specyficzne dla architektury systemów dla sektora publicznego Projekty integracyjne dla sektora publicznego mają wiele cech wspólnych z innymi systemami usług elektronicznych powszechnego użytku (na przykład z usługami bankowymi czy sklepami internetowymi). Wszystkie wymienione w poprzednim rozdziale ogólne zagrożenia oraz wskazówki dotyczą także systemów dla sektora publicznego. Istnieją jednak pewne związane z bezpieczeostwem zagadnienia specyficzne dla architektury systemów dla sektora publicznego. Opisujemy je w tym rozdziale. Ochrona i poufnośd danych W zależności od wybranej topologii i sposobu implementacji, hub usług dla sektora publicznego może przechowywad dane osobowe bardzo wielu użytkowników nawet wszystkich obywateli kraju. Na kształt architektury systemu mogą mied wpływ różne uwarunkowania prawne, co może ograniczyd wybór dostępnych rozwiązao technicznych. Jeśli na przykład lokalne regulacje prawne zabraniają jakiegokolwiek współdzielenia informacji (nawet samych identyfikatorów) przez jednostki administracji publicznej, początkowa identyfikacja użytkowników podczas rejestracji do usług będzie musiała byd realizowana zdalnie. Centralny hub w celu zweryfikowania informacji przedstawionych przez użytkownika, zamiast skorzystad z przechowywanych zwykle lokalnie danych referencyjnych, będzie musiał odwoład się do dostawcy usługi (szczegółowy opis możliwych rozwiązao identyfikacji początkowej znajduje się w sekcji Logika weryfikująca i dane referencyjne rozdziału Usługi zarządzania tożsamością wcześniej w tym dokumencie). Gdy dane referencyjne poszczególnych usług przechowywane są w hubie centralnym, niezbędne jest zastosowanie odpowiednich środków kontroli dostępu do tych danych. Na przykład przechowywanie danych referencyjnych różnych usług w niezależnych bazach danych pozwala na zróżnicowanie praw dostępu do tych danych dla poszczególnych administratorów. Infrastruktura techniczna i sieci komputerowe W niektórych krajach istnieje dedykowana infrastruktura techniczna (w tym sieci komputerowe) przeznaczona do obsługi urzędów. Ze względu na określone reguły dostępu i procedury akredytacyjne, określające kto i w jaki sposób może korzystad z infrastruktury, infrastruktura ta zwykle może byd uważana za bardziej bezpieczną. Samo uzyskanie dostępu do infrastruktury zwykle zapewnia wystarczająco wysoki poziom bezpieczeostwa i niezawodności komunikacji z innymi agencjami, co ułatwia proces integracji całego rozwiązania. W przypadkach, gdy taka infrastruktura jest dostępna i łączy już dostawców usług dla sektora publicznego, łatwiejsze jest bezpieczne udostępnienie usług tych dostawców dla społeczeostwa za pośrednictwem wspólnego huba usług dla sektora publicznego. Hub może pracowad jako most łączący bezpieczną infrastrukturę administracji publicznej z siecią publiczną. Poszczególni dostawcy usług nie muszą niezależnie spełniad wymagao bezpieczeostwa przed podłączeniem ich systemów do sieci publicznej. Praca ta (i wszelkie potrzebne akredytacje) może zostad wykonana jednokrotnie podczas budowy centralnego huba. Jedyne, co muszą zrobid dostawcy usług, to uzyskad połączenie z hubem. Nawet jeśli taka bezpieczna infrastruktura istnieje, a dostawcy usług mogą z niej korzystad, trzeba zadbad o to, by architektura systemu nie stała się zbyt uproszczona. Nie należy zakładad, że połączenia ze wszystkimi dostawcami usług obecnymi i przyszłymi zawsze będą realizowane za pośrednictwem bezpiecznej sieci. Architektura powinna zapewniad funkcje niezbędne do obsługi bezpiecznej komunikacji za pośrednictwem sieci publicznych, najlepiej w postaci prostej opcji, konfigurowanej niezależnie dla poszczególnych usług lub węzłów sieci. Pozwoli to w przyszłości dostosowad się do nowych wymagao, takich jak na przykład obsługa dostawców usług dla sektora publicznego, działających poza jednostkami administracji publicznej posiadającymi dostęp do bezpiecznej sieci komputerowej. Z doświadczeo, zebranych w ramach licznych projektów integracyjnych dla sektora publicznego w wielu krajach, wynika, że potrzeba takiej elastyczności zwykle pojawia się znacznie szybciej niż się spodziewano, a koszt późniejszego RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 99

100 dostosowania ograniczonej, opracowanej na podstawie z góry przyjętych założeo architektury, może byd wysoki. Zabezpieczanie hostów Systemy dla sektora publicznego mają często postad skomplikowanej pajęczyny, łączącej różnorodne węzły oparte na różnych platformach. Poszczególne węzły należą do różnych właścicieli i zarządzane są w różny sposób. Czasami brak jest jednostki nadrzędnej, która mogłaby efektywnie zobligowad wszystkich członków do stosowania dobrych praktyk w zakresie bezpieczeostwa. W niektórych krajach wszystkie elementy infrastruktury administracji publicznej muszą spełniad odpowiednie standardy bezpieczeostwa (na przykład ISO 17799) z obowiązkową akredytacją przed dopuszczeniem do użytku produkcyjnego, ale nie jest tak w każdym kraju. Odpowiednie zabezpieczenie hostów pracujących w takim środowisku jest zadaniem znacznie trudniejszym niż w przypadku środowisk komercyjnych. Należy więc założyd, że niektóre hosty mogą byd celem udanego ataku, w związku z czym niezbędne jest wdrożenie odpowiednich, dodatkowych warstw ochrony, umożliwiających efektywne działanie w przypadku włamania. Błędne założenia co do fizycznego bezpieczeostwa systemów uczestniczących w wymianie komunikatów i nadmierna ufnośd w skutecznośd takich zabezpieczeo mogą byd zagrożeniem dla systemów pracujących w bezpiecznych centrach danych (na przykład w rejestrach podstawowych). Przykładem może byd założenie, że wzajemne uwierzytelnianie TLS/SSL punktów koocowych połączenia daje wystarczającą gwarancję, że żądania pochodzą z zaufanego źródła i nie ma potrzeby wprowadzania zabezpieczeo na poziomie pojedynczego komunikatu. Jednak gdy ta sama usługa zostanie udostępniona szerszej rzeszy klientów, ryzyko komunikacji ze skompromitowanym hostem jest dużo wyższe. Na przykład udostępnienie usługi małym firmom, których komputery nie są fizycznie bezpieczne, a pracownicy nie są specjalistami IT, wymaga wprowadzenia dodatkowych zabezpieczeo konkretnie szyfrowania przesyłanych komunikatów. Zalecanym rozwiązaniem jest więc zaprojektowanie odpowiednich warstw zabezpieczeo już w pierwszej fazie projektu architektury, z możliwością włączania i wyłączania tych zabezpieczeo w razie potrzeby. Pozwoli to na uzyskanie lepszej elastyczności i szybsze dostosowywanie się do różnych obecnych i przyszłych, znanych i nieznanych wymagao. Zabezpieczanie hostów to ważny element ogólnej polityki bezpieczeostwa. Zaleca się, by poziom bezpieczeostwa hostów był tak wysoki, jak to tylko możliwe. W zależności od wykorzystywanej platformy i wersji systemów operacyjnych, dostępna jest cała gama możliwości od narzędzi przeznaczonych dla środowisk zarządzanych (SMS, WSUS) po usługi zorientowane na konsumenta (na przykład automatyzacja aktualizacji Windows Update) ułatwiających instalowanie najświeższych uaktualnieo i rozszerzeo zabezpieczeo. Ataki typu DoS (Denial of Service) Ataki typu DoS (Denial of Service zablokowanie usługi) są dośd często kierowane przeciwko systemom komercyjnym i istnieje duże prawdopodobieostwo wykorzystania ich przeciwko systemom dla sektora publicznego (co może mied znacznie poważniejsze skutki) po pierwsze systemy dla sektora publicznego są atrakcyjnym i dobrze widocznym celem, a po drugie liczba użytkowników dotkniętych takim atakiem jest znacznie wyższa. Należy więc dołożyd wszelkich starao, aby do minimum ograniczyd możliwości przeprowadzenia ataków DoS przeciwko hubom usług dla sektora publicznego. Objawy takich ataków to między innymi: Zgłaszanie wielu fałszywych użytkowników gdy testy wiarygodności zgłoszenia nowego użytkownika są nieefektywne, osoba atakująca może zgłosid do systemu bardzo wielu użytkowników z nieprawdziwymi danymi osobowymi. Zgłoszenie dużej liczby użytkowników może przeciążyd dostępne zasoby obliczeniowe i zablokowad magazyny danych, czego wynikiem zwykle jest zablokowanie dostępu do systemu dla rzeczywistych użytkowników. Powtarzające się nieudane próby logowania brak efektywnej kontroli logowao (na przykład zliczania nieudanych prób logowania i blokowania konta po przekroczeniu limitu) może zostad wykorzystany przez osobę atakującą do obciążenia systemu dużą liczbą żądao uwierzytelnienia, co w konsekwencji prowadzi do zablokowania zasobów systemowych. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 100

101 Jeśli natomiast kontrola logowao została zaimplementowana, a atakujący zna prawidłowe identyfikatory użytkowników, atak może doprowadzid do zablokowania kont użytkowników. Powtarzające się żądania, których obsłużenie wymaga dużej mocy obliczeniowej powtarzające się żądania innego niż wymienione wyżej typu, których obsługa zajmuje zasoby systemowe. Może to byd na przykład przesyłanie poprawnych, ale dużych dokumentów za pośrednictwem systemu rejestracji dokumentów. Zapewnienie ochrony przed takimi atakami może wymagad odpowiedniego przygotowania architektury systemu. Poniżej podano przykładowe techniki minimalizujące prawdopodobieostwo przeprowadzenia udanego ataku. Zabezpieczenie przed zgłaszaniem fikcyjnych użytkowników Jeśli nie istnieje wiarygodna metoda weryfikacji, czy próba zgłoszenia dotyczy prawdziwego użytkownika, zgłoszenie można uzależnid od innego, weryfikowalnego procesu na przykład od prawidłowej rejestracji w usłudze. Nie należy przyjmowad zgłoszeo użytkowników wyłącznie na podstawie wybranej nazwy lub identyfikatora oraz hasła, ponieważ proces taki nie pozwala na efektywne rozróżnienie prawdziwych i fałszywych danych osobowych. Dobrym rozwiązaniem jest uzależnienie utworzenia konta użytkownika od prawidłowej rejestracji w co najmniej jednej usłudze, co wymaga zweryfikowania informacji podanych przez użytkownika z informacjami referencyjnymi. Praktycznie eliminuje to ryzyko przyjęcia zgłoszenia dużej liczby fikcyjnych użytkowników. Szczegółowe informacje na temat rejestrowania użytkowników w usługach znajdują się w podsekcji Początkowa identyfikacja użytkowników w sekcji Zarządzanie tożsamością wcześniej w tym dokumencie. Zabezpieczenie przed nieudanymi próbami logowania Zabezpieczenie systemu przed powtarzającymi się nieudanymi próbami logowania może byd trudne, zwłaszcza w przypadku ataków na losowe identyfikatory użytkowników. Licznik nieudanych prób logowania zawsze musi byd związany z jakimś unikalnym identyfikatorem najczęściej z identyfikatorem użytkownika. Rozproszenie ataku na różne, losowe identyfikatory użytkowników sprawia, że standardowe metody zliczania nieudanych prób logowania na poziomie systemu lub aplikacji stają się nieskuteczne. Ataki takie mają jednak jedną cechę charakterystyczną dużą liczbę nieudanych prób logowania z jednego lub kilku źródeł w sieci możliwa jest więc obrona na poziomie infrastruktury sieciowej w oparciu o lokalizację, z której nadchodzą żądania (na przykład adres IP atakującego komputera). Istnieje jednak prawdopodobieostwo nieprawidłowego zidentyfikowania jako atak działao dużej liczby użytkowników pracujących w środowisku widocznym w sieci jako pojedyncza lokalizacja (tak jest na przykład, gdy użytkownicy korzystają z serwera pośredniczącego proxy). Zakres stosowania opisanych wyżej środków zaradczych musi zostad bardzo precyzyjnie dobrany. Aby zminimalizowad prawdopodobieostwo zablokowania dostępu prawidłowym użytkownikom, można wdrożyd mechanizm samonaprawczy założenie blokady na pewien okres i automatyczne odblokowanie dostępu po upłynięciu tego okresu. Dzięki temu, jeśli atak spowoduje zablokowanie dostępu dla dużej liczby użytkowników, po pewnym czasie dostęp zostanie przywrócony. Bez mechanizmu samonaprawczego, udany atak nie tylko zablokowałby dostęp, ale także dołożyłby pracy służbom pomocy technicznej, które musiałyby ręcznie przywracad dostęp poszczególnym użytkownikom. Zabezpieczenie przed żądaniami wymagającymi dużej mocy obliczeniowej Dobrym przykładem, ilustrującym koniecznośd zabezpieczenia się przed atakami polegającymi na przesyłaniu żądao, których obsługa wymaga dużej mocy obliczeniowej, jest odnawianie certyfikatów cyfrowych. Certyfikaty cyfrowe mogą służyd do weryfikowania tożsamości użytkownika i wiązania jej z rejestracjami w poszczególnych usługach dla sektora publicznego. Uwierzytelnienie użytkownika na podstawie certyfikatu zwykle polega na sprawdzeniu pochodzenia certyfikatu (jego wystawcy), poprawności (nie wygasł i nie został odwołany) oraz odwzorowania unikalnego identyfikatora certyfikatu na tożsamośd użytkownika. Kolejnym RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 101

102 etapem jest odszukanie odwzorowao łączących tożsamośd użytkownika z rejestracjami w usługach. Gdy system korzysta z zewnętrznych wystawców certyfikatów, okresowe odnawianie certyfikatów może odbywad się bez wiedzy huba. Na przykład gdy certyfikat jest odnawiany (u niektórych wystawców proces odnowienia certyfikatu jest przezroczysty dla użytkownika), wystawiany jest nowy certyfikat z takimi samymi danymi osobowymi nowe są tylko numer seryjny i data wygaśnięcia. Pierwsza próba uwierzytelnienia w hubie za pomocą nowego certyfikatu i standardowej procedury porównującej nie powiedzie się, ponieważ hub nie wie nic o odnowieniu certyfikatu, a w bazie nadal zapisany jest poprzedni numer seryjny. Aby poprawnie obsłużyd uwierzytelnienie, hub musi skorzystad z bardziej złożonej procedury porównania, uwzględniającej także inne dane osobowe z certyfikatu. Jeśli wynik porównania będzie pozytywny, hub aktualizuje swoje dane uaktualnia zapisany numer seryjny, utrzymując jednocześnie wszystkie pozostałe rejestracje i powiązania. Aby móc obsłużyd taką procedurę odnawiania certyfikatów, hub musi przechowywad więcej informacji niż sam numer seryjny (na przykład nazwę wyróżniającą lub inne atrybuty). Dane te potrzebne są do rozpoznania i porównania starego i nowego certyfikatu. Poszukiwanie polega na porównywaniu długich łaocuchów znaków jeśli populacja użytkowników jest duża, poszukiwanie może byd dośd kosztowe pod względem zapotrzebowania na zasoby systemowe. Poszukiwanie takie realizowane jest za każdym razem, gdy numer seryjny certyfikatu nie zostanie znaleziony w lokalnym magazynie danych referencyjnych także w przypadku przedstawienia dowolnego (nie związanego z systemem dla sektora publicznego) certyfikatu wystawionego przez zaufanego wystawcę. Niektóre techniki, powszechnie używane do obrony przed takimi atakami, to: Poprzedzenie wyszukiwania i porównywania długiego identyfikującego łaocucha znaków (nazwy wyróżniającej) wyszukaniem wartości skrótu (ang. hash) tego łaocucha znaków. Długośd wartości skrótu łaocucha jest dużo mniejsza niż długośd tego łaocucha, co pozwala na zwiększenie wydajności operacji wyszukiwania. Wymaga to jednak wcześniejszego obliczenia i zapisana wartości skrótów nazw wyróżniających wszystkich certyfikatów w bazie danych oraz odpowiedniego poindeksowania tych danych. W czasie uwierzytelniania należy obliczyd wartośd skrótu nazwy wyróżniającej z przedstawionego certyfikatu i poszukad jej w bazie. Prawdopodobieostwo wystąpienia kolizji (dwie różne nazwy wyróżniające mają taką samą wartośd skrótu) jest bardzo niskie, należy jednak po udanym wyszukiwaniu według wartości skrótu porównad także nazwy wyróżniające. Zastosowanie rejestru identyfikatorów certyfikatów wykorzystywanych do uwierzytelniania. Do inicjacji uwierzytelniania wymagane jest posiadanie prawidłowego certyfikatu wystawionego przez zaufanego wystawcę (w innym wypadku certyfikat zostanie odrzucony na etapie walidacji, przed rozpoczęciem procesu poszukiwania starego certyfikatu). Można więc przypuszczad, że do ataku zostanie wykorzystane tylko kilka certyfikatów. Ochrona przed atakiem polega na prowadzeniu rejestru podejrzanych, kilkakrotnie odrzuconych już certyfikatów i sprawdzaniu takiej czarnej listy przed rozpoczęciem poszukiwao wymagających dużej mocy obliczeniowej. Przedstawiono tu zaledwie kilka wybranych przykładów, ilustrujących dodatkowe problemy i zagadnienia mające wpływ na architekturę rozwiązao dla sektora publicznego. Wydajnośd i skalowalnośd Implementowane rozwiązanie musi byd bezpieczne, niezawodne i odporne. Mimo tego, wiele systemów nie zapewnia oczekiwanej wydajności i w związku z tym nie są one akceptowane przez użytkowników po wdrożeniu w świecie rzeczywistym. Dzięki testowaniu można wykryd wiele problemów i zlokalizowad sekcje aplikacji, które stanowią wąskie gardła i ograniczają ogólną wydajnośd systemu. Możliwośd spełnienia wymagao w zakresie wydajności uwarunkowana jest RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 102

103 jednak dobrym zrozumieniem wymogów oraz faktycznych lub zakładanych schematów wykorzystania aplikacji. Dział Patterns and Practices firmy Microsoft udostępnił w Internecie pełne wydanie książki poświęconej tym zagadnieniom. Publikacja, zatytułowana Improving.NET Application Performance and Scalability dostępna jest pod adresem Opisano w niej zadania dla osób pełniących różne role w cyklu implementacji rozwiązania architektów oprogramowania, projektantów, programistów, testerów i administratorów. Zakres tematyczny publikacji przedstawiono na ilustracji 35, która została zapożyczona z tej książki. Ilustracja 35. Zakres tematyczny opracowanego przez dział Microsoft Patterns and Practices przewodnika Improving.NET Application Performance and Scalability. Ilustracja pochodzi z dokumentu Planowanie wydajności Zaprojektowanie systemu zapewniającego akceptowalną wydajnośd jest praktycznie niemożliwe bez poprawnego ustalenia wymagao już we wstępnej fazie projektu. Teza ta sprawdza się szczególnie w przypadku systemów rozproszonych, w których proste zwiększanie dostępnej pamięci operacyjnej, mocy obliczeniowej procesorów czy pojemności zainstalowanej w serwerach pamięci masowej nie wystarcza do uzyskania odpowiedniej wydajności, gdy wąskie gardła istnieją na innych etapach rozproszonego procesu. Planowanie wydajności pozwala projektantowi lub architektowi systemu na wyznaczenie realistycznego zestawu wymagao dla aplikacji jako całości i na podstawie tych wymagao obliczenie i sprawdzenie wymagao dla poszczególnych części aplikacji. W dokumencie Tools for Capacity Planning, opublikowanym przez Microsoft pod adresem opisano ogólne zasady planowania wydajności i analizy wymagao systemu i przedstawiono szeroką gamę narzędzi służących do testowania różnych komponentów złożonych systemów. W dokumencie przedstawiono następujące zagadnienia: Gromadzenie informacji dotyczących wymagao szacowanej średniej i maksymalnej liczby jednoczesnych użytkowników, sposobów korzystania z aplikacji, wymaganego czasu odpowiedzi poszczególnych procesów lub działao oraz innych czynników, takich jak maksymalne akceptowalne procentowe obciążenie procesorów w systemach. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 103

104 Stosowanie różnych narzędzi obliczeniowych do oszacowania wymagao sprzętowych systemów, włącznie z walidacją wydajności danej konfiguracji sprzętowej, oraz wykorzystanie narzędzi symulujących obciążenie systemu takich jak Microsoft Application Center Test (ACT) i LoadSim for Microsoft Exchange Server do testowania konfiguracji sprzętowych. Czynniki mające wpływ na wydajnośd systemu Bardziej szczegółowa analiza wydajności systemu wymaga rozpatrzenia kilku czynników mających bezpośredni wpływ na budowę infrastruktury sprzętowej i sieciowej. Niezbędne jest zrozumienie implikacji, jakie niosą ze sobą wymagania określonego procentowego poziomu dostępności systemu oraz sposobu, w jaki skalowanie rozwiązania pomaga w sprostaniu tym wymaganiom. W przypadku rozproszonych aplikacji branżowych bardzo duże znaczenie ma identyfikacja pojedynczych punktów awarii, które mogłyby wstrzymad pracę całego systemu, i wyeliminowanie ich poprzez zastosowanie mechanizmów równoważenia obciążenia lub skonfigurowanie serwerów do pracy w klastrze, co pozwala na rozdzielenie obciążenia na kilka serwerów. Jeśli jeden serwer ulegnie awarii, pozostałe serwery przejmą jego zadania, rozdzielając między siebie wykonywane przez niego operacje. Proces ten nazywany jest przełączeniem awaryjnym (ang. failover). Stosowanie mechanizmów równoważenia obciążenia i pracy w klastrze możliwe jest dzięki usługom systemowym Microsoft Cluster Service (MSCS) oraz Network Load Balancing (NLB) oraz specjalistycznym rozwiązaniom sprzętowym udostępnianym przez innych producentów. Większośd komponentów systemów korporacyjnych, w tym Microsoft Exchange Server, Microsoft BizTalk Server, Microsoft Internet Information Services (IIS), Microsoft SQL Server i Microsoft Commerce Server potrafi poprawnie korzystad z opisanych wyżej mechanizmów. Istotne jest także zapewnienie odpowiedniej ochrony twardych dysków i innych systemów składowania danych przed awariami sprzętowymi. Współdzielone macierze dyskowe, dołączane do serwerów za pośrednictwem wysokowydajnych połączeo światłowodowych lub magistrali SCSI, mogą zostad zabezpieczone na przykład poprzez zastosowanie odpornej na uszkodzenia konfiguracji RAID. Skalowad wzwyż czy wszerz? Terminem skalowanie wszerz nazywa się proces konfiguracji systemu do pracy w klastrze wydajnościowym lub do pracy z równoważeniem obciążenia. Obciążenie systemu jest rozkładane wszerz na wiele serwerów i urządzeo sprzętowych, co dodatkowo zapewnia także ochronę aplikacji przed awariami sprzętu. Natomiast alternatywne podejście, nazywane skalowaniem wzwyż, jest przydatne w przypadku procesów, które muszą zagwarantowad wysoką dostępnośd i wymagają serwerów o dużych zasobach pamięci operacyjnej i mocy obliczeniowej. Na rynku dostępne są serwery odporne na awarie, pozwalające na wymianę niektórych komponentów w czasie pracy i przetrwanie awarii sprzętu bez przerywania pracy aplikacji. W połączeniu z nowymi typami procesorów i możliwością adresowania dużych ilości pamięci operacyjnej przez systemy operacyjne Microsoft Windows Server, skalowanie wzwyż jest dobrym alternatywnym rozwiązaniem. Szczegółowe omówienie kwestii dostępności, skalowalności i wydajności można znaleźd w dokumencie Overview of System Performance, dostępnym pod adresem Zgromadzono tam także łącza do innych użytecznych zasobów. Dostrajanie wydajności usług systemu Windows Na ogólną wydajnośd aplikacji, na równi z silną i niezawodną implementacją infrastruktury odpornej na pojedyncze awarie, ma także wpływ konfiguracja poszczególnych usług. Na przykład poprawna konfiguracja serwera IIS i dobrze przemyślany wybór techniki przechowywania stanu sesji mają duży wpływ na optymalizację wydajności aplikacji opartych na ASP.NET i Web Services. Analogicznie, stosowanie odpowiednich metod indeksowania danych może znacznie zwiększyd wydajnośd dostępu do baz danych SQL Server. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 104

105 Metody dostrajania wydajności ASP.NET opisano w artykule Performance Tuning a.net Framework Deployment, dostępnym pod adresem Opisano w nim między innymi sposób wykrywania wąskich gardeł w aplikacjach z użyciem narzędzi testowania wytrzymałościowego i liczników wydajności systemu Windows. Dokument zawiera także odsyłacze do innych dokumentów dotyczących dostrajania wydajności IIS oraz doboru sposobów indeksowania danych w SQL Server. Czynniki związane z projektem i implementacją aplikacji Poza planowaniem zasobów sprzętowych pod kątem wymaganej wydajności, dobieraniem odpowiedniego modelu skalowania i dostrajaniem konfiguracji platformy i usług, ogromny wpływ na przepustowośd i czas odpowiedzi aplikacji mają także zastosowane techniki projektowania architektury i implementowania aplikacji (programowania). Poznanie tych zależności jest bardzo ważne, temat ten poruszany jest w wielu dokumentach opublikowanych w witrynie internetowej firmy Microsoft. Dokumenty te kierowane są do programistów i dotyczą różnych sposobów, w jakie przyjęte techniki kodowania aplikacji mogą wpłynąd na jej wydajnośd: W dokumencie Performance Considerations for Run-Time Technologies in the.net Framework, dostępnym pod adresem opisano wbudowane w środowisko mechanizmy odzyskiwania zasobów (garbage collection) i tworzenia pul wątków, wpływ stosowania kompilacji just-in-time na wydajnośd oraz sposoby zwiększania wydajności poprzez optymalizację domen aplikacyjnych. Poruszono także zagadnienia dotyczące bezpieczeostwa, remotingu, doboru typów danych oraz hostowania środowiska.net Framework. Ogólne wskazówki dotyczące tworzenia wydajnego kodu można także znaleźd w dokumencie Performance Tips and Tricks in.net Applications, dostępnym pod adresem Zawarto w nim ogólne wskazówki dotyczące wydajności wszystkich typów aplikacji, wskazówki dotyczące tworzenia wysokowydajnego kodu zapewniającego dostęp do baz danych oraz wskazówki dotyczące wydajności aplikacji ASP.NET. Dokument zawiera także informacje na temat typowych błędów, poprawiania wydajności i niezawodności aplikacji podczas migracji kodu źródłowego do Visual Basic.NET i zarządzanego C++ oraz pisania nowych aplikacji w tych językach. Wydajnośd dostępu do danych Do uzyskania wysokiej wydajności aplikacji niezbędne są efektywne mechanizmy dostępu do danych. W przypadku dostępu do relacyjnych baz danych z aplikacji.net oczywistym wyborem jest biblioteka ADO.NET. Czynniki mające wpływ na wydajnośd ADO.NET oraz sposoby projektowania i pisania kodu, ułatwiające uniknięcie typowych błędów i wąskich gardeł, jakie z tych błędów mogą wyniknąd, opisano w dokumencie ADO Performance Best Practices, dostępnym pod adresem Wydajnośd usług Web Service Stosowanie usług Web Service niesie ze sobą liczne korzyści, ale wiąże się z dodatkowymi wymaganiami w zakresie wydajności. Ogólnie rzecz biorąc, usługi Web Service wymagają większej mocy obliczeniowej i większej przepustowości sieci niż tradycyjne metody integracji, takie jak bezpośredni dostęp do danych w formacie binarnym, składowanych w relacyjnej bazie danych. Koniecznośd serializacji danych do formatu XML do celów przesyłania ich pomiędzy usługami wprowadza dodatkowe zapotrzebowanie na moc obliczeniową. Stosowanie zabezpieczeo wywołao usług Web Service na poziomie pojedynczych komunikatów (często wymagane, patrz temat Zabezpieczanie usług Web Service w sekcji Bezpieczeostwo wcześniej w tym dokumencie) także wiąże się z dodatkowym zapotrzebowaniem na moc obliczeniową do celu obliczania podpisów cyfrowych komunikatów wychodzących i dodawania do nich informacji dotyczących RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 105

106 uwierzytelniania oraz do celu walidacji podpisów i danych uwierzytelniających komunikatów przychodzących. Aby zminimalizowad negatywny wpływ na wydajnośd i utrzymad zalety wynikające ze stosowania usług Web Service, warto dokładnie przemyśled zakres funkcjonalności udostępnianej za pośrednictwem tych usług, stosowane modele wywoływania usług i inne najlepsze praktyki. Rozdział Improving Web Services Performance z przewodnika wymienionego na początku tej sekcji zawiera wskazówki projektowe oraz opis technik takich jak zarządzanie stanem, wywoływanie asynchroniczne, serializacja i wątkowanie. Dobre zrozumienie tych technik jest niezbędne do opracowania wydajnych usług Web Service. Projektowanie wydajnej i skalowalnej architektury rozwiązao dla sektora publicznego Dobre zrozumienie ogólnych zasad i technik projektowania architektury skalowalnych i wysokowydajnych systemów (opisanych w poprzedniej sekcji dokumentu) to nieodzowna podstawa udanego wdrożenia każdego rozbudowanego systemu. Oprócz wymienionych wyżej czynników istnieją jednak także inne, specyficzne dla rozwiązao dla sektora publicznego, aspekty dotyczące wydajności i skalowalności, które mogą mied wpływ na ostateczną postad architektury systemu. Wyższe oczekiwania i wymagania Zwykle wymagania dotyczące wydajności i dostępności oraz oczekiwania pokładane w rozwiązaniach dla sektora publicznego są wyższe niż w przypadku porównywalnych systemów komercyjnych. Rozwiązania dla sektora publicznego, często postrzegane jako elementy krytycznej infrastruktury paostwowej, powinny byd zawsze dostępne, charakteryzowad się bardzo krótkim czasem odpowiedzi i umied obsłużyd bardzo wysokie szczytowe obciążenia związane z różnymi terminami ostatecznymi, takimi jak koniec roku podatkowego. Wszystkie awarie na przykład zbyt duże opóźnienia lub niedostępnośd niektórych usług są bardzo denerwujące i mogą dotyczyd bardzo dużych liczb użytkowników. Podważa to publiczne zaufanie i osłabia jeden z najważniejszych czynników popularyzujących korzystanie z usług elektronicznych możliwośd elektronicznej realizacji interakcji w sposób szybszy i łatwiejszy niż z użyciem tradycyjnych kanałów obsługi. Rozmiar i wzrost Systemy dla sektora publicznego często tworzone są jako rozwiązania na małą skalę, a następnie są rozwijane w miarę wzrostu popularności korzystania z usług elektronicznych i zwiększania się liczby aktywnych użytkowników systemu. Trzy główne kierunki wzrostu, które wyznaczają wymaganą wydajnośd systemu, to: liczba użytkowników (całkowita liczba użytkowników i liczba użytkowników jednocześnie korzystających z systemu), liczba udostępnianych usług, intensywnośd korzystania z poszczególnych usług oraz złożonośd udostępnianej funkcjonalności. Ze względu na zwykle stały wzrost tych wskaźników wraz z upływem czasu, niezbędne jest dokładne planowanie rozbudowy systemu tak, by mógł obsłużyd rosnące zapotrzebowanie. Ważna jest też dobrze zaprojektowana, skalowalna architektura. Przedsięwzięcia polegające na zaprojektowaniu, zbudowaniu i wdrożeniu systemu, który od razu będzie zdolny obsłużyd obciążenie spodziewane za wiele lat, realizowane są bardzo rzadko. Częściej stosowanym podejściem jest uwzględnienie w projekcie możliwości dalszej rozbudowy systemu, wdrożenie niewielkiej konfiguracji początkowej i zwiększanie jej wydajności w miarę potrzeb. Możliwośd zwiększania mocy obliczeniowej bez przerywania pracy systemu jest w przypadku systemów dla sektora publicznego niezwykle istotna. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 106

107 Istotna jest także możliwośd oszacowania absolutnych, maksymalnych oczekiwao w zakresie opisanych wyżej kierunków wzrostu: liczby użytkowników (czy będzie ich milion, 100 milionów, czy może miliard?), liczby usług (10, 100, a może 1.000?), liczby transakcji (żądao) na sekundę (100, 1.000, ?). Czynniki te mogą mied duży wpływ na ostateczną architekturę systemu i wykorzystywane rozwiązania techniczne. Na przykład w przypadku systemu, z którego korzysta miliard (czy chodby tylko 100 milionów) użytkowników, zastosowanie pojedynczego katalogu użytkowników nie będzie najwłaściwszym rozwiązaniem w takim wypadku należy zastosowad system rozproszonych lub stowarzyszonych składnic danych. Chcąc wykorzystad zalety płynące ze skupienia określonych usług w pojedynczym, centralnym węźle i udostępnienia ich wielu dostawcom usług, należy oszacowad zasoby systemowe i moc obliczeniową, jaką będzie musiał dysponowad ten węzeł, i byd może wdrożyd rozwiązanie bardziej rozproszone. Rozproszona natura systemów dla sektora publicznego Oprócz czysto technicznych opcji i możliwości związanych ze skalowaniem wzwyż, skalowaniem wszerz i geograficznym rozproszeniem systemu, na decyzje dotyczące rozproszonej architektury rozwiązao mają wpływ także inne czynniki systemy dla sektora publicznego często stanowią zdywersyfikowaną sied systemów wydziałowych lub systemów należących do agencji, systemów centralnych, regionalnych i lokalnych, z niezależnymi właścicielami, sposobami finansowania, dostawcami, partnerami i ramami czasowymi projektów. Synchronizacja i optymalizacja tak zróżnicowanych systemów w celu zbudowania spójnej i zintegrowanej architektury (patrząc z perspektywy projektowej i technologicznej) jest prawie niemożliwa. Uwzględnienie różnych czynników politycznych, komercyjnych i prawnych często skutkuje powstaniem architektury, która nie jest optymalna z technicznego punktu widzenia. Bardzo duże znaczenie ma tu elastycznośd i możliwości (lub ich brak) przebudowy i ulepszania istniejącej topologii i podziału funkcjonalności pomiędzy systemami składowymi. Podstawową potrzebą jest identyfikacja ewentualnych ograniczeo i przeszkód, które mogą mied wpływ na przyszły kształt rozwiązania. Podstawowe zasady, rządzące referencyjną architekturą rozwiązao integracyjnych dla sektora publicznego (patrz sekcja Reguły rządzące architekturą wcześniej w tym dokumencie), to zapewnienie maksymalnej elastyczności i możliwości adaptacji systemu do różnych wymagao, w tym także związanych ze zdywersyfikowaną i rozproszoną naturą systemów dla sektora publicznego. Niektóre z cech architektury, zapewniających taką elastycznośd i ułatwiających uzyskanie wysokiej wydajności i skalowalności, to: Stowarzyszone podejście do problemu początkowej identyfikacji użytkowników i ich późniejszego uwierzytelniania, umożliwiające rozproszenie danych referencyjnych i magazynów poświadczeo tożsamości (patrz tematy Usługi zarządzania tożsamością oraz Uwierzytelnianie stowarzyszone w sekcji Usługi uwierzytelniania i autoryzacji wcześniej w tym dokumencie). Pozwala to na obsługę bardzo dużych ilości użytkowników w rozproszony sposób i charakteryzuje się innymi zaletami. Wsparcie różnych topologii składających się z wielu instancji ogólnego huba usług dla sektora publicznego, co pozwala na rozproszenie funkcjonalności i obciążenia w sposób spełniający określone wymagania i ograniczenia (patrz temat Możliwe topologie w sekcji Hub usług wcześniej w tym dokumencie). Wzorce użycia Ze względu na elastycznośd umożliwiającą implementację części funkcjonalności systemu jako kaskadowej sekwencji wywołao przekazywanych pomiędzy autonomicznymi i rozproszonymi usługami, warto zastanowid się, w jaki sposób takie rozproszenie przetwarzania może wpłynąd na wydajnośd systemu. Obsługa uwierzytelniania przez hub może wymagad odwołania się do zewnętrznego dostawcy uwierzytelniania (jak przedstawiono to w temacie Przedstawianie poświadczeo i stwierdzeo w sekcji Usługi uwierzytelniania i autoryzacji wcześniej w tym dokumencie). Czas odpowiedzi na pierwotne żądanie nie zależy wyłącznie od wydajności huba, ale także od dostępności i wydajności zewnętrznej usługi, z której korzysta hub. O ile w wielu przypadkach takie rozproszenie przetwarzania jest pożyteczne czy nawet nieodzowne, przed RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 107

108 podjęciem decyzji o zastosowaniu takiego rozwiązania należy dokładnie rozważyd jego wpływ na wydajnośd systemu. Innym ważnym zagadnieniem, mającym wpływ na wydajnośd, jest wybór przetwarzania synchronicznego lub asynchronicznego. Chociaż usługi Web Service poprawnie obsługują oba typy wywołao, ogólnie zaleca się, by stosowanie wywołao synchronicznych (podobnych do wywołao RPC) ograniczyd jedynie do przypadków, w których są one absolutnie konieczne, a usługa docelowa potrafi zapewnid czas odpowiedzi na rozsądnym poziomie. Wysłanie wywołania synchronicznego do zewnętrznej usługi Web Service wstrzymuje przetwarzanie i powoduje zablokowanie zasobów we wszystkich węzłach biorących udział w obsłudze żądania. Jeśli czas odpowiedzi na wywołanie jest znaczny, nawet niewielka liczba jednoczesnych wywołao w trakcie realizacji może wyczerpad zasoby takie jak wątki czy pamięd operacyjna serwera wywołującego, czyli innymi słowy huba. Ma to także wpływ na ogólną wydajnośd systemu włącznie z zablokowaniem dostępu do wszystkich usług. Natomiast w przypadku wywołao asynchronicznych, operacja żądania kooczy się natychmiast po wysłaniu wywołania, po czym większośd zaalokowanych zasobów jest zwalniana. Przetwarzanie odpowiedzi na żądania realizowane jest niezależnie, w miarę jak napływają one z systemu zdalnego. Odszukanie odpowiadających im żądao nie wymaga przeprowadzania skomplikowanych operacji. Czas, jaki upływa pomiędzy wysłaniem żądania a uzyskaniem odpowiedzi, nie ma większego wpływu na ogólną wydajnośd huba, chod nadal ma duży wpływ na ogólny czas odpowiedzi dla pierwszego wywołania. Jak widad, przetwarzanie asynchroniczne pozwala uzyskad zwykle wyższą przepustowośd niż przetwarzanie synchroniczne i dlatego jest rozwiązaniem preferowanym. Asynchroniczny model komunikacji pozwala także na bardziej elastyczną obsługę nagłych wzrostów aktywności poprzez buforowanie żądao i przetwarzanie ich z taką szybkością, na jaką pozwala ogólna przepustowośd systemu. Buforowanie takie może byd realizowane niejawnie (platforma może je zapewniad w sposób przezroczysty dla usług) lub jawnie (poprzez implementację kolejkowania i mechanizmów zapamiętaj i wyślij). Tak długo, jak długo wszystkie zaległe żądania mogą zostad zapisane i następnie przetworzone w akceptowalnych ramach czasowych, model obsługi nie ulega zmianie, zapewniając oczekiwany poziom usług. Wywołania synchroniczne mają natomiast dużo mniejszą tolerancję na szczytowe obciążenia. System po osiągnięciu maksymalnej możliwej wydajności odrzuca dalsze żądania i muszą one zostad ponownie przesłane przez wywołujących. Szczegółowy opis przetwarzania synchronicznego i asynchronicznego znajduje się w temacie Komunikacja z systemami zaplecza w sekcji Integracja z usługami zaplecza wcześniej w tym dokumencie. Zarządzanie i eksploatacja Architektura i projekt dobrego rozwiązania dla sektora publicznego powinny uwzględniad specyficzne zagadnienia i wymagania związane z zarządzaniem systemem i jego eksploatacją. Usługi i procesy wspomagające operacje w środowisku IT stanowią podstawę zrozumienia możliwości i wymagao, jakie wiążą się z zarządzaniem usługami w organizacji. Kluczem do efektywnej architektury zarządzania jest integracja rozwiązao zarządzania usługami ze zintegrowanymi procesami operacyjnymi. Poprzez stosowanie wskazówek eksploatacyjnych, określonych dla każdej usługi, oraz zintegrowanych usług zorientowanych na zarządzanie, architektura zarządzania stanowi podstawę zarządzania różnymi rozwiązaniami Microsoft wdrażanymi w ramach architektury dla sektora publicznego. Wprowadzenie Ta częśd platformy RISA oparta jest na rozwiązaniach Microsoft w zakresie zarządzania (Microsoft Solutions for Management MSM). MSM to połączenie rozwiązao automatyzacji, najlepszych praktyk oraz usług ułatwiających wdrażanie tych praktyk, ułatwiające osiągnięcie wysokiej RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 108

109 sprawności operacyjnej, przekładającej się na wysoką jakośd obsługi (Quality of Service QoS), niezawodnośd, dostępnośd, bezpieczeostwo i niski całkowity koszt posiadania (TCO). Wspomniane najlepsze praktyki MSM oparte są na strukturze Microsoft Operations Framework (MOF) ustrukturyzowanym, a jednocześnie elastycznym podejściu skoncentrowanym na ITIL. MOF obejmuje wskazówki na temat planowania, wdrażania i konserwacji procesów operacyjnych IT w ramach obsługi rozwiązao krytycznych dla działania organizacji. Zasadniczymi elementami MOF (i najważniejszymi, wymaganymi do zrozumienia struktury tego przewodnika) są model procesu i model zespołu. Model procesu i podległe mu funkcje zarządzania usługami (Service Management Functions SMF) są podstawą metody opartej na procesach, zalecanej w tym przewodniku do celów konserwacji rozwiązania. Model zespołu i jego zbiory ról oferują pomoc w zakresie przypisania właściwych pracowników do poszczególnych ról. Na ilustracji 36. przedstawiono model procesowy MOF oraz funkcje SMF składające się na każdą fazę modelu procesu (przedstawioną w postaci dwiartki koła). Ilustracja 36. Model procesu MOF oraz funkcje zarządzania usługami (SMF) Na ilustracji 37. przedstawiono model zespołowy MOF wraz z wybranymi rolami funkcjonalnymi lub zespołami funkcyjnymi, jakie mogą istnied w strukturach zarządzania usługami. Role i funkcje przedstawiono w powiązaniu z zestawami ról MOF, do których mogą należed. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 109

110 Ilustracja 37. Model zespołowy MOF oraz przykłady ról funkcjonalnych lub zespołów Architektura zarządzania Wprowadzenie Wiele organizacji przekonało się, że funkcje IT powinny byd traktowane jako usługa świadczona na rzecz organizacji. Przekonanie to nakłoniło organizacje do skoncentrowania zasobów w celu utworzenia specyficznych zasobów, takich jak bazy danych, usługi komunikacyjne i katalogowe, eksploatowanych zgodnie ze zdefiniowanymi celami pozostającymi w zgodzie z misją firmy. Gdy organizacja decyduje się na postępowanie według zasad określonych w ITIL, działy techniczne stają się odpowiedzialne za negocjowanie i realizowanie celów zgodnych z polityką firmy. Podstawą realizacji tych celów są umowy poziomu usługi (Service Level Agreements SLA). Umowy te dotyczą także innych warunków, takich jak zapewnienie odpowiedniej obsługi, wydajności czy planowania pojemności systemu. Wszystkie te warunki wypełniane są z wykorzystaniem usług operacyjnych, narzędzi zarządzania i interfejsów zorientowanych na eksploatację usług. Centralizacja zasobów służących zarządzaniu sieciami i aplikacjami oraz rozwijanie umiejętności i procesów wykraczających poza organizacyjne granice IT to działania postrzegane jako środki umożliwiające działom IT realizację celów określonych w umowach SLA z jednoczesną kontrolą wydatków lub ograniczaniem kosztów. Funkcje zarządzania często definiowane są w ramach obszarów funkcjonalnych dotyczących bezpieczeostwa, wydajności, monitorowania pracy systemu, zarządzania składowaniem danych i odtwarzaniem danych czy zarządzania sieciami. Zagadnienia projektowe Zadaniem zespołów operacyjnych IT jest zapewnienie wysokiego poziomu jakości obsługi (Quality of Service QoS) przy utrzymaniu kosztów na rozsądnym poziomie. QoS nie jest wartością absolutną. Określając wymagania (i metryki) QoS, a także strukturę kosztów niezbędnych do RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 110

111 zapewnienia QoS, należy posłużyd się odpowiednimi analizami i zdrowym rozsądkiem. Ogólnie rzecz biorąc, im wyższy wymagany poziom QoS, tym wyższe koszty jego zapewnienia. Istnieje wiele (często wzajemnie sprzecznych) wymagao i zagadnieo projektowych, które trzeba przeanalizowad podczas budowania architektury zarządzania systemem. Korzyści wynikające z zastosowania zunifikowanego zestawu narzędzi, aktywnego monitorowania, utrzymania wysokiej dostępności muszą zostad szczegółowo przeanalizowane w odniesieniu do wszelkich czynników mających wpływ na środowisko. Należy wybrad wymagania i dopasowad je do potrzeb projektu. Z poszczególnymi wymaganiami związane są wymogi w zakresie specjalistycznej wiedzy, interoperacyjności, wspieralności oraz inne ukryte koszty związane z rozwiązaniami. Ważnym aspektem związanym z obniżaniem TCO (zarówno sprzętu, jak i oprogramowania) jest utworzenie standardowego, jednolitego zestawu narzędzi spełniających potrzeby działu IT i cele biznesowe. Wspólny zestaw narzędzi pozwoli zmniejszyd koszt związany z utrzymaniem specjalistycznej wiedzy lub personelu potrafiącego posługiwad się danym narzędziem lub wyposażeniem. Wdrożenie architektury zarządzania do monitorowania sieci i zapobiegania problemom jest często ważnym celem, definiowanym w czasie rozważania problemów implementacyjnych związanych ze spełnieniem założonych poziomów SLA. Proaktywne monitorowanie sieci, rejestrowanie awarii i ograniczenie czasu przestojów pozwala zwiększyd efektywnośd operacyjną, uzyskad lepszy poziom obsługi i zmniejszyd koszty. Scentralizowanie danych ułatwia na przykład wyznaczenie średniego czasu pomiędzy awariami (mean time between failures MTBF) dla różnych rodzajów sprzętu. Uzyskane informacje można wykorzystad do tworzenia dokładniejszych prognoz zapotrzebowania na sprzęt. Dostępnośd danych, umożliwiających śledzenie statystyk wykorzystania sprzętu, może pomóc w identyfikowaniu charakterystycznych trendów na przykład wykazad, że produkt, który wydawał się dobrym zakupem, w rzeczywistości generuje duże koszty obsługi i pomocy technicznej. W czasie budowy systemu warto zaprojektowad architekturę zarządzania tak, by zagwarantowad wysoką dostępnośd zarówno narzędzi zarządzania, jak i niezbędnych danych. Można to osiągnąd stosując redundancję. Można ją uzyskad stosując klastry serwerów lub inne techniki umożliwiające pracę pomimo awarii. W przypadku organizacji posiadających odległe biura należy zadbad o zapasowe połączenia sieciowe z centralą. Podjęte działania umożliwią spełnienie wynegocjowanych i zatwierdzonych umowami SLA wymagao w zakresie dostępności usług i danych. Efektywna architektura zarządzania musi byd także skalowalna. Miara skalowalności określa, jak łatwo dany komputer, usługa lub aplikacja mogą zostad rozbudowane lub ograniczone przy zachowaniu takiego samego poziomu niezawodności i spełnieniu wymagao w zakresie wydajności. W miarę wzrostu liczby użytkowników konieczne jest zwiększanie liczby serwerów lub podnoszenie mocy operacyjnej istniejących serwerów tak, by rosnące obciążenie sytemu nie spowodowało jego przeciążenia. Można także zdecydowad się na podzielenie dużego systemu serwerowego na mniejsze, bardziej specjalizowane serwery. Kolejnym uwarunkowaniem jest sposób, w jaki dane i wiedza zebrane w czasie eksploatacji systemu IT i sieci są integrowane i udostępniane. Personel działu obsługi i pomocy technicznej powinien posiadad aktualną i dokładną bazę wiedzy, umożliwiającą spełnienie wymagao określonych w umowach SLA. Aby zmniejszyd złożonośd systemów raportowania i zminimalizowad duplikację raportów, można wdrożyd wspólną infrastrukturę raportowania. Dzięki takiej infrastrukturze kierownicy poszczególnych działów mają dostęp do danych, na podstawie których mogą tworzyd interesujące ich raporty. Natomiast użytkownicy mogą zarządzad zgłoszonymi przez siebie incydentami pomocy technicznej. Zalety architektury zarządzania Możliwośd korzystania z dobrze zaprojektowanej architektury zarządzania niesie ze sobą liczne korzyści. Oto niektóre z nich: konsolidacja narzędzi opracowanie zestandaryzowanego, wszechstronnego zestawu narzędzi, spełniającego zarówno potrzeby działu IT, jak i wymagania biznesowe, umożliwia RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 111

112 pozbycie się zwielokrotnionych lub nieefektywnych narzędzi i w efekcie ułatwia zarządzanie TCO w organizacji; zestaw narzędzi wdrożenie rodziny lub znanego zestawu narzędzi pozwala na pełne wykorzystanie poszczególnych narzędzi oraz zalet płynących z interoperacyjności tych narzędzi; pojedyncza architektura zarządzania konstruowanie architektury z uwzględnieniem możliwych przyszłych zmian pozwala stworzyd system, który będzie można łatwo rozbudowad. Architektura taka jest bardziej elastyczna i może byd łatwo skalowana do wymagao biznesowych; objęcie całej organizacji możliwośd przeglądania danych dotyczących zarządzania wszystkimi komputerami w organizacji pozwala szybciej poznad interesujące nas informacje i podnieśd poziom obsługi. Alternatywne rozwiązania, umożliwiające przeglądanie danych tylko z określonego punktu widzenia czy dotyczących tylko określonych urządzeo sprzętowych, zwykle powodują tworzenie odizolowanych wysp przeterminowanych danych; elastyczna architektura szybko zmieniające się potrzeby biznesowe powodują koniecznośd wprowadzania zmian w modelu operacyjnym. Elastyczna architektura pozwala na szybkie i efektywne dostosowanie jej do odpowiedniego modelu scentralizowanego, rozproszonego lub współdzielonego; zunifikowane funkcje raportowania i powiadamiania dostępnośd jednej standardowej struktury pozwala na tworzenie spójnych raportów i powiadomieo; interoperacyjnośd ważną zaletą wdrożenia architektury zarządzania jest możliwośd stosowania narzędzi w połączeniu ze sobą lub włączenia do systemu dodatkowych narzędzi w razie takiej potrzeby. Gdy narzędzia mogą zostad zintegrowane w taki sposób, że zdarzenia i ostrzeżenia generowane przez system monitorowania są automatycznie widoczne w systemie zarządzania incydentami, dział IT może zapewnid dużo wyższy poziom obsługi. Struktura leżąca u podstaw architektury zarządzania Na każdą organizację składają się pracownicy (ludzie), zadania, które ci pracownicy wykonują (procesy) oraz narzędzia umożliwiające pracownikom wykonywanie swoich zadao (technologie). Połączenie wysiłków w celu osiągnięcia wspólnych celów obniżenia kosztów i uzyskania wyższych poziomów usługi wymaga współpracy ludzi, procesów i technologii. Ludzie Pracownicy jeden z najważniejszych elementów niezbędnych do osiągnięcia sukcesu zarządzają różnymi komponentami usług technicznych, wykonują procesy i świadczą usługi zarządzania obejmujące kilka domen technicznych, realizując wymagania określone w umowach poziomu operacyjnego (Operating Level Agreement OLA). Aby zarządzanie usługami było możliwe, w architekturze muszą istnied rola administracyjna i rola zarządzania usługami. Ludzie muszą znad wykorzystywane technologie oraz procedury operacyjne stosowania tych technologii. Strategie stosowania procesów operacyjnych oraz model zespołu, umożliwiający przeprowadzanie tych operacji, zostały zdefiniowane w ramach struktury Microsoft Operations Framework (MOF). Model zespołu MOF oparty jest na założeniu, że każda osoba w organizacji pełni jedną lub kilka ról operacyjnych. Role definiowane są w ramach zbiorów nazywanych zbiorami zawodów, które grupują funkcje robocze w ramach określonej roli zadania IT. Role zdefiniowane w ramach architektury ułatwiają identyfikowanie i wydzielanie funkcji administracyjnych dla każdej usługi. Zapewnia to lepszą kontrolę nad sposobem, w jaki prawa administracyjne są rozdzielone pomiędzy pracownikami operacyjnymi. Definicje ról są bardzo precyzyjne, co daje dużo lepsze bezpieczeostwo i rozdzielenie funkcji zarządzania dla każdej usługi. Więcej informacji na temat modelu zespołu MOF można znaleźd w dokumencie MOF Team Model for Operations dostępnym pod adresem RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 112

113 (dokument można także odnaleźd wpisując MOF Team Model for Operations w polu wyszukiwania w witrynie TechNet pod adresem Procesy W każdej organizacji występują jakieś praktyki operacyjne czy procesy. Procesy umożliwiają pracownikom realizowanie określonych zadao w spójny, powtarzalny sposób. W niektórych organizacjach procesy są bardzo sformalizowane, w innych mniej formalne. Wiele organizacji na całym świecie w zakresie implementacji własnych modeli operacyjnych opiera się na zasadach opisanych w powszechnie przyjętym branżowym standardzie definiowania praktyk operacyjnych standardzie ITIL (Information Technology Infrastructure Library). Więcej informacji na temat ITIL można znaleźd w witrynie Ponieważ koncepcje opisane w ITIL przeznaczone są do wykorzystania przez dowolne organizacje, konieczna jest adaptacja koncepcji opisanych w ITIL do praktyk stosowanych w danej firmie. W celu ułatwienia obsługi środowisk opartych na technologiach Microsoft, firma Microsoft utworzyła strukturę MOF, opartą na koncepcjach ITIL. Obie struktury definiują sformalizowane, ale jednocześnie elastyczne podejście. W MOF zawarto wskazówki dotyczące osób, procesów, technologii i problemów zarządzania występujących podczas eksploatacji złożonych, rozproszonych i heterogenicznych środowisk technicznych ze szczególnym uwzględnieniem środowisk opartych na technologiach Microsoft. Projekt architektury zarządzania w strukturze MOF oparty jest na modelu procesu MOF, na który składają się cztery fazy, reprezentowane w postaci kwadrantów: zmiany, operacje, wsparcie, optymalizacja. Z każdym z etapów związany jest określony cel, odpowiadający specyficznym aspektom cyklu życia rozwiązao IT. Z każdym z etapów skojarzone są także funkcje zarządzania usługami (Service Management Functions SMF). Na przykład z fazą zmian skojarzone są funkcje SMF zarządzania zmianami i zarządzania konfiguracją. Więcej informacji na temat typów zadao operacyjnych, wykonywanych w ramach poszczególnych funkcji SMF, można znaleźd w dokumencie MOF Process Model for Operations dostępnym pod adresem (dokument można także odnaleźd, wpisując MOF Process Model for Operations w polu wyszukiwania w witrynie TechNet pod adresem Metodologia MOF zaleca wykonywanie przeglądów (analiz), oceniających efektywnośd operacyjną poszczególnych etapów i związanych z nimi funkcji SMF. Po wykonaniu tych przeglądów (przegląd gotowości wydania, przegląd operacyjny, przegląd SLA, zatwierdzenie wydania), model procesu MOF zostaje zakooczony. Po ukooczeniu przeglądu zatwierdzenia wydania, plan operacyjny jest gotowy do wdrożenia w środowisku produkcyjnym. Tabela 1. Przegląd oraz zadnia obsługi związane z poszczególnymi etapami (kwadrantami) etap (kwadrant) zadania obsługi przegląd zmiany wprowadzanie nowych rozwiązao usługowych, technologii, systemów, aplikacji, sprzętu i procesów przegląd gotowości wydania operacje efektywna i wydajna realizacja codziennych zadao przegląd operacyjny wsparcie szybka obsługa incydentów, problemów, zapytao przegląd SLA (Service Level Agreement) optymalizacja wprowadzanie zmian w celu optymalizacji kosztów dostarczania usług IT oraz wydajności, maksymalnego obciążenia i dostępności tych usług zatwierdzenie wydania Technologia Wiele organizacji IT przyjęło model dostarczania usług dla swoich przedsiębiorstw, zamiast dostarczania narzędzi i technologii. Wartośd biznesowa oceniana jest na podstawie korzyści, jakie RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 113

114 przynosi zastosowanie danej technologii, a nie na podstawie samej technologii. W tabeli 2. wymieniono kilka przykładów usług architektury zarządzania MSM, które mogą pomóc w utworzeniu architektury technologii zarządzania. Więcej informacji na temat tych usług można znaleźd w sekcji Architektura zarządzania MSM. Tabela 2. Wartośd usług dla architektury technologii zarządzania nazwa usługi monitorowanie i kontrolowanie usług usługi katalogowe zarządzanie zmianami zarządzanie konfiguracją zarządzanie incydentami pełna biblioteka oprogramowania (Definitive Software Library DSL) wdrażanie uaktualnieo wdrażanie serwerów i stacji roboczych administracja zdalna debugowanie i klasyfikacja błędów (triage) technologie potrzebne do dostarczenia usługi monitorowanie i ostrzeganie, zarządzanie siecią, zarządzanie urządzeniami oprogramowanie serwera katalogowego baza danych zarządzania zmianami oprogramowanie do zarządzania systemem, technologie inspekcji zabezpieczeo i konfiguracji oprogramowanie do zarządzania biurem pomocy technicznej serwer plików z obsługą replikacji oprogramowanie do wdrażania uaktualnieo, łat i dodatków service pack oprogramowanie do tworzenia obrazów dysku i automatyzacji wdrażania oprogramowanie i narzędzia konsoli zdalnej służące do zdalnej administracji oprogramowanie do debugowania i dodatkowe narzędzia usługi zapewniane przez architekturę technologii zarządzania monitorowanie sieci, komputerów, urządzeo i aplikacji w sposób umożliwiający wzbudzanie alarmów i automatyczne reagowanie na zdarzenia; usługi te są nieodzowną częścią procesów śledzenia, powiadamiania i reagowania składowanie obiektów reprezentujących użytkowników, komputery i inne zasoby; zarządzanie uwierzytelnianiem i autoryzacją; replikacja i partycjonowanie danych w celu bezpiecznego udostępniania ich użytkownikom śledzenie zmian w kodzie oprogramowania, sprzęcie, procesach i urządzeniach; zagwarantowanie realizacji procesów wdrażania zmian dokumentacja zasad (polis) zarządzania konfiguracją, inspekcja konfiguracji systemu, zabezpieczeo i oprogramowania śledzenie incydentów (zgłoszeo problemów) od utworzenia po rozwiązanie; oprogramowanie do śledzenia problemów jest wykorzystywane głównie do zarządzania interakcjami pomiędzy służbami pomocy technicznej a klientem zapewnienie magazynu wykorzystywanego oprogramowania; biblioteka DSL zapewnia kontrolę wersji oraz funkcje dystrybucji oprogramowania w przedsiębiorstwie bieżąca aktualizacja komputerów i aplikacji; automatyzacja wdrażania uaktualnieo i utrzymywanie katalogu obowiązujących poziomów uaktualnieo wykorzystanie do wdrażania nowych serwerów i stacji roboczych; pomoc w automatyzacji i zapewnieniu spójności procesu budowy serwerów i stacji roboczych zapewnienie kontroli nad zarządzaniem systemem lub dostęp konsolowy do systemu w celach zdalnej administracji; obejmuje stosowanie narzędzi zarządzania bezpośredniego, takich jak konsola zarządzania Microsoft (Microsoft Management Console MMC) lub usług terminalowych na platformach Microsoft oraz awaryjnych środków zarządzania, takich jak karty (adaptery) zarządzania serwerem, gdy bezpośrednie zarządzanie nie jest możliwe stosowane do debugowania kodu i rozwiązywania problemów z komputerami i aplikacjami RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 114

115 Logiczny układ architektury przedsiębiorstwa Opisana tu architektura zarządzania została oparta na architekturze Microsoft Systems Architecture (MSA). Istnieją trzy możliwe układy architektury przedsiębiorstwa: scentralizowany, rozproszony i współdzielony. Opcje te nie wykluczają się wzajemnie, a większośd organizacji korzysta z architektur będących połączeniem tych układów, co pozwala na dostosowanie architektury zarządzania do struktury organizacyjnej firmy. Scentralizowana architektura zarządzania Scentralizowana architektura zarządzania pozwala na zarządzanie systemem z jednej, centralnej lokalizacji. Układ ten charakteryzuje się największymi zaletami, ale nie jest wolny od wad. Według raportu META Group Centralizing the Command Center Function, scentralizowaną architekturę zarządzania w swych centrach dowodzenia stosuje obecnie 30 procent z 500 największych przedsiębiorstw z listy Global Więcej informacji dostępne jest w witrynie Zgodnie z tym raportem względy ekonomiczne przyspieszą opracowywanie i konsolidację narzędzi i grup operacyjnych do kooca 2006 roku scentralizowana architektura zarządzania będzie stosowana już w 60 procentach 500 największych firm. Schemat scentralizowanej architektury zarządzania przedstawiono na ilustracji 38. Ilustracja 38. Scentralizowana architektura zarządzania Poza centralizacją fizyczną, architektura ta charakteryzuje się wysokim stopniem konsolidacji narzędzi, dzięki czemu poszczególne funkcje zarządzania mogą byd realizowane z wykorzystaniem mniejszej liczby narzędzi. Konsolidacja narzędzi pozwala na uzyskanie wysokiego stopnia scentralizowanej kontroli nad takimi usługami IT, jak zarządzanie zmianami, zarządzanie wydaniami, zarządzanie biurem obsługi technicznej, zarządzanie incydentami, metryki raportowania, zarządzanie składowaniem danych. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 115

116 Aby możliwe było zredukowanie liczby narzędzi, konieczne jest wdrożenie technik zapewniających obsługę istniejących, zróżnicowanych platform sprzętowych i programowych. Powodzenie konsolidacji narzędzi zależy od tego, czy skalowalnośd wybranych narzędzi jest na tyle duża, by nadążyd za wzrostem rozmiarów i złożoności systemu przy jednoczesnym wsparciu scentralizowanego model zarządzania. Scentralizowana architektura zarządzania pozwala organizacji IT skupid umiejętności, możliwości reakcji i zasoby w wysoko wyspecjalizowanych centrach operacyjnych. Centra te nazywane są wzorcowymi centrami dowodzenia (command centers of excellence C-COE) i stanowią połączenie centrów zarządzania siecią (network operations center NOC) i centrów zarządzania systemami (systems operations center SOC). Model scentralizowany posiada i zalety, i wady. Wady nadal są problematyczne dla osób podejmujących decyzję i były powodem opóźnienia popularyzacji tego modelu w środowiskach IT. Mimo to, branża zaczyna zdawad sobie sprawę z niebagatelnych zalet stosowania wszechstronnych i scentralizowanych narzędzi zarządzających. Zalety Model scentralizowany charakteryzuje się następującymi zaletami: Wady wszystkie dane operacyjne oraz informacje dotyczące stanu usług widoczne są w jednym miejscu za pośrednictwem scentralizowanych konsol zarządzania i systemu raportowania, sposób podejmowania decyzji jest spójny dla całego przedsiębiorstwa, istnieje możliwośd opracowania i dotrzymania warunków SLA dla usług zapewnianych przez całą organizację, istnieje możliwośd oszacowania ryzyka operacyjnego na poziomie całej organizacji i zarządzanie nim, konsolidacja narzędzi zarządzania oraz personelu obsługi technicznej centrów operacyjnych pozwala na obniżenie kosztów utrzymania. Model scentralizowany charakteryzuje się następującymi wadami: wiele usług świadczonych przez organizację pochodzi od różnych producentów. Może to powodowad problemy ze współpracą narzędzi zarządzania z technologiami wykorzystywanymi do świadczenia usług, chociaż usługi takie jak monitowanie usług można łatwo scentralizowad, szybka reakcja personelu lokalnego na ewentualne problemy wymaga uruchomienia centralnego procesu zarządzania incydentami, ugrupowania polityczne i związki zawodowe w organizacji będą przeciwne zmianom ze względu na awersję do zmian oraz utratę autonomii poszczególnych domen. Lokalny personel wsparcia technicznego woli mied pełną kontrolę nad swoim regionem i stawia opór przed wprowadzeniem procesów sterowanych centralnie, architektura zarządzania nie jest odporna na awarie i w niektórych ważnych sytuacjach może stad się niedostępna. Rozproszona architektura zarządzania Głównym czynnikiem sprzyjającym wdrażaniu rozproszonych architektur zarządzania jest silna rejonizacja organizacji. Przykład takiej architektury przedstawiono na ilustracji 39. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 116

117 Ilustracja 39. Rozproszona architektura zarządzania W modelu tym wstępują takie same usługi, jak w modelu scentralizowanym. Różnica polega na poziomie konsolidacji systemu zarządzania w organizacji. W przypadku modelu rozproszonego, oddziały organizacji lub geograficznie rozproszone jednostki biznesowe utrzymują usługi i procesy zarządzania w ramach własnych granic. Model ten odpowiada sytuacji obecnej większośd organizacji nadal posiada rozproszone architektury zarządzania. Na ilustracji 39. każdy z wydzielonych obszarów organizacyjnych ma podobne potrzeby w zakresie zarządzania, w związku z tym każdy z nich korzysta z podobnych usług zarządzania siecią, zarządzania serwerami i zarządzania klientami. Zalety Model rozproszony charakteryzuje się następującymi zaletami: Wady odwzorowuje istniejące podziały organizacyjne, poszczególne grupy operacyjne mają wolną rękę w zarządzaniu własnymi środowiskami, architektura ta jest mniej podatna na awarie infrastruktury sieciowej i telekomunikacyjnej, które mogą byd poważnym utrudnieniem w przypadku stosowania scentralizowanej architektury zarządzania, poszczególne jednostki biznesowe mogą opracowywad i wdrażad własne procedury operacyjne, procesy i technologie, implementacje najlepszych w branży rozwiązao dla komputerów i użytkowników obsługiwanych przez daną jednostkę biznesową są mniej skomplikowane, bariery pomiędzy zespołami zarządzania w wysoce niezależnych jednostkach biznesowych mogą ułatwid utrzymanie izolacji i bezpieczeostwa szczególnie chronionych obszarów organizacji, większa niezależnośd usług zarządzania niż w przypadku pojedynczego centrum C-COE ze względu na redundancję centrów operacyjnych, operacje mogą byd konsolidowane lub przenoszone pomiędzy jednostkami organizacyjnymi, daje większą elastycznośd we wdrażaniu strategii zarządzania follow the Sun funkcje zarządzania mogą byd rozproszone między centra operacyjne znajdujące się w różnych lokalizacjach geograficznych, funkcjonujące w standardowych godzinach roboczych. Model rozproszony charakteryzuje się następującymi wadami: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 117

118 rozproszenie składnic danych i narzędzi zarządzania utrudnia ocenę ogólnego poziomu obsługi (QoS) na poziomie całego przedsiębiorstwa, trudności w ocenie QoS powodują, że definiowanie i dotrzymywanie poziomu SLA także jest utrudnione, definiowanie i realizowanie jednolitych dla całej organizacji procesów i procedur operacyjnych jest trudniejsze, występują tendencje do mnożenia narzędzi i usług, których nie da się łatwo zintegrowad. Współdzielona architektura zarządzania Podstawą współdzielonej architektury zarządzania jest elastycznośd w zakresie różnych opcji zarządzania. Przykład współdzielonej architektury zarządzania przedstawiono na ilustracji 40. Ilustracja 40. Współdzielona architektura zarządzania W przypadku współdzielonej architektury zarządzania, lokalna usługa zarządzania lub usługa związana z określonym produktem może opierad się na innej usłudze zarządzania i przekazywad do niej zdarzenia i alarmy. Lokalne rozwiązanie monitorowania może na przykład rejestrowad zdarzenia i alarmy generowane przez urządzenia sieciowe, a następnie przekazywad je do aplikacji zarządzającej służącej do konsolidacji. Zalety Model współdzielony charakteryzuje się następującymi zaletami: Wady całkowicie niezależna jednostka biznesowa może znacznie ograniczyd koszty utrzymania IT, współdzieląc częśd architektury zarządzania z inną jednostką biznesową, niektóre sytuacje mogą wymagad stosowania unikalnych narzędzi i nietypowej wiedzy, możliwośd ograniczenia kosztów poprzez współdzielenie części firmowej architektury zarządzania. Model współdzielony charakteryzuje się następującymi wadami: RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 118

119 koniecznośd utrzymania części usług i procesów jako niezależnych elementów, do utrzymania spójności narzędzi zarządzania i całego procesu konieczne jest wdrożenie mechanizmu zatwierdzania, brak zalet ekonomii skali, które możliwe są wyłącznie w przypadku zarządzania scentralizowanego. Niezależnie od tego, która architektura zarządzania zostanie wybrana, konieczne jest przemyślenie kilku kluczowych zagadnieo związanych z konsolidacją narzędzi, bezpieczeostwem, skalowalnością i dostępnością. Architektura zarządzania MSM Kluczem do silnej infrastruktury zarządzania jest zaprojektowanie i wdrożenie architektury zarządzania dopasowanej do potrzeb zarządzanego środowiska. Podczas projektowania infrastruktury zarządzania trzeba uwzględnid wiele czynników. Na koocowy kształt infrastruktury wpływ mają wybór odpowiedniego modelu zarządzania (scentralizowanego lub zdecentralizowanego), liczba obsługiwanych lokalizacji i serwerów, szybkośd połączeo pomiędzy lokalizacjami oraz potrzeby i względy biznesowe. W tej sekcji wskazano najlepsze praktyki projektowania architektury dla różnych, przydatnych w środowisku IT, technologii i produktów Microsoft. Opisano tu różne usługi architektury zarządzania MSM, które mogą stanowid podstawę dla architektury technologii zarządzania na przykład monitorowanie i kontrola usług, będące kluczowymi komponentami architektury zarządzania. Architektura zarządzania MSM składa się z trzech poziomów: dolnego poziomu zarządzanych węzłów, średniego poziomu narzędzi zarządzania i raportowania oraz najwyższego poziomu narzędzi zarządzania i raportowania. Ilustracja 41. Trzy poziomy architektury zarządzania MSM Monitorowanie i kontrola usług Monitorowanie i kontrola usług to najważniejszy komponent architektury zarządzania. Jego zadaniem jest monitorowanie wszystkich aspektów stanu usług IT w celu wykrywania problemów RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 119

120 i zapobiegania im oraz gromadzenia danych wykorzystywanych przez inne funkcje SMF do optymalizacji świadczonych usług IT. We wszystkich organizacjach wykorzystujących w swym działaniu usługi IT występują awarie, które potencjalnie mogą zakłócid normalną działalnośd firmy. Dział IT jest odpowiedzialny za zapewnienie dostępności infrastruktury IT, udostępniającej usługi biznesowe oraz inne oparte na niej usługi zgodnie z warunkami opisanymi w SLA. Ponieważ działalnośd organizacji w coraz większym stopniu zależy od infrastruktury IT, możliwośd przewidywania problemów oraz szybkiego i efektywnego reagowania na problemy jest warunkiem koniecznym świadczenia usług IT. Dzięki wdrożeniu monitorowania usług i procesów kontroli, dział IT może stale monitorowad stan usług i reagowad na potencjalne lub rzeczywiste sytuacje awaryjne natychmiast w momencie ich pojawienia się i dzięki temu minimalizowad negatywny wpływ na działalnośd firmy. Samo monitorowanie, bez możliwości kontrolowania, a przynajmniej powiadamiania o wystąpieniu określonych typów zdarzeo i konieczności reakcji, nie jest zbyt wartościowe. Kontrolowanie może odbywad się na zasadzie reakcji (po zajściu określonego zdarzenia) lub prewencji (unikanie przestojów jeszcze zanim pojawią się problemy). System monitorowania i kontrolowania usług gromadzi dane wykorzystywane przez funkcje SMF do optymalizacji wydajności usług IT i zapobiegania przestojom i udostępnia te dane innym funkcjom SMF, co pozwala im reaktywnie i proaktywnie robid to samo. Aby osiągnąd te cele, architektura zarządzania raportuje najważniejsze dane dotyczące komponentów, usług i trendów wydajności, na podstawie których można automatycznie wyzwalad reguły i działania. Usługi monitorowania i kontrolowania usług, umożliwiając monitorowanie wszystkich aspektów działania usług, wspierają usługi IT w zakresie zapewnienia wynegocjowanego poziomu SLA i spełnienia innych udokumentowanych lub umownych wymagao biznesowych. Monitorowanie dotyczy także dotrzymania umów poziomu operacyjnego (Operating Level Agreement OLA) oraz kontraktów z firmami trzecimi, od których zależy dotrzymanie wynegocjowanych poziomów SLA. Każdy proces w ramach MOF jest w pewnym stopniu wspierany przez funkcje monitorowania i kontrolowania usług funkcje te są niezbędne do stałego ulepszania procesów. Jest to szczególnie widocne w przypadku fazy operacyjnej modelu procesu MOF, w której poszczególne SMF są ze sobą ściśle powiązane. Narzędzia administracyjne W tej sekcji zawarto informacje na temat narzędzi administracyjnych przydanych w zarządzaniu serwerami. Microsoft Operations Manager (MOM) 2005 Cechy i funkcje monitorowania Niektóre z cech MOM 2005 to: bezpieczeostwo, szybkośd i łatwośd wdrożenia, małe wykorzystanie przepustowości sieci, dobre funkcje diagnostyki problemów, dostęp do dużej ilości danych oraz możliwośd filtrowania danych, elastyczne, sprawne i bezpieczne funkcje raportowania, wysoka dostępnośd, dobra skalowalnośd, wysoki stopieo integracji. RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 120

121 Monitorowanie poziomu usługi (Service Level Agreement SLA) za pomocą MOM 2005 MOM 2005 oferuje także pewne funkcje monitorowania poziomu SLA. Wiążąc zdarzenia i ich ważnośd z czasami odpowiedzi SLA i stanem zdarzeo, operatorzy MOM mogą wskazad te problemy, których rozwiązanie jest najbardziej pilne i określid czas, w jakim problemy te muszą zostad rozwiązane, by utrzymad warunki określone w SLA. Proces ten może byd także objęty raportowaniem, co pozwala na analizowanie sposobu obsługi poszczególnych zdarzeo oraz sprawdzanie, czy obsługa ta mieści się w ramach warunków SLA skonfigurowanych w MOM. MOM 2005 umożliwia oddziałom IT mierzenie i monitorowanie efektywności działania, ułatwiając tym samym spełnienie warunków SLA. Co więcej, zarejestrowane zdarzenia mogą byd łatwo przekazywane (eskalowane) do analizy na wyższych stopniach odpowiedzialności. Zarządzanie uaktualnieniami Windows Server Update Service (WSUS) Osoby zarządzające zasobami serwerowymi muszą stale dbad, by na serwerach, którymi się opiekują, były regularnie instalowane najnowsze łaty oprogramowania i uaktualniania zabezpieczeo, w tym niezbędne poprawki hotfix i dodatki service pack. Idealnym rozwiązaniem, umożliwiającym spełnienie tych wymagao, jest nowe narzędzie udostępnione przez Microsoft WSUS. Innym narzędziem o podobnej funkcjonalności jest SMS 2003, jednak jest on przeznaczony raczej do tworzenia korporacyjnych rozwiązao zarządzania stacjami roboczymi. Usługi WSUS zostały zaprojektowane specjalnie do obsługi serwerów w dużych przedsiębiorstwach. Z tego i innych względów zalecanym rozwiązaniem jest właśnie WSUS. Oto niektóre z zalet stosowania usług WSUS: scentralizowana kontrola, możliwośd generowania tygodniowych raportów, elastyczne opcje konfiguracyjne. Wskazówki dotyczące konfiguracji Ze względu na specyficzną naturę rozwiązao dla sektora publicznego, struktura rozwiązania WSUS powinna byd relatywnie prosta (w porównaniu z potencjalnie złożonymi środowiskami, którymi usługi te mogą zarządzad). Dzięki definicjom grup komputerów, usługi WSUS umożliwiają administratorom kierowanie określonych rodzajów uaktualnieo do określonych serwerów. Automatyzacja pobierania uaktualnieo sprawia, że proces ich instalowania jest bardziej wydajny. Ilustracja 42. Stosowanie usług Windows Server Update Service (WSUS) RISA Ramy Interoperacyjności Systemów Administracji Publicznej Strona 121

Ramy Interoperacyjności Systemów Administracji Publicznej RISA. (Connected Government Framework) 2009, Microsoft Corporation

Ramy Interoperacyjności Systemów Administracji Publicznej RISA. (Connected Government Framework) 2009, Microsoft Corporation Ramy Interoperacyjności Systemów Administracji Publicznej RISA (Connected Government Framework) 2009, Microsoft Corporation Spis treści Wprowadzenie... 6 Struktura biznesowa RISA... 6 Co to jest e-administracja?...

Bardziej szczegółowo

udokumentowanych poprzez publikacje naukowe lub raporty, z zakresu baz danych

udokumentowanych poprzez publikacje naukowe lub raporty, z zakresu baz danych Rola architektury systemów IT Wymagania udokumentowanych poprzez publikacje naukowe lub raporty, z zakresu metod modelowania architektury systemów IT - UML, systemów zorientowanych na usługi, systemów

Bardziej szczegółowo

epuap Opis standardowych elementów epuap

epuap Opis standardowych elementów epuap epuap Opis standardowych elementów epuap Projekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka SPIS TREŚCI SPIS TREŚCI...

Bardziej szczegółowo

Warszawa, dnia 16 kwietnia 2013 r. Poz. 463 ROZPORZĄDZENIE MINISTRA ZDROWIA 1) z dnia 28 marca 2013 r.

Warszawa, dnia 16 kwietnia 2013 r. Poz. 463 ROZPORZĄDZENIE MINISTRA ZDROWIA 1) z dnia 28 marca 2013 r. DZIENNIK USTAW RZECZYPOSPOLITEJ POLSKIEJ Warszawa, dnia 16 kwietnia 2013 r. Poz. 463 ROZPORZĄDZENIE MINISTRA ZDROWIA 1) z dnia 28 marca 2013 r. w sprawie wymagań dla Systemu Informacji Medycznej 2) Na

Bardziej szczegółowo

Inżynierski Projekt Zespołowy

Inżynierski Projekt Zespołowy Inżynierski Projekt Zespołowy Projekt Funkcji Systemu 1. Wymagania funkcjonalne i niefunkcjonalne Prace nad specyfikacją powinny się koncentrowad na funkcjonalnościach, interakcji systemu z użytkownikiem,

Bardziej szczegółowo

Ocena stanu i zasadnicze kierunki informatyzacji administracji publicznej

Ocena stanu i zasadnicze kierunki informatyzacji administracji publicznej Główne cele konferencji: Ocena stanu i zasadnicze kierunki informatyzacji administracji publicznej Nowe oblicze epuap Mariusz Madejczyk Ministerstwo Spraw Wewnętrznych i Administracji 1 Główne cele warsztatów

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Zapytanie ofertowe. zakup usługi doradczej z zakresu integracji systemu z istniejącym w firmie oprogramowaniem sztuk 1.

Zapytanie ofertowe. zakup usługi doradczej z zakresu integracji systemu z istniejącym w firmie oprogramowaniem sztuk 1. 101 Studio DTP Tomasz Tęgi i Spółka Sp. z o.o. ul. Ekonomiczna 30/36 93-426 Łódź Tel. +4842/250 70 92-94 Fax. +4842/250 70 95 NIP: 725-12-59-070 REGON: 471-35-84-10 Łódź, 10.02.2011 (miejsce, data) Zapytanie

Bardziej szczegółowo

DLA SEKTORA INFORMATYCZNEGO W POLSCE

DLA SEKTORA INFORMATYCZNEGO W POLSCE DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej

Bardziej szczegółowo

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU Projekt Rozwój elektronicznej administracji w samorządach województwa mazowieckiego wspomagającej niwelowanie dwudzielności potencjału województwa ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO

Bardziej szczegółowo

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia 23.03.2015 r.

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia 23.03.2015 r. ZAPYTANIE OFERTOWE Wrocław, dnia 23.03.2015 r. W związku z realizacją przez Nova Telecom spółka z ograniczoną odpowiedzialnością, projektu pn.: Wdrożenie zintegrowanego systemu klasy B2B, umożliwiającego

Bardziej szczegółowo

Założenia i stan realizacji projektu epuap2

Założenia i stan realizacji projektu epuap2 Założenia i stan realizacji projektu epuap2 Michał Bukowski Analityk epuap Serock, 28 października 2009 r. Agenda 1. Projekt epuap - cele i zakres. 2. Zrealizowane zadania w ramach epuap. 3. Projekt epuap2

Bardziej szczegółowo

Komisji Wolności Obywatelskich, Sprawiedliwości i Spraw Wewnętrznych. dla Komisji Rynku Wewnętrznego i Ochrony Konsumentów

Komisji Wolności Obywatelskich, Sprawiedliwości i Spraw Wewnętrznych. dla Komisji Rynku Wewnętrznego i Ochrony Konsumentów PARLAMENT EUROPEJSKI 2009-2014 Komisja Wolności Obywatelskich, Sprawiedliwości i Spraw Wewnętrznych 2013/0027(COD) 2.9.2013 PROJEKT OPINII Komisji Wolności Obywatelskich, Sprawiedliwości i Spraw Wewnętrznych

Bardziej szczegółowo

Zasady Wykorzystywania Plików Cookies

Zasady Wykorzystywania Plików Cookies Zasady Wykorzystywania Plików Cookies Definicje i objaśnienia używanych pojęć Ilekroć w niniejszym zbiorze Zasad wykorzystywania plików Cookies pojawia się któreś z poniższych określeń, należy rozumieć

Bardziej szczegółowo

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE) Temat projektu/pracy dr inż. Wojciech Waloszek Grupowy system wymiany wiadomości. Zaprojektowanie

Bardziej szczegółowo

Usprawnienie procesu zarządzania konfiguracją. Marcin Piebiak Solution Architect Linux Polska Sp. z o.o.

Usprawnienie procesu zarządzania konfiguracją. Marcin Piebiak Solution Architect Linux Polska Sp. z o.o. Usprawnienie procesu zarządzania konfiguracją Marcin Piebiak Solution Architect Linux Polska Sp. z o.o. 1 Typowy model w zarządzaniu IT akceptacja problem problem aktualny stan infrastruktury propozycja

Bardziej szczegółowo

Wykaz osób w postępowaniu o udzielenie zamówienia publicznego nr 32-CPI-WZP-2244/13. Podstawa do dysponowania osobą

Wykaz osób w postępowaniu o udzielenie zamówienia publicznego nr 32-CPI-WZP-2244/13. Podstawa do dysponowania osobą Załącznik nr 8 do SIWZ Wykaz osób w postępowaniu o udzielenie zamówienia publicznego nr 3-CPI-WZP-44/13 Lp. Zakres wykonywanych czynności Liczba osób Imiona i nazwiska osób, którymi dysponuje wykonawca

Bardziej szczegółowo

DOKUMENTACJA BEZPIECZEŃSTWA

DOKUMENTACJA BEZPIECZEŃSTWA <NAZWA SYSTEMU/USŁUGI> Załącznik nr 23 do Umowy nr... z dnia... MINISTERSTWO FINANSÓW DEPARTAMENT INFORMATYKI DOKUMENTACJA BEZPIECZEŃSTWA styczeń 2010 Strona 1 z 13 Krótki opis dokumentu Opracowano na

Bardziej szczegółowo

INTERNET i INTRANET. SUPPORT ONLINE SP. z o.o. Poleczki 23, Warszawa tel. +48 22 335 28 00 e-mail: support@so.com.pl

INTERNET i INTRANET. SUPPORT ONLINE SP. z o.o. Poleczki 23, Warszawa tel. +48 22 335 28 00 e-mail: support@so.com.pl INTERNET i INTRANET SUPPORT ONLINE SP. z o.o. Poleczki 23, Warszawa tel. +48 22 335 28 00 e-mail: support@so.com.pl KOMUNIKACJA W FIRMIE Niezawodna komunikacja biznesowa to podstawa działania współczesnych

Bardziej szczegółowo

Projektowanie Infrastruktury Sieciowej v2 2012/09/01

Projektowanie Infrastruktury Sieciowej v2 2012/09/01 Projektowanie Infrastruktury Sieciowej v2 2012/09/01 www.netcontractor.pl Wstęp Era nowych technologii umożliwiła praktycznie nieograniczone możliwości komunikacji niezależenie od miejsca i czasu. Dziś

Bardziej szczegółowo

FORMULARZ OFERTOWY. Termin dostarczenia dokumentu 1

FORMULARZ OFERTOWY. Termin dostarczenia dokumentu 1 strona 1 Zał. 1 do zapytania ofertowego FORMULARZ OFERTOWY Opteam S.A. o/lublin ul. Budowlana 30 20-469 Lublin W związku z realizacją projektu pod nazwą,,opracowanie nowoczesnego i zaawansowanego systemu

Bardziej szczegółowo

Sieciowe dyski wirtualne oraz VM platforma jako usługa. Bogusław Kaczałek Kon-dor GIS Konsulting

Sieciowe dyski wirtualne oraz VM platforma jako usługa. Bogusław Kaczałek Kon-dor GIS Konsulting Sieciowe dyski wirtualne oraz VM platforma jako usługa Bogusław Kaczałek Kon-dor GIS Konsulting Rola służby GiK w tworzeniu polskiej IIP Wisła 8-10 września 2010 Wirtualne dyski sieciowe co to jest? Pod

Bardziej szczegółowo

Architektura oprogramowania w praktyce. Wydanie II.

Architektura oprogramowania w praktyce. Wydanie II. Architektura oprogramowania w praktyce. Wydanie II. Autorzy: Len Bass, Paul Clements, Rick Kazman Twórz doskonałe projekty architektoniczne oprogramowania! Czym charakteryzuje się dobra architektura oprogramowania?

Bardziej szczegółowo

ZAŁĄCZNIK NR 1 DO REGULAMINU SERWISU ZNANEEKSPERTKI.PL POLITYKA OCHRONY PRYWATNOŚCI

ZAŁĄCZNIK NR 1 DO REGULAMINU SERWISU ZNANEEKSPERTKI.PL POLITYKA OCHRONY PRYWATNOŚCI ZAŁĄCZNIK NR 1 DO REGULAMINU SERWISU ZNANEEKSPERTKI.PL POLITYKA OCHRONY PRYWATNOŚCI Headlines Spółka z ograniczoną odpowiedzialnością i spółka spółka komandytowa szanuje i troszczy się o prawo do prywatności

Bardziej szczegółowo

Załącznik 1. Platforma komunikacyjna powinna posiadać następującą funkcjonalność:

Załącznik 1. Platforma komunikacyjna powinna posiadać następującą funkcjonalność: Załącznik 1 Wytyczne dotyczące funkcjonalności platformy komunikacyjnej umożliwiającej wymianę danych o wspólnych beneficjentach powiatowych urzędów pracy, jednostek organizacyjnych pomocy społecznej i

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

OGŁOSZENIE DODATKOWYCH INFORMACJI, INFORMACJE O NIEKOMPLETNEJ PROCEDURZE LUB SPROSTOWANIE

OGŁOSZENIE DODATKOWYCH INFORMACJI, INFORMACJE O NIEKOMPLETNEJ PROCEDURZE LUB SPROSTOWANIE 1/ 11 ENOTICES_CPIMSWiA 25/06/2010- ID:2010-081521 Formularz standardowy 14 PL Publikacja Suplementu do Dziennika Urzędowego Unii Europejskiej 2, rue Mercier, L-2985 Luksemburg Faks (352) 29 29-42670 E-mail:

Bardziej szczegółowo

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Deduplikacja danych. Zarządzanie jakością danych podstawowych Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication

Bardziej szczegółowo

ZAŁĄCZNIK Nr 2 do CZĘŚCI II SIWZ WYCIĄG ZE STANDARDÓW, ZASAD I WZORCÓW INTEGRACYJNYCH OBOWIĄZUJĄCYCH W PSE S.A.

ZAŁĄCZNIK Nr 2 do CZĘŚCI II SIWZ WYCIĄG ZE STANDARDÓW, ZASAD I WZORCÓW INTEGRACYJNYCH OBOWIĄZUJĄCYCH W PSE S.A. ZAŁĄCZNIK Nr 2 do CZĘŚCI II SIWZ WYCIĄG ZE STANDARDÓW, ZASAD I WZORCÓW INTEGRACYJNYCH OBOWIĄZUJĄCYCH W PSE S.A. 1 Załącznik Nr 2 do Część II SIWZ Wyciąg ze standardów, zasad i wzorców integracyjnych obowiązujących

Bardziej szczegółowo

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Geoff Evelyn Przekład: Natalia Chounlamany APN Promise Warszawa 2011 Spis treści Podziękowania......................................................

Bardziej szczegółowo

Platforma epuap. Igor Bednarski kierownik projektu epuap2 CPI MSWiA. Kraków, 16.05.2011 r.

Platforma epuap. Igor Bednarski kierownik projektu epuap2 CPI MSWiA. Kraków, 16.05.2011 r. Platforma epuap Igor Bednarski kierownik projektu epuap2 CPI MSWiA Kraków, 16.05.2011 r. Agenda 1. Czym jest epuap 2. Cele projektu epuap2 3. Możliwości portalu 4. Komunikacja poprzez epuap 5. Stan zaawansowania

Bardziej szczegółowo

Architektura bezpieczeństwa informacji w ochronie zdrowia. Warszawa, 29 listopada 2011

Architektura bezpieczeństwa informacji w ochronie zdrowia. Warszawa, 29 listopada 2011 Architektura informacji w ochronie zdrowia Warszawa, 29 listopada 2011 Potrzeba Pomiędzy 17 a 19 kwietnia 2011 roku zostały wykradzione dane z 77 milionów kont Sony PlayStation Network. 2 tygodnie 25 milionów

Bardziej szczegółowo

Wiarygodna elektroniczna dokumentacja medyczna dr inż. Kajetan Wojsyk

Wiarygodna elektroniczna dokumentacja medyczna dr inż. Kajetan Wojsyk Wiarygodna elektroniczna dokumentacja medyczna dr inż. Kajetan Wojsyk Zastępca Dyrektora ds. Europejskich Centrum Systemów Informacyjnych Ochrony Zdrowia V Konferencja i Narodowy Test Interoperacyjności

Bardziej szczegółowo

Łódź, 01.02.2011 (miejsce, data)

Łódź, 01.02.2011 (miejsce, data) 101 Studio DTP Tomasz Tęgi i Spółka Sp. z o.o. ul. Ekonomiczna 30/36 93-426 Łódź Tel. +4842/250 70 92-94 Fax. +4842/250 70 95 NIP: 725-12-59-070 REGON: 471-35-84-10 Łódź, 01.02.2011 (miejsce, data) Zapytanie

Bardziej szczegółowo

Polityka prywatności portalu KLUBY SPORTOWE ORANGE

Polityka prywatności portalu KLUBY SPORTOWE ORANGE Polityka prywatności portalu KLUBY SPORTOWE ORANGE 1. Administratorem danych osobowych w rozumieniu przepisów ustawy z dnia 29 sierpnia 1997 r. o ochronie danych osobowych (Dz. U. z 2014 r., poz. 1182,

Bardziej szczegółowo

Projekt epuap obecny stan realizacji i plany na przyszłość

Projekt epuap obecny stan realizacji i plany na przyszłość Projekt epuap obecny stan realizacji i plany na przyszłość Waldemar Ozga Centrum Projektów Informatycznych MSWiA Projekt współfinansowany Agenda 1. Czym jest epuap 2. Korzyści z zastosowanie epuap 3. Funkcjonowanie

Bardziej szczegółowo

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław

Bardziej szczegółowo

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus Automatyzacja procesów biznesowych Andrzej Sobecki ESB Enterprise service bus Plan prezentacji Zdefiniowanie problemu Możliwe rozwiązania Cechy ESB JBI Normalizacja wiadomości w JBI Agile ESB Apache ServiceMix

Bardziej szczegółowo

SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER. Opr. Barbara Gałkowska

SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER. Opr. Barbara Gałkowska SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER Opr. Barbara Gałkowska Microsoft SharePoint Microsoft SharePoint znany jest również pod nazwą Microsoft SharePoint Products and Technologies

Bardziej szczegółowo

Polityka prywatności

Polityka prywatności Polityka prywatności 1. Niniejsza polityka prywatności określa zasady gromadzenia, przetwarzania i wykorzystywania informacji o użytkownikach serwisu www oraz użytkownikach, którzy przekażą swoje dane

Bardziej szczegółowo

Zarządzanie procesami w Twojej firmie Wygodne. Mobilne. Sprawdzone.

Zarządzanie procesami w Twojej firmie Wygodne. Mobilne. Sprawdzone. - monitorowanie zgłoszeń serwisowych - kontrola pracy serwisantów - planowanie przeglądów i odbiorów - mobilna obsługa zgłoszeń - historia serwisowania urządzeń - ewidencja przepływu części serwisowych

Bardziej szczegółowo

Kraków, 2 kwietnia 2004 r.

Kraków, 2 kwietnia 2004 r. Realizacja projektu Rozbudowa systemów elektronicznej administracji w Małopolsce w kontekście Wrót Małopolski oraz E-PUAP Kraków, 2 kwietnia 2004 r. 1 Agenda Podstawowe założenia Miejsce Wrót Małopolski

Bardziej szczegółowo

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne. Załącznik nr 1a do Zapytania ofertowego nr POIG.08.02-01/2014 dotyczącego budowy oprogramowania B2B oraz dostawcy sprzętu informatycznego do projektu pn. Budowa systemu B2B integrującego zarządzanie procesami

Bardziej szczegółowo

POLITYKA BEZPIECZEŃSTWA w zakresie ochrony danych osobowych w ramach serwisu zgloszenia24.pl

POLITYKA BEZPIECZEŃSTWA w zakresie ochrony danych osobowych w ramach serwisu zgloszenia24.pl POLITYKA BEZPIECZEŃSTWA w zakresie ochrony danych osobowych w ramach serwisu zgloszenia24.pl SPIS TREŚCI I. POSTANOWIENIA OGÓLNE... 2 II. DEFINICJA BEZPIECZEŃSTWA INFORMACJI... 2 III. ZAKRES STOSOWANIA...

Bardziej szczegółowo

E-administracja warunkiem rozwoju Polski. Obecna i potencjalna rola epuap w procesowym zarządzaniu w administracji

E-administracja warunkiem rozwoju Polski. Obecna i potencjalna rola epuap w procesowym zarządzaniu w administracji E-administracja warunkiem rozwoju Polski Obecna i potencjalna rola epuap w procesowym zarządzaniu w administracji Mariusz Madejczyk Ministerstwo Spraw Wewnętrznych i Administracji 1 epuap, a zarządzanie

Bardziej szczegółowo

produkować, promować i sprzedawać produkty, zarządzać i rozliczać przedsięwzięcia, oraz komunikować się wewnątrz organizacji.

produkować, promować i sprzedawać produkty, zarządzać i rozliczać przedsięwzięcia, oraz komunikować się wewnątrz organizacji. Wspieramy w doborze, wdrażaniu oraz utrzymaniu systemów informatycznych. Od wielu lat dostarczamy technologie Microsoft wspierające funkcjonowanie działów IT, jak i całych przedsiębiorstw. Nasze oprogramowanie

Bardziej szczegółowo

Sylabus modułu e-urzędnik

Sylabus modułu e-urzędnik Sylabus modułu e-urzędnik Wymagania konieczne: Zakłada się, że przystępując do egzaminu modułu e-urzędnik, zdający będzie miał opanowany blok umiejętności i wiadomości podstawowych w zakresie zgodnym z

Bardziej szczegółowo

Opis znaczenia kryterium. Lp. Nazwa kryterium Opis kryterium. 1. Wnioskodawca przeprowadził inwentaryzację zasobów nauki objętych projektem.

Opis znaczenia kryterium. Lp. Nazwa kryterium Opis kryterium. 1. Wnioskodawca przeprowadził inwentaryzację zasobów nauki objętych projektem. Kryteria merytoryczne wyboru projektów dla poddziałania 2.3.1 Cyfrowe udostępnianie informacji sektora publicznego (ISP) ze źródeł administracyjnych oraz zasobów nauki Programu Operacyjnego Polska Cyfrowa

Bardziej szczegółowo

ZAPYTANIE OFERTOWE. Ul. Sikorskiego 28 44-120 Pyskowice NIP 6480001415 REGON 008135290. Oferty pisemne prosimy kierować na adres: Hybryd Sp. z o.o.

ZAPYTANIE OFERTOWE. Ul. Sikorskiego 28 44-120 Pyskowice NIP 6480001415 REGON 008135290. Oferty pisemne prosimy kierować na adres: Hybryd Sp. z o.o. ZAPYTANIE OFERTOWE Pyskowice, dn. 28.04.2014r. Szanowni Państwo, Zwracamy się do Państwa z zaproszeniem do złożenia ofert na ujęte w niniejszym zapytaniu ofertowym zakupy w związku z realizowanym w ramach

Bardziej szczegółowo

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji System informatyczny na produkcji: Umożliwi stopniowe, ale jednocześnie ekonomiczne i bezpieczne wdrażanie i rozwój aplikacji przemysłowych w miarę zmiany potrzeb firmy. Może adoptować się do istniejącej

Bardziej szczegółowo

Architektura i mechanizmy systemu

Architektura i mechanizmy systemu Architektura i mechanizmy systemu Warsztaty Usługa powszechnej archiwizacji Michał Jankowski, PCSS Maciej Brzeźniak, PCSS Plan prezentacji Podstawowe wymagania użytkowników - cel => Funkcjonalnośd i cechy

Bardziej szczegółowo

E-fakturowanie w praktyce ze szczególnym uwzględnieniem systemów EDI. Warszawa, 25 września 2006 roku

E-fakturowanie w praktyce ze szczególnym uwzględnieniem systemów EDI. Warszawa, 25 września 2006 roku E-fakturowanie w praktyce ze szczególnym uwzględnieniem systemów EDI Warszawa, Uregulowanie w przepisach ROZPORZĄDZENIE MINISTRA FINANSÓW z dnia 14 lipca 2005 r. w sprawie wystawiania oraz przesyłania

Bardziej szczegółowo

e-administracja Uniwersytet Jagielloński Wydział Prawa i Administracji mgr inż.piotr Jarosz

e-administracja Uniwersytet Jagielloński Wydział Prawa i Administracji mgr inż.piotr Jarosz e-administracja Uniwersytet Jagielloński Wydział Prawa i Administracji mgr inż.piotr Jarosz Definicje e-administracji Elektroniczna administracja to wykorzystanie technologii informatycznych i telekomunikacyjnych

Bardziej szczegółowo

Zdrowe podejście do informacji

Zdrowe podejście do informacji Zdrowe podejście do informacji Warszawa, 28 listopada 2011 Michał Tabor Dyrektor ds. Operacyjnych Trusted Information Consulting Sp. z o.o. Agenda Czym jest bezpieczeostwo informacji Czy wymagania ochrony

Bardziej szczegółowo

Promotor: dr inż. Krzysztof Różanowski

Promotor: dr inż. Krzysztof Różanowski Warszawska Wyższa Szkoła Informatyki Prezentacja do obrony pracy dyplomowej: Wzorcowa polityka bezpieczeństwa informacji dla organizacji zajmującej się testowaniem oprogramowania. Promotor: dr inż. Krzysztof

Bardziej szczegółowo

ROZPORZĄDZENIE MINISTRA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI 1) z dnia 29 kwietnia 2004 r.

ROZPORZĄDZENIE MINISTRA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI 1) z dnia 29 kwietnia 2004 r. Dz.U.2004.100.1024 ROZPORZĄDZENIE MINISTRA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI 1) z dnia 29 kwietnia 2004 r. w sprawie dokumentacji przetwarzania danych osobowych oraz warunków technicznych i organizacyjnych,

Bardziej szczegółowo

Polskie Towarzystwo Informatyczne Warszawa, 16 lutego 2011 r. Zarząd Główny

Polskie Towarzystwo Informatyczne Warszawa, 16 lutego 2011 r. Zarząd Główny Polskie Towarzystwo Informatyczne Warszawa, 16 lutego 2011 r. Zarząd Główny Uwagi do projektu Rozporządzenia RM w sprawie Krajowych Ram Interoperacyjności, minimalnych wymagao dla rejestrów publicznych

Bardziej szczegółowo

Umowa użytkownika. 1. Uprawnienia. 2. Logowanie do platformy szkoleń elektronicznych

Umowa użytkownika. 1. Uprawnienia. 2. Logowanie do platformy szkoleń elektronicznych Umowa użytkownika Platforma szkoleń elektronicznych firmy Olympus (https://elearning.olympuseuropa.com) to internetowe środowisko, które zostało stworzone z myślą o przeszkoleniu i podniesieniu świadomości

Bardziej szczegółowo

mtim Dedykowane aplikacje mobilne dla TIM S.A.

mtim Dedykowane aplikacje mobilne dla TIM S.A. mtim Dedykowane aplikacje mobilne dla TIM S.A. O TIM TIM S.A. jest jednym z największych dystrybutorów artykułów elektrotechnicznych w Polsce. 25 lat w branży, z czego 17 lat na Giełdzie Papierów Wartościowych

Bardziej szczegółowo

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura

Bardziej szczegółowo

Projekty realizowane przez CPI MSWiA

Projekty realizowane przez CPI MSWiA Projekty realizowane przez CPI MSWiA CPI MSWiA Państwowa jednostka budżetowa utworzona zarządzeniem Nr 11 Ministra Spraw Wewnętrznych i Administracji z dnia 21 stycznia 2008 r. (Dz. Urz. Ministra Spraw

Bardziej szczegółowo

GLOBAL4NET Agencja interaktywna

GLOBAL4NET Agencja interaktywna Sklep internetowy Magento dla Rotom Polska Strona1 System B2B dla Rotom Polska Rotom jest jednym z czołowych dystrybutorów palet drewnianych, opakowań oraz nośników logistycznych dla przedsiębiorstw w

Bardziej szczegółowo

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny?

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny? Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA Dlaczego DNS jest tak ważny? DNS - System Nazw Domenowych to globalnie rozmieszczona usługa Internetowa. Zapewnia tłumaczenie nazw domen

Bardziej szczegółowo

ZAMAWIAJĄCY. CONCEPTO Sp. z o.o.

ZAMAWIAJĄCY. CONCEPTO Sp. z o.o. Grodzisk Wielkopolski, dnia 11.02.2013r. ZAMAWIAJĄCY z siedzibą w Grodzisku Wielkopolskim (62-065) przy ul. Szerokiej 10 realizując zamówienie w ramach projektu dofinansowanego z Programu Operacyjnego

Bardziej szczegółowo

omnia.pl, ul. Kraszewskiego 62A, 37-500 Jarosław, tel. +48 16 621 58 10 www.omnia.pl kontakt@omnia.pl

omnia.pl, ul. Kraszewskiego 62A, 37-500 Jarosław, tel. +48 16 621 58 10 www.omnia.pl kontakt@omnia.pl .firma Dostarczamy profesjonalne usługi oparte o nowoczesne technologie internetowe Na wstępie Wszystko dla naszych Klientów Jesteśmy świadomi, że strona internetowa to niezastąpione źródło informacji,

Bardziej szczegółowo

Zapewnij sukces swym projektom

Zapewnij sukces swym projektom Zapewnij sukces swym projektom HumanWork PROJECT to aplikacja dla zespołów projektowych, które chcą poprawić swą komunikację, uprościć procesy podejmowania decyzji oraz kończyć projekty na czas i zgodnie

Bardziej szczegółowo

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006 IO - Plan wdrożenia M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................

Bardziej szczegółowo

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006 IO - Plan testów M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 SPIS TREŚCI 2 Spis treści 1 Historia zmian 3 2 Zakres testów 3 2.1 Integration testing - Testy spójnosci.............. 3 2.2

Bardziej szczegółowo

Lokalna kopia bioinformatycznego serwera obliczeniowego jako wysokowydajne środowisko obliczeniowe

Lokalna kopia bioinformatycznego serwera obliczeniowego jako wysokowydajne środowisko obliczeniowe Lokalna kopia bioinformatycznego serwera obliczeniowego jako wysokowydajne środowisko obliczeniowe Dokument wizji Autorzy: Łukasz Kempny, Tomasz Sikora, Tomasz Rokita, Robert Ostrowski, Zbigniew Polek,

Bardziej szczegółowo

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ WYMAGANIA BEZPIECZEŃSTWA DLA SYSTEMÓW IT Wyciąg z Polityki Bezpieczeństwa Informacji dotyczący wymagań dla systemów informatycznych. 1 Załącznik Nr 3 do Część II SIWZ Wymagania

Bardziej szczegółowo

Symantec Backup Exec System Recovery 7.0 Server Edition. Odtwarzanie systemu Windows w ciągu najwyżej kilkudziesięciu minut nie godzin czy dni

Symantec Backup Exec System Recovery 7.0 Server Edition. Odtwarzanie systemu Windows w ciągu najwyżej kilkudziesięciu minut nie godzin czy dni GŁÓWNE ZALETY Odtwarzanie systemu Windows w ciągu najwyżej kilkudziesięciu minut nie godzin czy dni Firma Symantec wielokrotnie publicznie udowadniała, że dzięki oprogramowaniu Backup Exec System Recovery

Bardziej szczegółowo

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych Spis treści Wprowadzenie... ix Organizacja ksiąŝki... ix Od czego zacząć?... x Konwencje przyjęte w ksiąŝce... x Wymagania systemowe... xi Przykłady kodu... xii Konfiguracja SQL Server 2005 Express Edition...

Bardziej szczegółowo

Strategia informatyzacji sektora ochrony zdrowia

Strategia informatyzacji sektora ochrony zdrowia Strategia informatyzacji sektora ochrony zdrowia dr inż. Kajetan Wojsyk, z-ca Dyrektora ds. Europejskich Centrum Systemów Informacyjnych Ochrony Zdrowia w Warszawie Konferencja MedTrends, Zabrze, 2016-03-18

Bardziej szczegółowo

Platforma Usług dla Obywateli - Microsoft Citizen Service Platform

Platforma Usług dla Obywateli - Microsoft Citizen Service Platform Platforma Usług dla Obywateli - Microsoft Citizen Service Platform Paweł Walczak pawel.walczak@microsoft.com CSP w kilku słowach Citizen Services Platform Ogólnoświatowy projekt Microsoft na bazie Doświadczeń

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej

Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Aplikacje webowe wspomagające działalność przedsiębiorstwa na przykładzie przychodni stomatologicznej Małgorzata Barańska Wydział Informatyki i Zarządzania, Politechnika Wrocławska Beata Laszkiewicz Wydział

Bardziej szczegółowo

VENDIO SPRZEDAŻ kompleksowa obsługa sprzedaży. dcs.pl Sp. z o.o. vendio.dcs.pl E-mail: info@dcs.pl Warszawa, 16-10-2014

VENDIO SPRZEDAŻ kompleksowa obsługa sprzedaży. dcs.pl Sp. z o.o. vendio.dcs.pl E-mail: info@dcs.pl Warszawa, 16-10-2014 VENDIO SPRZEDAŻ kompleksowa obsługa sprzedaży dcs.pl Sp. z o.o. vendio.dcs.pl E-mail: info@dcs.pl Warszawa, 16-10-2014 Agenda Jak zwiększyć i utrzymać poziom sprzedaży? VENDIO Sprzedaż i zarządzanie firmą

Bardziej szczegółowo

Commit Polska. Retail Management CENTRALNE ZARZĄDZANIE SIECIĄ SPRZEDAŻY

Commit Polska. Retail Management CENTRALNE ZARZĄDZANIE SIECIĄ SPRZEDAŻY Commit Polska Retail Management CENTRALNE ZARZĄDZANIE SIECIĄ SPRZEDAŻY Sprawdź nas! www.commit.pl +48 17 850 74 00 Retail Management NIEOGRANICZONE MOŻLIWOŚCI KIEROWANIA DZIAŁANIAMI CAŁEJ SIECI SPRZEDAŻY

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

System ZSIN wyzwanie dla systemów do prowadzenia EGiB

System ZSIN wyzwanie dla systemów do prowadzenia EGiB System ZSIN wyzwanie dla systemów do prowadzenia EGiB Szymon Rymsza Główny specjalista w projekcie ZSIN - Faza I Główny Urząd Geodezji i Kartografii Warszawa, 10-11.09.2015 r. Agenda spotkania 1. Dostosowanie

Bardziej szczegółowo

JTW SP. Z OO. Zapytanie ofertowe. Zewnętrzny audyt jakościowy projektu technicznego dedykowanego systemu B2B Platforma Integracji Serwisowej

JTW SP. Z OO. Zapytanie ofertowe. Zewnętrzny audyt jakościowy projektu technicznego dedykowanego systemu B2B Platforma Integracji Serwisowej JTW SP. Z OO Zapytanie ofertowe Zewnętrzny audyt jakościowy projektu technicznego dedykowanego systemu B2B Platforma Integracji Serwisowej Strona 1 z 8 Spis treści 1. Klauzula poufności... 3 2. Wskazówki

Bardziej szczegółowo

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W ELBLĄGU INSTYTUT INFORMATYKI STOSOWANEJ Sprawozdanie z Seminarium Dyplomowego Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Bardziej szczegółowo

DOTACJE NA INNOWACJE

DOTACJE NA INNOWACJE Strzyżów, 29-05-2013 Ogłoszenie o zamówieniu kompleksowego wdrożenia systemu B2B do współpracy handlowej pomiędzy firmą Triton a Partnerami Zamawiający: TRITON S.C. Marcin Bosek, Janusz Rokita ul. Słowackiego

Bardziej szczegółowo

Systemy GIS Systemy baz danych

Systemy GIS Systemy baz danych Systemy GIS Systemy baz danych Wykład nr 5 System baz danych Skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki Użytkownik ma do dyspozycji narzędzia do wykonywania różnych

Bardziej szczegółowo

Realizacja projektu e-puap.

Realizacja projektu e-puap. Realizacja projektu e-puap. Współpraca Ministerstwa Spraw Wewnętrznych i Administracji z Województwem Małopolskim. Marek Słowikowski Dyrektor Departamentu Informatyzacji 17.02.2006 KONFERENCJA "E-ADMINISTRACJA

Bardziej szczegółowo

POLITYKA PRYWATNOŚCI

POLITYKA PRYWATNOŚCI POLITYKA PRYWATNOŚCI 1. Postanowienia ogólne. Niniejszy dokument stanowi politykę prywatności spółki Cyfrowe Centrum Serwisowe S.A. z siedzibą w Piasecznie, adres: ul. Puławska 40A (kod pocztowy: 05-500),

Bardziej szczegółowo

Projekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka

Projekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka Warszawa dnia 25 lutego 2013 r. Szanowni Państwo,, z siedzibą w Warszawie przy ul. Wolność 3A, zwraca się z prośbą o przedstawienie oferty cenowej na usługę analizy przedwdrożeniowej i wdrożenia dla aplikacji

Bardziej szczegółowo

Opis znaczenia kryterium. Lp. Nazwa kryterium Opis kryterium

Opis znaczenia kryterium. Lp. Nazwa kryterium Opis kryterium Kryteria merytoryczne wyboru projektów dla poddziałania 2.3.2 Cyfrowe udostępnienie zasobów kultury Programu Operacyjnego Polska Cyfrowa na lata 2014-2020 Typ projektu Cyfrowe udostępnienie zasobów kultury

Bardziej szczegółowo

Popularyzacja podpisu elektronicznego w Polsce

Popularyzacja podpisu elektronicznego w Polsce Popularyzacja podpisu elektronicznego w Polsce Rola administracji w budowaniu gospodarki elektronicznej Warszawa, 25 września 2006 r. Poruszane tematy Wprowadzenie i kontekst prezentacji Rola administracji

Bardziej szczegółowo

SOA Web Services in Java

SOA Web Services in Java Wydział Informatyki i Zarządzania Wrocław,16 marca 2009 Plan prezentacji SOA 1 SOA 2 Usługi Przykłady Jak zacząć SOA Wycinek rzeczywistości Problemy zintegrowanych serwisów : Wycinek Rzeczywistości Zacznijmy

Bardziej szczegółowo

System zarządzający grami programistycznymi Meridius

System zarządzający grami programistycznymi Meridius System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu

Bardziej szczegółowo

Linia współpracy Projekt Informatyzacja JST z wykorzystaniem technologii przetwarzania w Chmurze. Warszawa, 17 lutego 2015 r.

Linia współpracy Projekt Informatyzacja JST z wykorzystaniem technologii przetwarzania w Chmurze. Warszawa, 17 lutego 2015 r. Linia współpracy Projekt Informatyzacja JST z wykorzystaniem technologii przetwarzania w Chmurze Warszawa, 17 lutego 2015 r. Chmura obliczeniowa w Programie Zintegrowanej Informatyzacji Państwa Zbudowanie

Bardziej szczegółowo

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych ZAPYTANIE OFERTOWE Wsparcie projektów celowych Wrocław, dnia 01 października 2011 r. Zwracamy się z prośbą o przedstawienie oferty handlowej na zakup systemu zarządzania procesami w ramach Działania 1.4

Bardziej szczegółowo

Sekcja I: Instytucja zamawiająca/podmiot zamawiający

Sekcja I: Instytucja zamawiająca/podmiot zamawiający Unia Europejska Publikacja Suplementu do Dziennika Urzędowego Unii Europejskiej 2, rue Mercier, 2985 Luxembourg, Luksemburg Faks: +352 29 29 42 670 E-mail: ojs@publications.europa.eu Informacje i formularze

Bardziej szczegółowo

Platforma Usług dla Obywateli. Citizen Service Platform (CSP)

Platforma Usług dla Obywateli. Citizen Service Platform (CSP) Platforma Usług dla Obywateli Citizen Service Platform (CSP) Spis treści Streszczenie... 4 Założenia ogólne... 5 Założenia organizacyjno-prawne.... 6 Skutki społeczne wprowadzenia rozwiązania... 7 Założenia

Bardziej szczegółowo