Bezpieczna budowla

Coraz więcej organizacji realizuje wdrożenia związane z architekturą usługową i technologiami Web Services. Zanim jednak rozpocznie się taki projekt, warto wcześniej zastanowić się nad kwestiami bezpieczeństwa.

Coraz więcej organizacji realizuje wdrożenia związane z architekturą usługową i technologiami Web Services. Zanim jednak rozpocznie się taki projekt, warto wcześniej zastanowić się nad kwestiami bezpieczeństwa.

Istnieją różne koncepcje SOA, podejścia architektonicznego bazującego na luźno powiązanych ze sobą usługach działających niezależnie od platformy systemowej i sprzętowej. Celem jej wdrażania jest przede wszystkim uzyskanie elastyczności środowiska, większej szybkości tworzenia nowych aplikacji oraz obniżenie kosztów ich utrzymania. Ważnym elementem technologicznym współgrającym z SOA jest Web Services, czyli system programowy służący do komunikacji pomiędzy maszynami działającymi w sieci.

20%

firm wykorzystuje architekturę SOA, ale nie ma zdefiniowanej strategii (Forrester Research)

Od pewnego czasu o architekturze SOA i usługach Web mówi się coraz więcej, ale również coraz częściej hasła te zaczynają nabierać praktycznego znaczenia w przedsiębiorstwach, które decydują się na wdrożenie tej względnie nowej technologii. Potwierdzają to badania przeprowadzone przez Forrester Research. Nieco ponad 20% firm już posiada strategię SOA. Trochę mniejsza ich grupa stosuje architekturę usługową oraz Web Services, nie posiadając jednak precyzyjnie sformułowanej strategii. Wreszcie, także nieco ponad 20% ankietowanych przez Forrester firm planuje wdrożenie rozwiązań SOA w najbliższym czasie. Zatem ponad 60% przedsiębiorstw i organizacji ma lub wkrótce będzie mieć do czynienia z technologią SOA. Mimo że trudno określić tę tendencję jako rewolucyjną, to z pewnością idea SOA staje się bardzo popularna, zwłaszcza pośród dużych firm działających na rozwiniętych rynkach.

Można jednak zauważyć, że podczas wdrażania systemów SOA wciąż powielane są podobne błędy. Jednym z nich jest np. tworzenie tzw. silosów bezpieczeństwa, przez co rozumie się systemy zabezpieczeń dedykowane poszczególnym aplikacjom, zamiast abstrahowania od nich i tworzenia systemu bezpieczeństwa jako centralnej usługi. Z drugiej strony pojawiają się projekty, których celem jest budowanie systemu zabezpieczeń wyłącznie dla SOA i usług Web. Obydwa te podejścia są niewłaściwe.

Błędem jest także przekonanie, że problem zabezpieczeń rozwiązuje wdrożenie technologii SSL. Aplikacje SOA mają bowiem wiele warstw i każdą z nich należy chronić. W tym przypadku z pomocą mogą przyjść systemy zarządzania tożsamością, tzw. klasy 4A (Autentykacja, Autoryzacja, Audyt, Administracja). Warto także pamiętać, że choć ogólnie zabezpieczenia architektury usługowej mają podobny charakter co zabezpieczenia stosowane w tradycyjnych aplikacjach, to dodatkowo pojawiają się też pewne specyficzne zagrożenia. Najważniejsze jest jednak, by przyjmując strategię SOA dla organizacji nie zapominać o bezpieczeństwie, a pamiętając o nim, warto wziąć pod uwagę prezentowane niżej rekomendacje.

1 Unikać silosów

20%

firm już posiada strategię SOA (Forrester Research)

Tradycyjnie rozumiane bezpieczeństwo wiąże się z zabezpieczaniem poszczególnych aplikacji i dla każdej z nich tworzony jest odrębny system. W praktyce oznacza to, że uzyskanie dostępu do każdego programu wymaga znajomości odrębnego loginu, hasła i istnienia odpowiedniego profilu. Oddzielnie przebiegają procesy autoryzacji, uwierzytelniania, audytowania, a administrator musi zarządzać każdym systemem osobno. Takie podejście jest niewygodne z punktu widzenia zarówno użytkownika, jak i administratora. Pierwszy musi zapamiętać wiele loginów i haseł, wielokrotnie prowadzić procedury logowania, a drugi musi wykonywać wielokrotnie te same zadania. Tak rozumiane silosy powstawały od dawna i od dawna także rodziły przeróżne problemy. Stały się one szczególnie dotkliwe, kiedy nastała era Internetu. Wzrosła bowiem dramatycznie liczba systemów oraz użytkowników, którymi trzeba zarządzać.

Dlatego ogromnym ułatwieniem jest stworzenie centralnej usługi działającej zgodnie z przyjętymi regułami dostępowymi. Takie podejście rozwiązuje wszystkie problemy, o których była mowa wcześniej. Ten sam model sprawdza się doskonale nie tylko w przypadku relacji pomiędzy systemem a użytkownikiem, ale także w architekturze usługowej, w relacjach między maszynami.

2

Nie ufać programistom

Bezpieczeństwo SOA to zadanie przede wszystkim dla eksperta specjalizującego się w tworzeniu architektury korporacyjnej (enterprise architecture). Od kilku lat w dużych firmach zatrudnia się osoby, których głównym zadaniem jest zagwarantowanie, żeby powstające w firmie systemy informatyczne miały dobrze zaprojektowaną architekturę. Realizowanie projektów "na gorąco", bez wcześniejszego przemyślenia, jak powstająca część będzie pasowała do całości, prowadzi zwykle do chaosu. Bezpieczeństwo jest ważnym elementem tej architektury. I to właśnie osoby nadzorujące powstawanie systemu, a nie programiści tworzący aplikacje powinni zajmować się systemem zabezpieczeń.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200