Dokumenty prawne

Umowa powierzenia przetwarzania priceq

Wersja 1.3Wiążący jest tekst niderlandzki

To jest tłumaczenie dla wygody czytelnika. W razie rozbieżności z tekstem niderlandzkim pierwszeństwo ma tekst niderlandzki.

Forma: standardowe klauzule umowne Komisji Europejskiej, z wypełnionymi załącznikami.


O niniejszej umowie

Komisja Europejska przyjęła klauzule wzorcowe dla relacji między administratorem a podmiotem przetwarzającym: decyzja wykonawcza (UE) 2021/915 z dnia 4 czerwca 2021 r., wydana na podstawie art. 28 ust. 7 RODO. Przejmujemy te klauzule w całości, zamiast pisać własne.

Oznacza to dla Ciebie dwie rzeczy. Klauzule zostały przyjęte przez samą Komisję, spełniają więc wymogi art. 28. A Twój dział prawny rozpozna ten tekst i nie musi oceniać go wiersz po wierszu.

Praca merytoryczna znajduje się w załącznikach. Decyzja wymaga konkretnego opisu środków bezpieczeństwa; opis ogólny nie wystarcza. Dlatego załącznik III jest opisem tego, co system faktycznie robi.


Umowa

Strony

AdministratorKlient, zgodnie z załącznikiem I
Podmiot przetwarzającyOutflanq B.V., Boekweitstraat 62, 2153 GL Nieuw-Vennep, Holandia, rejestr handlowy (KvK) 42160759, numer VAT NL869980646B01

Artykuł 1: Co ma zastosowanie

Do przetwarzania danych osobowych, które podmiot przetwarzający wykonuje w imieniu administratora, mają w całości zastosowanie standardowe klauzule umowne z załącznika do decyzji wykonawczej (UE) 2021/915. Klauzule te stanowią część niniejszej umowy, tak jakby zostały w niej w całości przytoczone.

Artykuł 2: Wybory dokonane w ramach tych klauzul

  • Korzystanie z podprocesorów (klauzula 7.7): ogólna zgoda pisemna. Podmiot przetwarzający utrzymuje aktualną listę z załącznika IV i zgłasza zamierzoną zmianę co najmniej trzydzieści dni wcześniej. Administrator może w tym terminie zgłosić sprzeciw; jeżeli strony nie dojdą do porozumienia, może wypowiedzieć umowę ze skutkiem na dzień wejścia zmiany w życie.
  • Po zakończeniu przetwarzania (klauzula 8.5): podmiot przetwarzający usuwa dane osobowe, chyba że administrator przed końcem umowy zwróci się pisemnie o ich zwrot. Pełny eksport klient może w każdej chwili pobrać samodzielnie w aplikacji.
  • Zgłaszanie naruszenia (klauzula 9): podmiot przetwarzający zgłasza naruszenie ochrony danych osobowych bez zbędnej zwłoki, najpóźniej w ciągu 24 godzin od powzięcia o nim wiadomości, wraz z informacjami dostępnymi w tym momencie; brakujące informacje przekazuje niezwłocznie po ich uzyskaniu.
  • Prawo właściwe i właściwość sądu (klauzule 12 i 13): prawo holenderskie, sąd właściwy: sąd w Noord-Holland (Rechtbank Noord-Holland).

Artykuł 3: Audyty (klauzula 7.6)

Administrator może kontrolować przestrzeganie umowy. Odbywa się to w pierwszej kolejności na podstawie informacji przekazanych przez podmiot przetwarzający. Kontrola na miejscu jest możliwa, najwyżej raz w roku, zapowiedziana z rozsądnym wyprzedzeniem, w godzinach pracy i w sposób niezakłócający usługi dla innych klientów. Koszty kontroli, która nie wykaże uchybienia, ponosi administrator.


Załącznik I: Strony

AdministratorPodmiot przetwarzający
Nazwaklient zarejestrowany w koncie (nazwa firmy)Outflanq B.V.
Adresadres rozliczeniowy zarejestrowany w koncie, gdy tylko będzie znanyBoekweitstraat 62, 2153 GL Nieuw-Vennep, Holandia
Osoba kontaktowaadministrator kontaPrywatność: [email protected]
RolaAdministratorPodmiot przetwarzający
DziałalnośćKorzystanie z priceq do monitoringu cen i ustalania cenDostarczanie priceq

Niniejsza umowa nie jest podpisywana odręcznie. Zostaje zawarta w chwili, gdy klient wyraża zgodę przy rejestracji. Odnotowujemy przy tym: który dokument, którą wersję, odcisk (SHA-256) tekstu w postaci wyświetlonej w tym momencie, czas, adres IP i przeglądarkę. Kto chce własny podpisany egzemplarz, występuje o niego pod adresem kontaktowym podanym na stronie /legal/bedrijfsgegevens.

Załącznik II: Opis przetwarzania

Osoby, których dane dotyczą

Pracownicy administratora posiadający konto w aplikacji oraz osoby, z którymi administrator kontaktuje się za pośrednictwem aplikacji w imieniu organizacji.

Kategorie danych osobowych

  • Imię i nazwisko oraz służbowy adres e-mail
  • Rola w organizacji (administrator, przełożony, pracownik, czytelnik)
  • Skrót hasła wyliczony algorytmem Argon2id oraz numer wersji pozwalający unieważnić sesję
  • Ustawienia osobiste: język, sposób wyświetlania, otrzymywane powiadomienia
  • W dzienniku audytu: identyfikator użytkownika, czas, czynność, adres IP i przeglądarka oraz dane, których czynność dotyczyła, na przykład adres e-mail osoby zaproszonej
  • Czas i adres IP ostatniego logowania
  • Informacja, czy wiadomość e-mail wysłana na dany adres wróciła jako niedoręczalna: czas oraz powód podany przez serwer pocztowy odbiorcy

Szczególne kategorie danych

Brak. Usługa nie jest do tego przystosowana i nie ma pola, w którym by się zmieściły.

Co wyraźnie nie jest danymi osobowymi

Ceny, dostępność i oznaczenia produktów pobierane z publicznych stron sklepów oraz katalog dostarczony przez klienta. Są to dane rynkowe i produktowe. Nie są objęte niniejszą umową i wymieniono je tu wyłącznie dla uniknięcia nieporozumień.

Charakter i cel przetwarzania

Udzielanie dostępu do aplikacji, przydzielanie uprawnień, wysyłanie powiadomień i podsumowań ustawionych samodzielnie przez użytkownika, zabezpieczanie usługi (ograniczanie logowań, zarządzanie sesjami, dziennik audytu) oraz usuwanie awarii.

Czas trwania

Na czas trwania umowy. Po zakończeniu dane osobowe są anonimizowane przy zamykaniu akt, najpóźniej trzydzieści dni po zakończeniu. Jeżeli administrator po stronie klienta sam wystąpi w aplikacji o usunięcie, rozpoczyna się najpierw trzydziestodniowy okres do namysłu, w którym konto nadal działa, a wniosek można wycofać; następnie dane są kasowane. Wcześniejsze skasowanie następuje na wyraźne żądanie administratora.

Dziennik audytu ma własny termin: każdy wiersz jest usuwany automatycznie dwanaście miesięcy po jego zapisaniu, także jeśli umowa zakończyła się wcześniej. Do tego czasu zawarte w nim dane osobowe pozostają zachowane, ponieważ dziennik służy właśnie temu, by można było później ustalić, co się wydarzyło.

Częstotliwość

W sposób ciągły, tak długo, jak aplikacja jest używana.

Załącznik III: Środki techniczne i organizacyjne

Opisane konkretnie, zgodnie z wymogiem decyzji.

Rozdzielenie klientów Baza danych wymusza dla każdego wiersza przynależność danej do konkretnego klienta (row-level security), w każdej tabeli z danymi klientów, z jednym świadomym wyjątkiem: tabelami kont użytkowników oraz kodów jednorazowych do zaproszeń i resetu hasła. Te są przy logowaniu wyszukiwane po adresie e-mail, zanim wiadomo, do którego klienta dana osoba należy. Tam rozdzielenie zapewnia aplikacja: każde konto należy do dokładnie jednego klienta, a aplikacja wyszukuje konta po numerze klienta lub numerze użytkownika z zalogowanej sesji, nigdy po numerze z żądania. Aplikacja dodatkowo filtruje jawnie, a przy każdej zmianie w łańcuchu budowania uruchamiany jest test, który próbuje pobrać dane innego klienta; jeżeli ta próba się powiedzie, zmiana nie przechodzi. Aplikacja działa z rolą bazodanową, która nie może obejść tego rozdzielenia. Także klucze pamięci podręcznej i ścieżki składowania są rozdzielone per klient.

Dostęp i uwierzytelnianie Hasła są przechowywane w postaci skrótu Argon2id. Dostępne jest uwierzytelnianie dwuskładnikowe. Hasła są przy ustawianiu sprawdzane wobec haseł znanych z wycieków. Powtarzające się nieudane próby logowania są blokowane. Sesje można natychmiast unieważnić dla poszczególnego użytkownika. Uprawnienia podzielono na cztery role; najpoważniejsze czynności (pełny eksport, zmiana abonamentu, usunięcie konta) są zastrzeżone dla administratora.

Podgląd konta klienta Na potrzeby wsparcia pracownik podmiotu przetwarzającego może zobaczyć aplikację tak, jak widzi ją klient. Jest to możliwe wyłącznie z jego własnego zalogowanego konta (nie z kluczem systemowym) i dopiero po podaniu powodu. Powód jest zapisywany i pokazywany klientowi. Taka sesja jest tylko do odczytu: serwer odmawia wykonania każdej czynności zmieniającej cokolwiek, niezależnie od otwartego ekranu. Trwa trzydzieści minut i nie można jej przedłużyć; kto potrzebuje więcej czasu, zaczyna od nowa i ponownie zapisuje powód. W dzienniku pracownik pozostaje sobą: to, co robi, nigdy nie jest przypisywane pracownikowi klienta. Cztery ekrany pozostają zamknięte także podczas podglądu: lista członków zespołu, dziennik aktywności, pełny eksport i klucze API.

Poufność w trakcie przesyłania i przechowywania Cały ruch odbywa się przez TLS. Serwery nie są dostępne bezpośrednio z internetu. Kopie zapasowe przechowywane są w postaci zaszyfrowanej.

Dostępność i odtwarzanie Każdej nocy wykonywana jest pełna kopia zapasowa i zapisywana w postaci zaszyfrowanej do magazynu obiektowego, w ścieżkach rozdzielonych per klient. Szyfrowanie następuje przed zapisem, tak że dostawca składowania otrzymuje wyłącznie szyfrogram. Procedura odtwarzania jest opisana i testowana; data i wynik ostatniego testu są dostępne na żądanie.

Rejestrowanie i możliwość kontroli Czynności dotyczące kont i dostępu (zaproszenie kogoś, wycofanie zaproszenia, zmiana roli, dezaktywacja lub ponowna aktywacja konta oraz rozpoczęcie podglądu przez pracownika podmiotu przetwarzającego) są zapisywane w dzienniku audytu, którego aplikacja nie może zmienić ani usunąć. Ograniczenie to jest wymuszone na poziomie bazy danych: aplikacja nie ma prawa zmieniać ani usuwać wierszy dziennika. Wiersze starsze niż dwanaście miesięcy usuwa odrębne zadanie konserwacyjne, dysponujące własną rolą bazodanową. Klient może samodzielnie przeglądać dziennik w aplikacji.

Wiersz dotyczący sesji podglądu zawiera powód, czas i moment wygaśnięcia dostępu i jest zapisywany zanim dostęp zostanie udzielony: jeżeli ten zapis się nie powiedzie, podgląd nie następuje. Sesja podglądu bez wiersza w dzienniku zatem nie istnieje.

Bezpieczeństwo wytwarzania oprogramowania Kod źródłowy znajduje się w prywatnym repozytorium. Przy każdej zmianie uruchamiane są automatyczne kontrole: sekretów w kodzie, znanych podatności w zależnościach oraz wspomniany wyżej test rozdzielenia. Sekrety przechowywane są w sejfie kluczy, a nie w kodzie.

Monitorowanie błędów Aplikacja zgłasza błędy do zewnętrznej usługi w regionie UE. Jest ona skonfigurowana tak, aby nie przesyłać żadnych danych osobowych ani treści żądań.

Dostęp do środowiska produkcyjnego Ograniczony do administratora podmiotu przetwarzającego, przez sieć prywatną, z uwierzytelnianiem kluczem. Czynności wykonywane bezpośrednio na środowisku produkcyjnym są zapisywane po fakcie.

Usuwanie Przy zamykaniu konta dane użytkowników są anonimizowane, a wszystkie klucze i tokeny usuwane. Dziennik audytu nie jest przy tym zmieniany: wiersze pozostają wraz z zawartymi w nich danymi osobowymi (identyfikator użytkownika, adres IP, przeglądarka oraz na przykład adres e-mail osoby zaproszonej), dopóki nie osiągną dwunastu miesięcy i nie zostaną usunięte automatycznie.

Załącznik IV: Podprocesorzy

Podmioty, które przy wykonywaniu umowy mogą przetwarzać dane osobowe:

PodprocesorDo czegoDaneLokalizacjaPrzekazywanie
Hetzner Online GmbHHosting aplikacji, bazy danych i zadań w tleWszystkie dane z załącznika IINorymberga, NiemcyW obrębie UE
Cloudflare, Inc.DNS, tunel dostępowy, ochrona przed nadużyciami, przechowywanie zaszyfrowanej kopii zapasowejDane o ruchu (adres IP, przeglądarka, żądany adres URL) oraz zaszyfrowana kopia zapasowaSieć globalna; spółka amerykańskaStandardowe klauzule umowne oraz Ramy Ochrony Danych UE-USA
Backblaze, Inc. (B2)Kopia nocnej kopii zapasowej poza siedzibąWyłącznie zaszyfrowana kopia zapasowa bazy danych; klucz pozostaje u podmiotu przetwarzającegoStany ZjednoczoneStandardowe klauzule umowne
AhaSend B.V.Wysyłka poczty: powiadomienia i podsumowania, zaproszenia, wiadomości potwierdzające i resetujące hasłoImię i nazwisko oraz adres e-mail odbiorcy, treść wiadomościAmsterdam, Holandia; przetwarzanie na terenie EOGNa terenie EOG
Functional Software, Inc. (Sentry)Monitorowanie błędówTechniczne dane o błędach; skonfigurowane bez danych osobowych i bez treści żądańRegion UE, NiemcyW obrębie UE

Ci sami podprocesorzy, opisani szczegółowo dla każdego podmiotu, znajdują się na liście podprocesorów.

Odcisk tego tekstu (SHA-256): 9323aa657749b6a551e82d6db4c7f36c8b7f01670ba3aefa681f97ba6e7067dc