Kto i dlaczego korzysta z usług chmurowych?
Usługi wykorzystujące chmury obliczeniowe pozwalają na dostęp do zasobów komputerowych, aplikacji lub danych na wygodnych zasadach. Korzystają z nich zakłady ubezpieczeń, sektor bankowy, służba zdrowia, a także firmy z obszaru GameDev za pośrednictwem internetu jeśli chodzi o rozwiązania chmurowe czy chmury prywatne dla środowisko programistyczne i wirtualne maszyny dla optymalizacja kosztów moc obliczeniowa.
O popularności cloud computingu przesądza możliwość szybkiego dopasowania usług do aktualnych potrzeb przedsiębiorstwa. Na rynku można znaleźć całą gamę rozwiązań chmurowych, w tym:
- narzędzia analityczne;
- chmury obliczeniowe;
- rozwiązań Internetu Rzeczy;
- jeziora danych.
Jednocześnie z zasobów można korzystać w wygodnych i elastycznych planach cenowych (określanych czasem jako pay-as-you-go). Zamiast zamawiać tworzenie oprogramowania od zera, przedsiębiorcy mogą wygodnie skalować korzystanie z software’u, dopasowując go do koniunktury. Skalowalność znacząco zmniejsza koszty prowadzenia biznesu. Nie ma potrzeby gromadzenia zapasów lub funduszy na zapas, ponieważ firma nie musi pamiętać o konieczności utrzymania i naprawy infrastruktury, a także jej samodzielnej konfiguracji. Większość obowiązków przejmuje na siebie dostawca, natomiast korzystający przede wszystkim opłaca czynsz.
Zaletą cloud computingu jest też możliwość oferowania usług globalnie w ciągu kilku minut. Nie pojawia się potrzeba fizycznej dystrybucji kopii oprogramowania, ponieważ cały obieg informacji odbywa się w pełni cyfrowo.
Typy rodzajów usług chmurowych
Obecnie można wyróżnić wiele różnych modeli świadczenia usług chmurowych. Każdy z nich sprawdzi się w nieco innym modelu biznesowym i w odmienny sposób rozkłada ciężar poszczególnych obowiązków między dostawcę a korzystającego. Wśród najpopularniejszych można wymienić:
- IaaS, czyli Infrastructure as a Service
- PaaS rozumiane jako Platform as a Service;
- SaaS, czyli Software as a Service;
- DaaS – Data as a Service;
- XaaS, rozwijane jako Everything as a Service.
Infrastruktura jako usługa (IaaS)
Usługa IaaS polega na udostępnieniu korzystającemu wirtualnych zasobów za pośrednictwem sieci. Może to być np. przestrzeń na dysku, serwer czy zasoby networkingowe za pośrednictwem narzędzi do wirtualizacji. IaaS w największym stopniu przypomina środowisko, w którym pracują specjaliści IT. Na korzystającym spoczywa obowiązek zajęcia się:
- danymi oraz aplikacjami instalowanymi na dysku;
- systemem operacyjnym;
- oprogramowaniem pośrednim;
- podsystemami środowiska wykonawczego runtime.
Często dostawcy usługi IaaS zapewniają dodatkowe wsparcie, np. w postaci tworzeniu kopii zapasowych danych, dostępu do logów systemowych czy balansowania obciążeniem zasobów. Dzięki temu możliwe staje się większe zautomatyzowanie coraz większej liczby procesów biznesowych.
Wady i zalety IaaS
Model świadczenia usług IaaS łatwiejszy w użyciu, szybszy i oferuje lepszą opłacalność kosztową. To rozwiązanie, które świetnie sprawdza się w przypadku firm potrzebujących okazjonalnie większej mocy obliczeniowej lub zasobów albo przedsiębiorstw testujących rozwiązania eksperymentalne. Po wstępnym przetestowaniu oprogramowania na infrastrukturze dostawcy firma może podjąć decyzję o wdrożeniu własnej infrastruktury (ang. in-house deployment).
Dla niektórych użytkowników wadą IaaS może być wysokość kosztów ponoszonych w tym model biznesowym. Dostawcy usług często rozdrabniają płatności, naliczając opłaty za każdą z usług osobno. W rezultacie firma może spotkać się z kosztami wyższymi, niż pierwotnie zakładano.
Umowy o świadczenie usługi IaaS często stanowią podstawę do usługi PaaS lub SaaS, które mogą poszerzać wachlarz świadczonych usług. Jednocześnie jednak nakładają pewne ograniczenia na biznes. Dobrym przykładem jest połączenie IaaS oraz PaaS. Odbiorca otrzymuje infrastrukturę IT wraz z platformą, która ułatwia rozłożenie obciążenia, ale z drugiej strony limituje możliwości, jeśli chodzi o wybór środowiska informatycznego.
Platforma jako usługa (PaaS)
Chmurowa usługa PaaS polega na dostarczeniu zamawiającemu wszystkich elementów, jakie są niezbędne do tworzenia, rozwoju, wdrożenia i zarządzania aplikacjami. Zewnętrzne i kompletne środowisko informatyczne powoduje, że developer nie musi pamiętać o aktualizowaniu poszczególnych programów czy systemów operacyjnych. W ramach PaaS zamawiający otrzymuje przede wszystkim:
- infrastrukturę chmurową – centra danych, serwery, sprzęt do networkingu;
- oprogramowanie pośrednie – biblioteki sprzętowe, development kity SDK, szkielety kodu źródłowego (tzw. framework);
- interfejs użytkownika – może obejmować GUI, API albo CLI lub wszystkie z tych elementów.
Dzięki PaaS aplikacje są tworzone bezpośrednio na platformie dostarczonej przez dostawcę. Zamawiający musi zadbać o dane umieszczane w środowisku i samodzielne zarządzanie tworzoną aplikacją. Co to Paas w praktyce? Jest nią np. Google Cloud, Microsoft Azure czy AWS.
Wady i zalety PaaS
Model PaaS pozwala znacząco przyspieszyć prace, ponieważ środowisko developerskie pozwala na prowadzenie kompleksowych prac z dowolnego miejsca i bez konieczności pamiętania o czynnościach utrzymaniowych. Często podkreśla się też niskie koszty takiego rozwiązania, skalowalność oraz ujednolicone standardy zabezpieczeń.
PaaS nie zawsze będzie rozwiązaniem idealnym. Przede wszystkim wybór tej usługi zmniejsza stopień kontroli wykonawcy nad projektem, ponieważ cała aplikacja jest tworzona na platformie innej firmy z wykorzystaniem częściowo jej zasobów. W przypadku korzystania przez wykonawcę z kilku platform do tworzenia aplikacji zamawiający powinien upewnić się, że nie wystąpi problem braku kompatybilności między nimi.
Oprogramowanie jako usługa (SaaS)
Model usługi chmurowej SaaS jest uważany za najmniej elastyczny spośród wszystkich wariantów cloud computing. Jednocześnie jednak nakłada na zamawiającego najmniejsze wymagania, jeśli chodzi o zarządzanie usługą i jej utrzymanie. W wariancie SaaS dostawca jest odpowiedzialny za zapewnienie dostępu do w pełni sprawnie działającej usługi, w tym:
- danych źródłowych;
- wirtualizacji;
- serwerów;
- interfejsu.
Firma dostarczająca cloud computing dba także o utrzymanie samej chmury, niezbędne aktualizacje i prace serwisowe. Korzystający musi jedynie zagwarantować, że jego infrastruktura spełnia minimalne wymagania sprzętowe. Poza tym może po prostu korzystać z aplikacji za odpłatnością.
Zalety i wady SaaS
Główną zaletą modelu chmurowego SaaS jest łatwa dostępność oraz wygoda korzystania. Wiele aplikacji opartych na SaaS nie wymaga wyspecjalizowanej wiedzy i dostępu do innych narzędzi programistycznych. Wybierając to rozwiązanie, firma może w wymiernym stopniu zredukować koszty szkolenia pracowników. Wielu dostawców oferuje też wersje testowe swojego software’u. Dzięki temu można przetestować go przed podjęciem decyzji o podpisaniu umowy na dłuższy czas.
Jeśli chodzi o wady, specjaliści z zakresu IT zwykle wskazują na ryzyko utraty bezpieczeństwa danych, możliwe spowolnienia w działaniu aplikacji czy wręcz brak dostępu do usługi (ang. downtime). Wszystkie te problemy mogą być spowodowane tym, że aplikacja w modelu SaaS jest hostowana bezpośrednio przez dostawcę.
Dane jako usługa (DaaS)
Model chmurowy DaaS (niekiedy występujący też jako wariant DBaaS, czyli Database as a Service) pozwala zagregować dane w wirtualnej przestrzeni i służy ich udostępnieniu zamawiającemu w dowolnym miejscu i czasie. Dzięki temu firmy zyskują ujednolicone i zawsze aktualne informacje. Obecnie to wciąż dość nowe rozwiązanie, które znajduje zastosowanie m.in. w zaawansowanej analityce biznesowej czy łączeniu serwera firmowego z aplikacją mobilną użytkowników w celu błyskawicznej wymiany informacji. Na Data as a Service składa się kilka elementów:
- pobranie danych z określonego źródła, np. programu CRM czy WMS albo raportów księgowych;
- przetworzenie danych oraz ich standaryzacja z uwzględnieniem wcześniejszych założeń;
- zgromadzenie danych w łatwo dostępnych dla korzystającego hurtowniach danych lub magazynach danych, czyli cyfrowych repozytoriach informacji;
- obsługa danych w czasie rzeczywistym, czyli ich udostępnienie w formie zrozumiałej dla człowieka.
Zalety i wady modelu DaaS
Zaletą DaaS jest przede wszystkim przyspieszenie obiegu danych oraz ich analiza, nierzadko z wykorzystaniem algorytmów AI. Jako przykładowe wykorzystanie DaaS wskazuje się firmy, które dysponują przestarzałym stackiem technologicznym, ale chcą usprawnić procesy biznesowe bez konieczności jego aktualizacji. Dzięki DaaS możliwe jest przyspieszenie obiegu danych przy jednoczesnym opóźnieniu wymiany poszczególnych elementów infrastruktury.
Decydując się na DaaS należy upewnić się co do kwestii związanych z bezpieczeństwem. Zamawiający przejściowo udostępnia swoje dane na serwer dostawcy, aby informacja mogły zostać przeanalizowane, a następnie zwrócone w uporządkowanej postaci. Dlatego w umowie trzeba zwrócić uwagę na to, czy dostawca usługi zapewnia odpowiednio wysoki standard ochrony informacji. Ma to szczególnie duże znaczenie w przypadku firm, których serwery znajdują się na terenie państw trzecich, niezobligowanych do stosowania przepisów RODO (np. Stany Zjednoczone, Chiny).
Wszystko jako usługa (XaaS)
Rozwiązaniem chmurowym, które ma stanowić swego rodzaju ostateczne połączenie usług chmurowych jest XaaS, tłumaczone jako Everything/Anything as a Service. Pod tym pojęciem rozumie się abstrakcyjny zbiór usług, które mogą być oferowane w modelu chmurowym. Wśród nich mogą znaleźć się IaaS, Paas lub DaaS, ale także cały szereg innych, mniej popularnych rozwiązań, jak np.:
- STaaS (ang. Storage as a Service) – udostępnianie pamięci masowej;
- CCaaS (ang. Contact Centre as a Service) – stworzenie wirtualnej centrali obsługi klienta;
- DRaaS (ang. Disaster Recovery as a Service) – oferowanie usług odzyskiwania kopii zapasowych, replikacji danych lub całych środowisk informatycznych;
- BPaaS (ang. Business Process as a Service) – wykorzystanie środowiska chmurowego do przejęcia określonego procesu biznesowego.
Ze względu na stopień złożoności usługa XaaS wymaga szczególnej staranności przy tworzeniu umowy, należy bowiem uwzględnić w niej zagadnienia charakterystyczne dla różnego rodzaju usług. Dzięki możliwości wyboru dowolnej konfiguracji usług chmurowych zamawiający może w największym stopniu dostosować warunki współpracy do potrzeb.
Który model usług chmurowych wybrać?
Wybór odpowiedniej usługi wykorzystującej cloud computing nie zawsze będzie łatwą decyzją. Przed jej podjęciem warto dokładnie przeanalizować warunki korzystania z usługi oraz umowę. Przyjrzyjmy się przykładowym zależnościom między poszczególnymi usługami
IaaS vs PaaS
IaaS zapewnia większą elastyczność w stosunku do PaaS, ponieważ korzystający używa własnego oprogramowania pośredniego, system operacyjnego oraz środowiska wykonawczego runtime. Takie rozwiązanie dobrze sprawdza się w przypadku projektów wymagających nieszablonowego podejścia, np. w startupach lub segmencie GameDev.
Z kolei PaaS pozwala na mniejsze modyfikacje, ale ułatwia wdrożenie usługi w firmie oraz przyspiesza prace nad aplikacją. PaaS sprawdzi się lepiej w przypadku projektów wymagających klasycznego podejścia i stabilnego środowiska kosztem innowacji.
Daas vs PaaS
Model chmury obliczeniowej DaaS to rozwiązanie stosowane przez przedsiębiorstwa wykorzystujące Big Data oraz analitykę biznesową. Nie daje on dostępu do gotowych rozwiązań informatycznych, ale ułatwia zarządzanie dużą ilością informacji w czasie rzeczywistym. PaaS to środowisko pozwalające na szybkie działanie programistów i zapewniające efektywną pracę.
Wbrew pozorom umowy na usługi chmurowe nie zawsze sprowadzają się do wdrożenia jednego rozwiązania, np. PaaS. Często stanowią połączenie wielu różnych świadczeń udostępnianych na różnych warunkach, za odmienną cenę. Przykładem takiego zbioru usług jest właśnie XaaS.
Jakie postanowienia powinny znaleźć się w każdej umowie o usługi chmurowe?
Niezależnie od wyboru modelu usługowego w jakim będzie świadczona usługa chmurowa, w treści umowy warto o uregulowanie szeregu zagadnień. Które spośród nich są szczególnie istotne?
Licencja na korzystanie z rozwiązań cloud computing
Korzystanie z oprogramowania dostarczanego przez firmę zewnętrzną wymaga wejścia w sferę jej monopolu praw autorskich. Aby zrobić to bez naruszania prawa, niezbędne jest odpowiednie rozporządzenie prawami autorskimi przysługującymi uprawnionemu. W przypadku usług chmurowych z reguły będzie to ograniczona czasowo licencja. Do jej podstawowych elementów należy zaliczyć:
- czas obowiązywania licencji;
- wynagrodzenie za korzystanie z utworu objętego licencją;
- pola eksploatacji, czyli dopuszczalny sposób korzystania z oprogramowania;
- zakaz sublicencji;
- określenie wyłączności lub niewyłączności licencji.
Warto przy tym pamiętać, że ochronie podlega nie tylko sama aplikacja, rozumiana jako integralna całość, ale także jej kod źródłowy i wynikowy, dokumentacja oraz oprogramowanie sprzętowe niezbędne do korzystania z danego rozwiązania technicznego.
Choć w doktrynie można spotkać się ze stanowiskiem, które zakłada, że umowa licencyjna nie zawsze będzie wymagana (np. w modelu SaaS), aby uniknąć ewentualnych sporów, warto zawsze określić dopuszczalny zakres korzystania z oprogramowania.
RODO w usługach chmurowych
W wielu przypadkach świadczenie usługi w modelu chmurowym będzie kolidowało z danymi osobowymi, które zostaną dostarczone przez administratora. Mogą one dotyczyć np. pacjentów podmiotu świadczącego usługi medyczne czy osób będących potencjalnymi klientami w ramach prowadzonej kampanii marketingowej.
W takich przypadkach umowa o cloud computing powinna w precyzyjny sposób określać, które dane osobowe i na jakiej podstawie może przetwarzać administrator. Jednocześnie warto pamiętać, że rozporządzenie RODO w art. 82 przewiduje nie tylko odpowiedzialność administratora, ale również podmiotu przetwarzającego dane, którym będzie firma świadcząca usługę IT.
Odpowiedzialność procesora powstaje w sytuacji, kiedy nie dopełnił on obciążających go obowiązków lub gdy przetwarzał on dane poza zakresem wskazanym w umowie zawartej z administratorem.
Jeżeli dane osobowe są przekazywane firmie, która nie jest zobligowana do stosowania przepisów RODO (np. przedsiębiorstwo z siedzibą w Kanadzie albo Chinach), należy zawrzeć w umowie oświadczenie dostawcy usług zgodnie z którym gwarantuje on poziom bezpieczeństwa danych osobowych przynajmniej zrównany z wymaganiami RODO.
Utrzymanie usługi chmurowej
Większość umów o usługi świadczone w modelu chmurowym zawiera jednocześnie elementy charakterystyczne dla umowy utrzymaniowej SLA (ang. Service Level Agreement). Jej istotą jest zapewnienie usługobiorcy dostępu dla platformy, danych lub innego rodzaju infrastruktury na poziomie określonym w kontrakcie. Niedotrzymanie poziomu świadczenia usług zwykle idzie w parze z możliwością dochodzenia kary umownej przez usługobiorcę albo obniżeniem wynagrodzenia za czas, kiedy jakość usługi odbiegała od ustaleń stron in minus.
Określenie poziomu utrzymania usługi wymaga posłużenia się technicznym żargonem i zwykle znajduje się wśród załączników do umowy. Do przykładowych parametrów SLI (ang. Service Level Indicators) pozwalających na ocenę, czy usługa cloud computingu jest świadczona w sposób należy zalicza się:
- przeciętny czas na odpowiedź (np. serwera lub helpdesku) – ASA, Average Speed to Answer;
- czas niezbędny do wykonania określonego zadania – TAT, Turn Around Time;
- czas niezbędny do przywrócenia pełnej funkcjonalności usługi – MTTR, Mean Time to Recover.
Dysponując określonymi współczynnikami SLI strony mogą w łatwy sposób ustalić, czy w konkretnym przypadku doszło do niewykonania lub nienależytego wykonania zobowiązania.
Na czym polega Exit Plan?
W treści umowy warto zadbać o tzw. exit plan, czyli mechanizmy, które określają, co dzieje się z danymi zamieszczonymi przez usługobiorcę na serwerach usługodawcy po zakończeniu współpracy. Dobrym rozwiązaniem jest wprowadzenie terminu w jakim informacje takie można zarchiwizować i po upływie którego ulegają one bezpowrotnemu usunięciu.
Exit plan uwzględnia zwykle:
- przeniesienie zasobów, np. oprogramowanie, infrastruktura źródłowa oraz klucze dostępowe;
- przeniesienie usług z jednego dostawcy oprogramowania na drugiego;
- postanowienia dotyczące bezpieczeństwa oraz integralności danych.
Układając exit plan należy z wyprzedzeniem zastanowić się na kompatybilnością poszczególnych danych z różnego rodzaju systemami oraz stworzyć przejrzyste i proste w zastosowaniu procedury pasażowania usług i zasobów. Dzięki temu możliwe będzie zachowanie ciągłości świadczenia usług przez przedsiębiorstwo. Jest to bardzo istotne z punktu widzenia przedsiębiorcy korzystającego z modelu chmurowego, który często sam jest związany postanowieniami dotyczącymi dostępności usługi względem swoich klientów (jak np. w modelu SaaS).
Kiedy trzeba wdrożyć komunikat chmurowy KNF?
W stosunku do chmur publicznych oraz hybrydowych w zakresie, w jakim stanowią one chmurę publiczną zastosowanie znajdują wytyczne Komisji Nadzoru Finansowego, która określa wymagania względem stosowanych rozwiązań. Obecnie aktualnym pozostaje stanowisko KNF z 23 stycznia 2020 r., które odnosi się do:
- warunków stosowania wytycznych;
- klasyfikacji i oceny informacji;
- szacowania ryzyka;
- wymagań dla przetwarzania informacji w chmurze obliczeniowej;
- zgłaszania do KNF przetwarzania danych w chmurze obliczeniowej.
Zadaniem komunikatu jest ujednolicenie zasad przetwarzania danych w chmurze i ograniczenia ryzyka ich utraty lub uszkodzenia.
Stosowanie wytycznych KNF jest obligatoryjne w przypadku wszystkich podmiotów, których działalność podlega takim ustawom, jak prawo bankowe, ustawa o obrocie instrumentami finansowymi czy ustawa o usługach płatniczych (łącznie tych aktów jest 10), jeżeli korzystają one z usług outsourcingu szczególnego. Pod tym pojęciem należy rozumieć usługi, których zachwianie powoduje zagrożenie dla ciągłości podstawowych obowiązków lub wyników finansowych podmiotu. We wszystkich innych sytuacjach stosowanie komunikatu jest fakultatywne.
Firma planująca podpisanie umowy o cloud computing powinna rozważyć skorzystanie ze wsparcia kancelarii prawnej na etapie negocjacji oraz ustalania warunków współpracy. Prawnicy z Kancelarii RPMS pomogą znaleźć rozwiązania IT optymalne dla danego biznesu, przeanalizują kontrakt i zadbają o zabezpieczenie interesów reprezentowanego klienta.Pytania i odpowiedzi
Przede wszystkim trzeba zadbać o prawidłową implementację API, czyli interfejsu pozwalającego na wymianę informacji między aplikacjami. Umowa powinna określać m.in., kto przeprowadza taką implementację, a także co po zakończeniu współpracy dzieje się z danymi, które zostały pobrane z aplikacji zewnętrznej i przesłane do usługi SaaS. Jeśli przesyłane informacje stanowią dane wrażliwe w rozumieniu art. 9 RODO należy zadbać o zwiększony stopień bezpieczeństwa oprogramowania.
Odpowiedź
Procesor przetwarza dane w granicach i celu określonym przez ich administratora (korzystającego z usługi). Powierzenie tej czynności innej firmie jest dopuszczalne wyłącznie wtedy, gdy wynika to wprost z umowy.
Zaufali nam: