Audyt licencji Oracle. Jak się przygotować do audytu Javy?
Jak pisałam we wpisie o nowych licencjach komercyjnych na Javę, we wszystkich umowach licencyjnych Oracle’a znajdziemy niepozornie wyglądający zapis gwarantujący firmie, że możliwy jest audyt licencji Oracle u klienta żeby sprawdzić czy produkty Oracle wykorzystywane zgodnie z licencją. Nowa licencja na komercyjną Javę nie jest wyjątkiem, zatem jak się przygotować na audyt Javy i czego możemy się spodziewać?
AUDYT LICENCJI ORACLE NA JAVĘ SE : KTÓRA UMOWA RAMOWA NAS WIĄŻE ?
Przede wszystkim pamiętajmy o celowo niejasnej konstrukcji umów licencyjnych Oracle, w tym umowy o komercyjną licencję Javy,o czym już pisałam. Wykupując licencję na Javę SE, tak naprawdę wiąże nas nie tylko sama u mowa licencyjna, ale cała masa innych dokumentów oraz wytycznych licencyjnych opracowanych przez Oracle’a, czyli jednostronnie nam narzuconych. W przypadku polskich użytkowników dodatkową barierą jest jeszcze język, ponieważ większość dokumentów jest wyłącznie po angielsku, a jak się trafi wersja polska, to często tylko dodatkowo gmatwa sytuację. Przypominam, że chodzi o od kilkuset do nawet kilku tysięcy stron zapisanych trudnym techniczno – prawniczym angielskim. Oracle robi minimalne wyjątki od wszechobecnej angielszczyzny i jeden dotycz Oracle License Definitions and Rules Booklet czyli Broszury Definicji i Zasad Udzielania Licencji Oracle (BDiZULO). Broszury są dostępne w językach innych niż angielski. Z tym, że broszura po polsku pojawiła się dopiero co, choć nosi datę 8 marca 2019r i jest częścią naszej umowy licencyjnej na Javę. Z tym, że licencji na Javę SE Oracle poświęcił w niej 1 ( słownie jeden ), ostatni akapit na stronie 15 zatytułowany „Oracle Java SE Subscription and Oracle Java SE Desktop Subscription (Subskrypcja Oracle Java SE i Subskrypcja Oracle Java SE Desktop) ». Ze zdania drugiego tego akapitu dowiadujemy się, że:
„Prawo Klienta do korzystania z określonych Programów Subskrypcji Oracle Java SE do wewnętrznych operacji biznesowych Klienta obejmuje korzystanie z Programów Subskrypcji Oracle Java SE do uruchamiania aplikacji Java jako usługi w chmurze, zgodnie z warunkami Umowy Ramowej.”
I w ten oto prosty sposób okazuje się, że umowę o licencję komercyjną na Javę Oracle sprytnie powiązał z warunkami umów ramowych na ich produkty. Co to oznacza? Ano oznacza to, że jeśli wykorzystujemy Javę do celów komercyjnych ( biznesowych, jak ślicznie przetłumaczył tłumacz w BDiZULO), to nasza umowa licencyjną na Javę SE rozrosła się właśnie również o warunki umowy ramowej ORACLE, w tym o jej postanowienia dotyczące audytu oprogramowania. Teraz pytanie zasadnicze, pod którą umowę ramową Oracle podpadamy jako użytkownicy Javy SE ?
Mamy 3 możliwości: Oracle Master Agreement (OMA), Oracle Cloud Service Agreement
(CSA) oraz Oracle License and Services Agreement (OLSA).
Zaczynamy od końca, czyli na pewno wiążą nas postanowienia OLSA, z tym, że nawet jeśli sobie wejdziemy w zakładkę OLSA na stronie Oracle ( patrz link wyżej), to przeżyjemy mały szok, bo się okaże, ze nie ma tam umowy ramowej a tylko „OLSA Policies” oraz „OLSA Hardware Amendment”. Pamiętacie, co pisałam w poprzednim wpisie dotyczącym operacji Java licencja komercyjna? Pozory mylą i prosta umowa licencyjna na Javę SE obejmuje też dokumenty, które Oracle przemyca pod hasłem OLSA. I nie tylko o nie, bo jak pamiętamy, umowy Oracle są tak sprytnie i niejasno skonstruowane, że jest możliwa interpretacja, iż każdy dokument wyprodukowany przez Oracle jest wiążący dla klienta i ma przestrzegać jego postanowień jeśli te dotyczą produktu, którego klient używa. Przy czym Oracle nie powie nam nigdy wprost, do czego się mamy stosować. To się okaże w praniu, czyli po audycie Oracle’a.
Czy można nas zaudytować pod kątem używania licencji komercyjnej na Javę ? Naturalnie, ponieważ podpadamy pod również OMA. Postanowienia Oracle’owej OMA stosuje się do wszystkich produktów i usług Oracle jakie kupujemy, Czyli teraz też do komercyjnej wersji Javy.
AUDYT LICENCJI ORACLE NA JAVĘ SE: CZEGO SIĘ SPODZIEWAĆ ZGODNIE Z UMOWĄ RAMOWĄ ?
Dobra. Teraz przejdźmy do konkretów, czyli postanowień Oracle Master Agreement dotyczących audytu licencji Oracle. Po pierwsze, miła niespodzianka, bo OMA ma oficjalną polską wersję. Niby pozytyw, ale żeby było ciekawiej, to tuż nad polską wersją po polsku Oracle zamieszcza jeszcze polską wersję OMA po angielsku i konia z rzędem temu, kto wskaże, która wersja językowa jest wiążąca w razie różnic między nimi. Pisałam już o znaczeniu wyboru języka umowy w przypadku kilku, różniących się od siebie wersji językowych, tutaj mamy właśnie przykład, jakie to ważne. Dorzucę jeszcze, że polska OMA jest interpretowana zgodnie z polskim prawem ( to niby lepiej, ale jak się zaraz okaże, w przypadku audytu niekoniecznie), a sądem właściwym do rozstrzygania sporów wynikłych z OMY jest sąd w Warszawie właściwy dla siedziby Oracle Polska.
No skoro Oracle już podjęło ten kosmiczny trud udostępnienia OMY po polsku „ lećmy w tym dalej” jak mawiała pewna znajoma pani sędzia. Po pierwsze, niech nas nie zwiedzie tytuł tego dokumentu, to nie są żadne „Warunki Ogólne”, tylko regularna umowa ramowa, o czym Oracle zająknie się dopiero w punkcie 1.3. Postanowienia dotyczące audytu znajdziemy w punkcie 8. Wklejam w całości poniżej:
„8. AUDYT
Za 45-dniowym uprzednim zawiadomieniem, Oracle zastrzega sobie prawo kontrolowania korzystania przez Klienta z Systemu Operacyjnego, Oprogramowania Zintegrowanego i Opcji Oprogramowania Zintegrowanego. Klient zobowiązuje się do współpracy z Oracle w zakresie przeprowadzanej kontroli oraz do zapewnienia Oracle, w uzasadnionym zakresie, pomocy i dostępu do informacji. Kontrolowanie, o którym mowa powyżej, nie może bez uzasadnienia zakłócać normalnej działalności Klienta. Klient zobowiązuje się do uiszczenia, w ciągu 30 dni od pisemnego zawiadomienia, wszelkich opłat wynikających z użytkowania Systemu Operacyjnego, Oprogramowania Zintegrowanego oraz Opcji Oprogramowania Zintegrowanego niezgodnego z udzieloną licencją. Jeżeli płatności nie zostaną przez Klienta uiszczone, Oracle będzie uprawniony do: (a) zakończenia świadczenia Usług powiązanych z Systemem Operacyjnym, Oprogramowaniem Zintegrowanym oraz Opcjami Oprogramowani Zintegrowanego (włączając usługi asysty technicznej), (b) wypowiedzenia licencji na System Operacyjny, Oprogramowanie Zintegrowane, Opcje Oprogramowania Zintegrowanego zamówione zgodnie z niniejszym Załącznikiem H oraz właściwymi Umowami, (c) wypowiedzenia Umowy Ramowej. Klient potwierdza, że Oracle nie będzie ponosić żadnych kosztów poniesionych przez Klienta w związku ze współpracą związaną z audytem.”
Czyli zgodnie z OMA, audyt licencji Oracle na Javę wygląda tak:
- Zostaniemy o nim powiadomieni na 45 dni przed rozpoczęciem (w dowolnej formie, starczy nawet telefon), przy czym Oracle może ten audyt przeprowadzić bez żadnego powodu. Zagwarantował sobie to prawo w OMA.
- Mamy współpracować z audytorami w „uzasadnionym zakresie” – pytanie, dla kogo , dla nas czy Oracle?
- Audyt nie może bez uzasadnionej przyczyny zakłócać normalnej działalności klienta – ciekawe co Oracle uznaje za uzasadnioną przyczynę i jak bardzo zakłóci nam wtedy pracę?
- Ile cię będzie kosztowała współpraca z Oracle w trakcie audytu, to Twoja sprawa, bo Oracle ci żadnych kosztów nie zwróci,
- Po zakończonym audycie, Oracle, niczym NIK, przekaże nam swoje wnioski pokontrolne, przy czym jego wnioski ograniczą się do wskazania którego produktu Oracle nie używasz zgodnie z licencją i w związku z tym jakie, i w jakiej kwocie, opłaty licencyjne masz Oracle zapłacić,
- Na zapłacenie masz 30 dni od otrzymania pisemnego zawiadomienia,
- A jak nie zapłacisz w terminie, to Oracle wypowie ci wszystkie umowy i zakończy świadczenie wszystkich usług oraz dostarczenie swoich produktów: czyli jak nie zapłacisz zaległej opłaty za Javę wykorzystywaną w wersji komercyjnej , to Oracle może cię odciąć od WSZYSTKICH swoich produktów i usług, nie tylko od samej Javy.
Czyli bomba: frontem do klienta, pełny szacunek i zero wymuszania.
JAK NAPRAWDĘ WYGLĄDA AUDYT LICENCJI ORACLE CZYLI MARS KONTRA ORACLE
Do 23 października 2015r. nie było żadnych dowodów na to, jak w praktyce wyglądają audyty licencyjne Oracle. Jednak w ten feralny dzień Mars, Inc (tak, to ci od batoników) złożył w Superior Court of California, hrabstwo San Francisco skargę na sposób prowadzenia audytu oprogramowania WMware oraz usług serwisowych Oracle. Celowo upraszczam, bo takiego środka prawnego o jaki wniósł Mars po prostu nie ma w polskiej procedurze cywilnej, stąd dla uproszczenia nazwijmy to skargą. Akta sprawy są dostępne online na stronie Superior Court of California, County San Francisco– po zweryfikowaniu, że nie jesteśmy robotem przejdziemy na stronę sądu, następnie wchodzimy w zakładkę „on-line services” wybieramy z menu „Case Query” i możemy wyszukać po numerze sprawy wpisując CGC15548606. Uwaga, dokumenty są prezentowane na stronach sądu chronologicznie według daty wpływu, a że w tej konkretnej sprawie wpływały partiami, to będziemy musieli je wyłuskiwać spomiędzy innych spraw. Kto jest chętny do pogłębiania wiedzy w zakresie sprawy Mars vs Oracle, temu polecam też świetne wpisy na ten temat w serwisie RedwoodCompliance (tylko pamiętajmy, że oni żyją z audytów, więc odróżnijmy marketing od rzetelnej analizy sporu). Odsyłam też do, wspominanego już przeze mnie w poprzednim wpisie, artykułu w Bloomberg Law .
Sprawa Mars vs Oracle nigdy nie trafiła na wokandę, bo kiedy tylko Mars zawnioskował o pierwsze publiczne przesłuchanie w tej sprawie i sąd wyznaczył już termin rozprawy, obie strony błyskawicznie zawarły umowę pozasądową. Treść ugody nie znamy, ale sprawa odbiła się bardzo szerokim echem, bo dzięki skardze Marsa, zgodnie z amerykańskimi przepisami o prawie dostępu do informacji publicznej, na światło dzienne wypłynęły załączone do skargi dokumenty. Jak dokładnie przebiegał audyt licencyjny Oracle u Marsa nie wiadomo, ale pewne rzeczy da się wywnioskować i tak:
- Audyt licencji Oracle trwał w Marsie od września 2014r. przez około roku,
- Oracle kontrolował wykorzystanie przez Marsa licencji na oprogramowanie Oracle używane w środowisku VMware,
- Oracle zmusił Marsa żeby mu przekazał w ramach audytu, 233 098 stron dokumentów !!!!
- Oracle uznał, że Mars jest im winien ogromną kwotę za zaległe opłaty licencyjne i te licencje, które Mars musi wykupić,
- Zdaniem Oracle, Mars powinien wykupić licencję na oprogramowanie dla każdego procesora, w którym oprogramowanie Oracle było używane w środowisku VMware i dodatkowo też na każdy procesor, na którym oprogramowanie Oracle było tylko zainstalowane, a nie używane. Oracle argumentował, że wystarczy że oprogramowanie Oracle jest „możliwe do użycia” i już należy wykupić na nie licencję
- Zdaniem Oracle argumentował, środowisko VMware jest tak zaprojektowane, żeby umożliwić programom natychmiastową migrację do wszystkich procesorów w całym środowisku, czyli zdaniem Oracle każdy procesor w środowisku VMware ma możliwość użycia oprogramowania Oracle,
- Mars odmówił, Oracle zagroził mu wypowiedzeniem wszystkich umów licencyjnych, ramowych oraz zaprzestaniem dostarczania wszelkich produktów i usług
Przyciśnięty do ściany Mars poszedł do sądu, a kiedy Oracle się zorientował, że spora część dokumentów z audytu została upubliczniona, a kto wie co jeszcze wypłynie jak sprawa zacznie być rozpatrywana przez sąd, szybko zmienił zdanie i zawarł z Marsem ugodę. I tutaj uwaga, oczywiście to takie trochę wróżenie z fusów, bo NIKT poza Marsem i Oracle nie wie dlaczego zawarły ugodę i nie znamy jej treści. Pewnie faktycznie częściowo chodziło o ujawnienie kolejnych dokumentów pokazujących jak przebiega audyt Oracle’a, a może Oracle wiedział, że przegra w sądzie ?
Z CZYM PRZYJDZIE NAM SIĘ MIERZYĆ KIEDY DOJDZIE DO AUDYTU LICENCJI NA JAVĘ: WNIOSKI ZE SPORU MARSA Z ORACLEM.
Jakie wnioski użytkownik Javy SE powinien wyciągnąć ze sprawy Mars vs.Oracle, do tej pory jedynego przypadku, kiedy audytowany klient Oracle zdecydował się pójść z tym do sądu.
Przede wszystkim, z czym przyjdzie nam się mierzyć kiedy dojdzie do audytu licencji na Javę:
- Jeśli da się zarobić więcej, Oracle wykorzysta sytuację i przeprowadzi audyt. Wprowadzenie płatnych licencji na Javę używaną w celach komercyjnych/biznesowych to wymarzona okazja do drobiazgowych audytów,
- Audyty Oracle są bardzo agresywne i nastawione na konkretny cel: kupcie więcej naszych licencji i zapłaćcie zaległe opłaty licencyjne,
- Umowy licencyjne Oracle są celowo bardzo zagmatwane. Można je bardzo różnie interpretować, często są wzajemnie sprzeczne, a ich częścią jest ogromna ilość dokumentów w większości wyłącznie po angielsku i to pisanych trudnym prawniczo-technicznym angielskim,
- Gdyby doszło do sporu z Oracle przed sądem nie wiadomo czy sprawa będzie się toczyć przed sądem w Warszawie czy w San Francisco ( umowa licencyjna na Javę wskazuje na sąd w USA, OMA na sąd w Warszawie). Głowę daję, że Oracle walczyłby o sąd w USA. I teraz pytanie, która polska firma mogłaby sobie na taki spór wtedy pozwolić ? Najpewniej chodzi o miliony dolarów wydane na samych prawników, sprawa może się ciągnąć latami i przypominam, że jej wynik jest
Czy jesteśmy na z góry przegranej pozycji jeśli dojdzie do audytu licencji na Javę? Nie. Zawsze możemy się przygotować i w zależności od efektów przygotowań, podjąć świadomą decyzję, co robimy dalej.
JAK SIĘ PRZYGOTOWAĆ DO AUDYTU JAVY
Po pierwsze, przygotowania do potencjalnego audytu Javy należy zacząć od własnego, wewnętrznego audytu. Zasady takiego wewnętrznego sprawdzenia opisałam dokładnie we wpisie Java licencja komercyjna- co to znaczy i czego się spodziewać po umowie? , a ściślej mówiąc we fragmencie tego wpisu „ Jak się w tej sytuacji bronić przed operacją „Java licencja komercyjna”. Dobra wiadomość jest taka, że zmiana umów licencyjnych na Javę i niedawne wprowadzenie opłat licencyjnych za Javę używaną w celach komercyjnych po prostu wymusza na nas taki wewnętrzny audyt.
Pamiętając o doświadczeniach Marsa, kiedy sami się audytujemy pod kątem licencji na Javę, pamiętajmy o tym, o czym pisałam już w poprzednim wpisie – link powyżej – że Oracle uznaje, iż licencja na program Oracle musi być wykupiona na każdy procesor na którym program jest zainstalowany. O konieczności wykupienia licencji decyduje samo zainstalowanie a nie używanie programu. Kolejny raz zwracam też uwagę na to jak Oracle definiuje użytkownika – to jest osoba, którą klient upoważnił do użycia zainstalowanego oprogramowania. Jest absolutnie bez znaczenia czy ta osoba użyje tego programu czy nie. Pamiętacie, co już pisałam o definicjach „Processor” oraz „Named User Plus” pod aktualnym cennikiem opłat licencyjnych na Javę ? Oracle używa tych samych metod co w przypadku Marsa.
Takie wewnętrzne audyty licencji Oracle powinny nam wejść w krew i dla bezpieczeństwa należy je przeprowadzać cyklicznie. Jak często, to już zależy od okoliczności. Na pewno trzeba wziąć pod uwagę wielkość naszej firmy oraz ilość oprogramowania Oracle z którego korzystamy.
Wreszcie, kiedy już ocenimy ile tych licencji potrzebujemy, sprawdzimy, czy wszystkie są wykupione i sobie to wszystko podliczymy, to się zastanówmy czy koniecznie musimy współpracować z Oracle? Pomijając ewentualne koszty licencji, czy naprawdę chcemy współpracować z firmą prezentującą tak agresywne i nastawione wyłącznie na zysk podejście do klient jak Oracle?
AUDYT LICENCJI ORACLE KTO JEST SZCZEGÓLNIE NARAŻONY I CO ROBIĆ W TRAKCIE
Na zakończenie krótka analiza tego, kto jest najbardziej narażony na audyty licencji Oracle i co robić jeśli już do niego dojdzie.
Kto jest najbardziej narażony na audyty Oracle:
- Ci, którzy mogą zapłacić jeszcze więcej – im więcej możesz dokupić dodatkowych licencji, tym bardziej jesteś narażony. Czyli małe firmy mogą raczej spać spokojnie, ale nie za spokojnie. Audyty licencyjne Oracle zwykle spotyka firmy, które znacząco się w ostatnim czasie powiększyły czy to przez samorozwój czy to przez przejęcia innych firm,
- Ci, którzy odmówili zakupu oferowanych im produktów/usług Oracle – no skoro nie kupiłeś dobrowolnie, to zobaczymy czy nie pomoże ci w tym wynik naszej kontroli,
- Ci, którzy niedawno zaczęli używać produktów Oracle w środowisku VMware/ zmigrowali programy Oracle do środowiska VMware – wystarczy spojrzeć na sprawę Marsa i chyba wiadomo dlaczego,
- Ci, wobec których Oracle nabrał podejrzeń, że używają jego produktów bez wykupionych licencji – to chyba nie wymaga komentarza
Dodatkowo powiem, że jak długo pozawalasz Oracle’owi na sobie przyzwoicie , jego zdaniem, zarabiać, też możesz spać spokojnie i audyt cię nie czeka. Moim zdaniem na audytu Oracle’a czy to Javy czy inne, nie są też specjalnie narażone instytucje publiczne, a już zwłaszcza rządowe. Pomyślmy co by się stało gdyby Oracle zadarł z naszym państwem? Czy naprawdę byłoby to dla nich opłacalne?
Jak się zachowywać w trakcie operacji audyt licencji Oracle na Javę i w ogóle w trakcie audytów Oracle’a?
- Spokojnie i rzeczowo odpowiadać na pytania,
- Przekazywać tylko i wyłącznie te materiały, o które nas proszą – pamiętajmy o Marsie i tych tysiącach stron dokumentów. Mars przyznał, że przekazał więcej , niż musiał zgodnie z prośbami Oracle i umowami,
- Znajmy treść naszej umowy/umów z Musimy zrozumieć nasze obowiązki wynikające z umowy. Współpracujemy z Oracle tylko i wyłącznie w zakresie, w jaki jesteśmy zobowiązani w umowie. Proponuję tutaj zaangażować prawników do analizy dokumentów.
- Nigdy nie zostawiamy audytorów samych : czy to wirtualnych, czy to fizycznie obecnych w naszym biurze. Trudno, towarzyszymy im na każdym kroku i patrzymy co robią i gdzie zaglądają. Kiedy uznamy, że przekroczyli swoje uprawnienia i zakres audytu – interweniujemy od razu.
- Rozważmy, czy w trakcie audytu przyda nam się pomoc prawnika.
- Nie panikujmy i myślmy pozytywnie. To tylko audyt Oracle a nie koniec świata.
Pozdrawiam, Prawstoria