Regulamin i polityka prywatnosci zgodne ze stanem serwisu
Deploy Polska Lokalnie / deploy (push) Successful in 22s
Deploy Polska Lokalnie / deploy (push) Successful in 22s
Audyt pokazal rozbieznosci w obie strony: dokumenty opisywaly funkcje, ktorych nie ma (logowanie Google/Facebook), a kod robil rzeczy, ktorych dokumenty nie ujawnialy. Kod: - zgody marketingowe domyslnie WYLACZONE (byly true dla kazdego nowego konta) + skrypt fix-marketing-consents.sql czyszczacy stare wpisy, - usuniete tlumaczenie przez nieoficjalne API Google - przy zmianie jezyka wysylalo do USA tresci stron, w tym wiadomosci i nazwiska, - osadzone spacery (YouTube, Matterport, Kuula) laduja sie dopiero po zgodzie; YouTube w trybie bez ciasteczek; mapy jak dotad, - usuniecie konta kasuje dane osobowe (AccountErasureService), a nie tylko wiersz app_users, - wygasle tokeny i kody SMS kasowane po 7 dniach (ExpiredTokenCleaner), - zapisujemy moment akceptacji regulaminu przy rejestracji. Dokumenty: opisuja realne funkcje, wszystkich odbiorcow danych (OVH, Autopay, SMTP, SMS, Esri, OpenStreetMap, YouTube/Matterport/Kuula, GUS), transfery poza EOG, konkretne okresy przechowywania, procedure zgloszen z DSA, brak profilowania i tabele pamieci przegladarki zamiast fikcyjnych cookies analitycznych. Zakres NIS2 i DORA opisany zgodnie z prawda. Uklad stron prawnych jak reszta serwisu: kontener 1760 px, karty, spis tresci z boku. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
-- Wycofanie domniemanych zgod marketingowych.
|
||||
--
|
||||
-- Do 2026-09-23 encja Lead miala emailConsent i smsConsent ustawione domyslnie na TRUE, a lead
|
||||
-- powstawal automatycznie przy kazdej rejestracji. Oznacza to, ze w bazie sa zgody, ktorych nikt
|
||||
-- swiadomie nie wyrazil - a zgoda marketingowa musi byc uprzednia i wyrazna (art. 4 pkt 11
|
||||
-- i art. 7 RODO oraz Prawo komunikacji elektronicznej). Kod juz tego nie robi (domyslnie FALSE),
|
||||
-- ten skrypt porzadkuje dane, ktore powstaly wczesniej.
|
||||
--
|
||||
-- Skrypt zeruje zgody WSZYSTKIM leadom, bo w bazie nie ma sladu, kto zgode wyrazil swiadomie,
|
||||
-- a kto dostal ja z automatu. Kierunek jest bezpieczny: uzytkownik moze ja wlaczyc sam
|
||||
-- w ustawieniach konta. Trwalych rezygnacji (opt-out) skrypt nie rusza.
|
||||
--
|
||||
-- Domyslnie PROBA NA SUCHO: wszystko w jednej transakcji, skrypt pokazuje stan przed i po,
|
||||
-- po czym robi ROLLBACK. Zapis nastepuje tylko z -v apply=1.
|
||||
--
|
||||
-- docker exec -i polskalokalnie-db-1 psql -U polskalokalnie -d polskalokalnie < scripts/fix-marketing-consents.sql
|
||||
-- docker exec -i polskalokalnie-db-1 psql -U polskalokalnie -d polskalokalnie -v apply=1 < scripts/fix-marketing-consents.sql
|
||||
|
||||
\set ON_ERROR_STOP on
|
||||
\if :{?apply}
|
||||
\else
|
||||
\set apply 0
|
||||
\endif
|
||||
|
||||
BEGIN;
|
||||
|
||||
\echo '=== Stan przed ==='
|
||||
SELECT 'leady razem' AS co, count(*) AS ile FROM leads
|
||||
UNION ALL SELECT 'ze zgoda na e-mail', count(*) FROM leads WHERE email_consent
|
||||
UNION ALL SELECT 'ze zgoda na SMS', count(*) FROM leads WHERE sms_consent
|
||||
UNION ALL SELECT 'z trwala rezygnacja (nie ruszamy)', count(*) FROM leads WHERE email_opt_out OR sms_opt_out;
|
||||
|
||||
UPDATE leads SET email_consent = false WHERE email_consent;
|
||||
UPDATE leads SET sms_consent = false WHERE sms_consent;
|
||||
|
||||
\echo '=== Stan po ==='
|
||||
SELECT 'leady razem' AS co, count(*) AS ile FROM leads
|
||||
UNION ALL SELECT 'ze zgoda na e-mail', count(*) FROM leads WHERE email_consent
|
||||
UNION ALL SELECT 'ze zgoda na SMS', count(*) FROM leads WHERE sms_consent;
|
||||
|
||||
\if :apply
|
||||
COMMIT;
|
||||
\echo '>>> ZAPISANO (COMMIT) - zgody wyzerowane, uzytkownik moze je wlaczyc w ustawieniach konta'
|
||||
\else
|
||||
ROLLBACK;
|
||||
\echo '>>> PROBA NA SUCHO - nic nie zostalo zmienione (ROLLBACK). Zapis: -v apply=1'
|
||||
\endif
|
||||
Reference in New Issue
Block a user