NetSendo
Platform Updates

NetSendo v2.5.1: Google Analytics usunięty z panelu

NetSendo Team7 min czytania

Wybrałeś samodzielnie hostowaną platformę e-mail i SMS, żeby kontrolować swoje dane. Do tej wersji NetSendo nie w pełni to zapewniało. Każda instalacja, zarówno self-hosted, jak i NetSendo Cloud, ładowała w panelu administracyjnym skrypt Google Analytics, który przesyłał odsłony stron do własnej usługi analitycznej NetSendo. Nikt nie pytał cię o zgodę, a panel nie wyświetlał żadnej informacji na ten temat.

NetSendo v2.5.1 całkowicie usuwa ten skrypt. Chcemy jasno wyjaśnić, co było wysyłane, co się zmieniło i co powinieneś teraz zrobić.

TL;DR: W wersjach 2.5.0 i starszych każda strona panelu NetSendo, strona logowania i portal partnerski ładowały skrypt gtag.js Google z identyfikatorem pomiaru NetSendo G-96J7WQ3SMT. Wersja v2.5.1 go usuwa. Panel i portal nie ładują już żadnych skryptów analitycznych ani śledzących, ani od NetSendo, ani od nikogo innego. Nie musisz niczego konfigurować. Wystarczy aktualizacja. Twoje śledzenie otwarć i kliknięć, piksel NetSendo i Live Visitors działają bez zmian.

🔍 Co zmienia się w v2.5.1

Co było wysyłane wcześniej

Główny szablon app.blade.php dołączał plik resources/views/partials/google-analytics.blade.php. Ponieważ ten szablon renderuje cały panel, skrypt działał na:

  • panelu administracyjnym NetSendo: kampaniach, listach, statystykach i ustawieniach
  • stronie logowania
  • portalu partnerskim programu afiliacyjnego (/portal/...)

Przy każdej odsłonie Google i usługa analityczna NetSendo otrzymywały:

  • adres strony, na przykład /messages/36/stats
  • tytuł strony
  • dane przeglądarki i adres IP osoby korzystającej ze strony

Dotyczyło to członków twojego zespołu, a przez portal partnerski także twoich afiliantów. Nie było banera zgody, a operatorzy instalacji nie byli o tym informowani.

⚠️ Ważne: Instalacje w wersji 2.5.0 lub starszej wysyłają te odsłony do czasu aktualizacji. Poprawka działa dopiero po aktualizacji.

Co robi v2.5.1

  • ✅ Plik google-analytics.blade.php i jego dołączenie zostały usunięte
  • ✅ Panel i portal partnerski nie ładują żadnego skryptu analitycznego ani śledzącego od NetSendo ani od podmiotów trzecich
  • ✅ Nowy test regresji tests/Feature/NoThirdPartyAnalyticsTest.php sprawdza, czy strona logowania i panel nie ładują Google Analytics ani Google Tag Managera
  • ✅ Nie trzeba nic konfigurować. Wystarczy aktualizacja.

Co pozostaje bez zmian

Usunięcie analityki z panelu nie wpływa na śledzenie, które skonfigurowałeś sam. Te funkcje wysyłają dane wyłącznie do twojej własnej instalacji:

📬

Śledzenie otwarć i kliknięć

Statystyki kampanii działają jak dotąd.

🎯

Piksel NetSendo

Śledzenie na stronie nadal raportuje do twojego serwera.

👀

Live Visitors

Dane o odwiedzających w czasie rzeczywistym zostają w twojej instalacji.

ℹ️ Uwaga: Pomyśl o tym tak. Twoje śledzenie to kamera, którą sam zamontowałeś w swoim sklepie. Usunięty skrypt to kamera zamontowana przez wykonawcę sklepu, która wysyłała nagrania z twojej pracy komuś innemu. Wersja v2.5.1 usuwa tę drugą kamerę. Twoja działa dalej.

💼 Dlaczego to ważne: scenariusze z praktyki

🏢

Agencje obsługujące wielu klientów

Pracownicy agencji przez cały dzień przechodzą między kampaniami klientów. Każdy adres i tytuł strony w panelu ujawniał część tej aktywności, na przykład które wiadomości otwierali i które statystyki przeglądali. Po aktualizacji:

  • aktywność w panelu nie jest już przekazywana podmiotowi trzeciemu
  • możesz zgodnie z prawdą powiedzieć klientom, że panel nie ładuje zewnętrznej analityki
  • lista dostawców i podprzetwarzających dla panelu się skraca
🤝

Programy afiliacyjne i partnerskie

Z portalu partnerskiego /portal/... korzystają osoby spoza twojej firmy. Przed tą wersją ich wizyty również trafiały do Google. Teraz partnerzy mogą się logować i sprawdzać swoje wyniki bez żadnych zewnętrznych skryptów.

🛒

Zespoły e-commerce i SaaS podlegające RODO

Jeśli działasz w UE, twój zespół ds. prywatności będzie chciał wiedzieć o skrypcie analitycznym działającym bez zgody. Aktualizacja do v2.5.1 zatrzymuje go od tej chwili. Następnie możesz:

  • sprawdzić, czy twoja dokumentacja prywatności wspomina o analityce panelu
  • zapisać datę aktualizacji
  • zapytać swojego IOD lub doradcę prawnego, czy wcześniejszy przepływ danych wymaga dalszych działań

🛠️ Krok po kroku: aktualizacja i weryfikacja

  1. Najpierw kopia zapasowa

    Wykonaj zrzut bazy danych i kopię pliku .env oraz wolumenów storage, tak jak przy każdej aktualizacji.

  2. Pobierz obrazy i uruchom ponownie (Docker)

    W katalogu z plikiem docker-compose.yml:

    docker compose pull
    docker compose up -d

    Jeśli wdrażasz ze źródeł, przełącz się na tag v2.5.1 i wykonaj swoje zwykłe kroki budowania i wdrożenia.

  3. Wyczyść cache widoków

    Upewnij się, że żaden skompilowany szablon nie zawiera już starego dołączenia:

    docker compose exec app php artisan view:clear

    Dostosuj nazwę usługi (app) do swojego pliku compose.

  4. Weryfikacja z wiersza poleceń

    Pobierz stronę logowania i wyszukaj w niej tagi Google. To polecenie nie powinno nic wypisać:

    curl -s https://twoja-domena-netsendo/login | grep -iE "gtag|googletagmanager|G-96J7WQ3SMT"
  5. Weryfikacja w przeglądarce

    Otwórz DevTools → Network, zaloguj się i przejdź przez kilka stron panelu oraz portal partnerski. Nie powinieneś zobaczyć żadnych żądań do googletagmanager.com ani google-analytics.com.

  6. Uruchom test regresji (opcjonalnie)

    Jeśli utrzymujesz fork lub korzystasz z CI:

    php artisan test --filter=NoThirdPartyAnalyticsTest

Częste pułapki

  • Zmodyfikowane szablony: Jeśli edytowałeś app.blade.php w forku, scalaj zmiany ostrożnie i upewnij się, że @include pliku analityki zniknął.
  • Nieaktualny cache: CDN lub reverse proxy cache'ujące HTML mogą przez jakiś czas serwować stare strony. Wyczyść ten cache po aktualizacji.
  • Przypięte tagi obrazów: Jeśli plik compose wskazuje konkretną wersję, zmień ją na v2.5.1 lub nowszą przed pobraniem obrazów.

🎯 Porady eksperta

1
Dodaj Content Security Policy

Restrykcyjny nagłówek script-src na reverse proxy blokuje skrypty zewnętrzne, nawet jeśli któryś pojawi się ponownie przez pomyłkę. Zacznij od Content-Security-Policy-Report-Only, żeby zobaczyć, co zostałoby zablokowane, zanim zaczniesz egzekwować politykę.

2
Monitoruj żądania wychodzące

Dodaj sprawdzenie curl | grep z kroku 4 do zaplanowanego zadania lub monitoringu dostępności. Jeśli w HTML panelu pojawi się zewnętrzna domena śledząca, od razu się o tym dowiesz.

3
Przejrzyj dokumentację prywatności

Zapisz datę aktualizacji i przejrzyj rejestr czynności przetwarzania oraz politykę prywatności. Jeśli masz wątpliwości co do okresu sprzed aktualizacji, zapytaj IOD lub doradcę prawnego.

4
Poinformuj partnerów

Jeśli prowadzisz program afiliacyjny, krótka wiadomość, że portal partnerski nie ładuje już zewnętrznej analityki, pokaże partnerom, że poważnie traktujesz ich prywatność.

5
Zachowaj testy CI w forkach

Zostaw NoThirdPartyAnalyticsTest w swoim pipeline, gdy dostosowujesz NetSendo, żeby nowe zmiany szablonów nie przywróciły śledzenia.

✅ Podsumowanie

Self-hosting powinien oznaczać, że twoje dane zostają u ciebie, a skrypt analityczny w panelu przed tą wersją tego nie respektował. Wersja v2.5.1 go usuwa. Panel, strona logowania i portal partnerski nie ładują teraz żadnego zewnętrznego śledzenia, a test pilnuje, żeby tak zostało.

  • Wersje 2.5.0 i starsze wysyłają odsłony do Google do czasu aktualizacji
  • Nie musisz niczego konfigurować. Rozwiązaniem jest aktualizacja.
  • Twoje śledzenie otwarć i kliknięć, piksel NetSendo i Live Visitors działają dokładnie tak jak wcześniej

Zaktualizuj do v2.5.1 już dziś

Przeczytaj przewodnik aktualizacji, sprawdź swoje integracje lub pobierz najnowsze wydanie:

Chcesz śledzić zmiany dotyczące prywatności na bieżąco? Daj NetSendo gwiazdkę na GitHubie i zobacz pełne informacje o wydaniu v2.5.1.

#privacy#security#gdpr#self-hosted#release-notes#google-analytics
Udostępnij