Od Excela do pulpitu HSE i analizy wypadków bez przekazywania danych osobowych. Etap 1: maskownik offline

Od Excela do pulpitu HSE i analizy wypadków bez przekazywania danych osobowych. Etap 1: maskownik offline

11 września 2026 🇷🇺 Oryginał: русский 1 min czytania

Praktyka bezpiecznego przygotowania danych do vibe codingu i do pracy z chmurowymi agentami AI.

Idea podejścia: dane robocze zostają wewnątrz obszaru firmy. Do zewnętrznego środowiska AI trafia wyłącznie zanonimizowana kopia albo już zamaskowany dokument. Przywrócenie wartości osobowych odbywa się lokalnie.

Po co w ogóle potrzebny był osobny maskownik

Praktyczne wykorzystanie sztucznej inteligencji w BHP i bezpieczeństwie przemysłowym bardzo szybko napotyka pytanie o dane źródłowe. Arkusze robocze i materiały z wypadków mogą zawierać imiona i nazwiska, numery pracownicze, nazwy firm podwykonawczych, kontakty, kwoty i inne informacje, których bez oceny ryzyka nie wolno po prostu wgrać do zewnętrznego serwisu.

Jednocześnie to właśnie realna struktura danych jest potrzebna, by zbudować użyteczne narzędzie. Pulpit musi rozumieć prawdziwe pola i powiązania tabeli, a agent do analizy wypadków — strukturę wyjaśnień, pierwszych zgłoszeń i innych materiałów. Dlatego rozdzieliliśmy dane i narzędzie.

W efekcie maskownik offline stał się podstawowym elementem od razu dla dwóch kierunków: przygotowania zanonimizowanych szablonów Excela do dalszego vibe codingu oraz przygotowania dokumentów Word do analizy materiałów powypadkowych przy pomocy chmurowych agentów AI.

Rys. 1. Ogólny schemat bezpiecznej pracy z danymi
Rys. 1. Ogólny schemat bezpiecznej pracy z danymi

Gdzie robić vibe coding i gdzie wklejać prompty

Dla początkującego jest to prostsze, niż wygląda: Promptu 1 z sekcji „Gotowe prompty” (na końcu artykułu) nie trzeba wklejać do żadnego specjalnego edytora kodu. Wpisuje się go jako zwykły tekst w serwisie AI, który potrafi tworzyć i zmieniać aplikacje lub kod. Podejście jest zawsze takie samo: otworzyć tryb tworzenia, wkleić cały Prompt 1, otrzymać pierwszą wersję, sprawdzić ją, a następnie w tym samym dialogu podawać kolejno Prompt 2, Prompt 3 i Prompt 4.

W praktyce działa kilka wariantów. W ChatGPT — tryb „Praca” albo Codex, jeśli są dostępne na Twoim koncie; w Claude — Artifacts; w Gemini — Canvas; w Perplexity — tryb Create files and apps, jeśli jest dostępny w Twoim planie; w Replit — Agent. Na przykład w ChatGPT wystarczy otworzyć „Pracę” albo Codex, utworzyć nowe zadanie i wkleić tekst Promptu 1 w pole wiadomości. W Gemini: „Dodaj pliki” → Canvas → wklej Prompt. W Perplexity: wybrać Create files and apps i wkleić Prompt w linię zapytania. W Replit: otworzyć Agent, w razie potrzeby włączyć najpierw Plan, wkleić Prompt i po zbudowaniu sprawdzić wynik w Preview.

Nazwy trybów są aktualne na dzień publikacji; interfejsy i dostępność funkcji tych serwisów mogą się z czasem zmieniać.

Na pierwszy raz poleciłbym zacząć od ChatGPT, Claude albo Gemini: tam łatwiej pracuje się zwykłym językiem i etapami doprecyzowuje wymagania. Jeśli program już istnieje i potrzebna jest głębsza praca z kodem, wygodne są Replit, Codex i inne wyspecjalizowane narzędzia programistyczne.

Ważne:niezależnie od wybranej platformy na początku zapytania trzeba osobno zapisać wymaganie: „wynikiem jest jeden autonomiczny plik HTML, bez zewnętrznych API, CDN i zależności sieciowych, działający przy wyłączonym internecie”. I jeszcze jedna zasada: do serwisu do vibe codingu nie wgrywa się prawdziwych roboczych plików Excel/Word z danymi osobowymi. Do prac używa się wyłącznie sprawdzonej zanonimizowanej kopii albo pliku testowego.

Kierunek 1. Excel: zanonimizowany szablon do dalszego vibe codingu

Do analityki dużych zbiorów danych ważne jest dla nas zachowanie struktury tabeli: nazw arkuszy i kolumn, typów danych, dat, kategorii, hierarchii „zakład — wydział — odcinek”, procesów i innych cech. Prawdziwe nazwiska i identyfikatory nie są potrzebne do zbudowania powłoki programu.

Dlatego roboczy arkusz Excela wgrywa się do lokalnego maskownika HTML. Program na komputerze użytkownika znajduje potencjalnie wrażliwe wartości, pokazuje je przed zamianą i pozwala ręcznie poprawić reguły. Na przykład: „Iwan Iwanowicz Iwanow → Pracownik_001”, „Podwykonawca sp. z o.o. → Organizacja_001”, „numer pracowniczy → ID_001”.

Na wyjściu powstaje zanonimizowana kopia z zachowaną logiką pierwotnej tabeli. Już na niej można pracować z AI, budując program: filtry, KPI, interaktywne wykresy, wyszukiwanie i szczegóły aż do pojedynczego rekordu. Oryginalny plik Excela pozostaje przy tym wewnątrz przedsiębiorstwa.

Po zakończeniu prac prawdziwa baza w ogóle nie powinna znajdować się wewnątrz tworzonego HTML-a. W gotowym programie przewidziany jest przycisk lokalnego wczytania źródłowego Excela: plik czyta przeglądarka na komputerze użytkownika, a pulpit przelicza wskaźniki wewnątrz lokalnej sesji. To będzie drugi etap tej serii.

Podstawowe postawienie zadania dla takiego trybu znajduje się w Prompcie 1 i Prompcie 2 (patrz „Gotowe prompty” na końcu artykułu).

Rys. 2. Maskowanie Excela przed przekazaniem szablonu do AI
Rys. 2. Maskowanie Excela przed przekazaniem szablonu do AI
Rys. 2.1. Maskowanie Excela: wczytanie pliku offline
Rys. 2.1. Maskowanie Excela: wczytanie pliku offline
Rys. 2.2. Maskowanie Excela: wybór reguł zamiany
Rys. 2.2. Maskowanie Excela: wybór reguł zamiany
Rys. 2.3. Maskowanie Excela: sprawdzenie zamian i pobranie kopii
Rys. 2.3. Maskowanie Excela: sprawdzenie zamian i pobranie kopii

Kierunek 2. Word: materiały z wypadku bez ujawniania danych osobowych

Drugie zastosowanie maskownika to przygotowanie dokumentów powypadkowych do późniejszej analizy w chmurowej AI. Na początkowym etapie mogą to być pierwsze zgłoszenie, wyjaśnienia, oświadczenia pracowników i inne materiały w Wordzie.

Maskownik tworzy zanonimizowaną kopię Worda: imiona i nazwiska oraz inne wybrane wartości zastępowane są stabilnymi oznaczeniami umownymi. Ważne, by ta sama osoba w całym komplecie dokumentów zachowała jedno oznaczenie — inaczej agent utraci powiązania między zeznaniami a zdarzeniami.

Jednocześnie lokalnie powstaje osobny zaszyfrowany klucz odtworzenia. Klucz zawiera odpowiedniki między oznaczeniami umownymi a wartościami źródłowymi. Ustawia się dla niego hasło, którego nie przekazuje się razem z dokumentami i którego nie zapisuje się w chmurowym agencie.

Następnie do AI trafia wyłącznie zamaskowany Word. Agent może analizować chronologię, zestawiać wyjaśnienia, wykrywać sprzeczności, formułować pytania uzupełniające, szukać związków przyczynowych i przygotować projekt materiałów analitycznych z postępowania. Formalne postępowanie i decyzje końcowe pozostają oczywiście po stronie komisji i odpowiedzialnych specjalistów.

Gdy poprawiony zamaskowany dokument wraca ze środowiska chmurowego, odtworzenie znów odbywa się lokalnie. Do maskownika offline wgrywa się trzy elementy: otrzymany Word, odpowiadający mu plik klucza i hasło. Program przywraca wartości źródłowe tam, gdzie oznaczenia umowne zachowały się w tekście.

W ten sposób chmurowy agent pracuje z logiką zdarzenia, ale nie otrzymuje pierwotnych imion i nazwisk ani innych zamaskowanych wartości. Klucz odtworzenia i hasło nie trafiają do środowiska chmurowego.

Architektura dwustronnej pracy z Wordem opisana jest w Prompcie 3 (patrz „Gotowe prompty” na końcu artykułu).

Rys. 3. Cykl Worda: maskowanie → analiza AI → lokalne odtworzenie
Rys. 3. Cykl Worda: maskowanie → analiza AI → lokalne odtworzenie
Rys. 3.1. Cykl Worda: pobranie zamaskowanego źródła
Rys. 3.1. Cykl Worda: pobranie zamaskowanego źródła
Rys. 3.2. Cykl Worda: utworzenie lokalnego klucza odtworzenia
Rys. 3.2. Cykl Worda: utworzenie lokalnego klucza odtworzenia

Jak powstawało samo narzędzie

Sam maskownik też powstał przy pomocy vibe codingu. Tu ważne jest, by nie traktować tego podejścia jak polecenia „zrób program” z oczekiwaniem idealnego wyniku. Schemat pracy był inny: sformułować jedną funkcję, sprawdzić ją, zapisać usterkę albo nowe wymaganie i dopiero potem przejść do kolejnej wersji.

Pierwszym wymaganiem był jeden autonomiczny plik HTML bez instalacji. Potem doszły ręczna weryfikacja zamian, lista „Dodatkowo zamień”, lista „Nie zmieniaj”, czyszczenie bieżącej sesji, praca z Wordem, utworzenie osobnego zaszyfrowanego klucza i lokalne odtworzenie dokumentu.

Osobnym etapem było techniczne samosprawdzenie. AI dostała tym razem nie rolę programisty, lecz rolę audytora własnego kodu: sprawdzić fetch, XMLHttpRequest, WebSocket, zewnętrzne biblioteki, CDN, API, iframe, lokalne magazyny i inne mechanizmy, przez które dane mogłyby opuścić komputer albo zostać po zakończeniu pracy. Taki audyt nie zastępuje kontroli działów IT i bezpieczeństwa informacji, ale pozwala usunąć oczywiste ryzyka jeszcze na etapie prototypu.

Zapytanie kontrolne znajduje się w Prompcie 4 (patrz „Gotowe prompty” na końcu artykułu).

Rys. 3.3. Cykl Worda: odtworzenie danych osobowych po przetworzeniu przez AI
Rys. 3.3. Cykl Worda: odtworzenie danych osobowych po przetworzeniu przez AI

Co otrzymujemy na wyjściu

Jedno lokalne narzędzie zamyka dwa różne zadania. Dla Excela pozwala przygotować bezpieczny szablon i na jego podstawie tworzyć z AI offline’ową analitykę dużych zbiorów danych. Dla Worda pozwala przekazać do chmurowej AI materiały z wypadku bez ujawniania zamaskowanych danych osobowych, a potem lokalnie odtworzyć dokument po analizie.

Kluczowa zasada pozostaje ta sama: najpierw wyłączyć z obszaru zewnętrznego to, czego AI do rozwiązania zadania wiedzieć nie musi, i dopiero potem korzystać z jej możliwości.

W kolejnych publikacjach pokażę oba przedłużenia tego schematu osobno: jak z zanonimizowanego szablonu Excela powstaje autonomiczny pulpit HSE z lokalnym wczytaniem prawdziwej bazy i jak agent AI wykorzystywany jest do analizy materiałów z postępowania powypadkowego.

Gotowe prompty do zbudowania i sprawdzenia lokalnego maskownika Excel/Word

Sformułowania przeznaczone są do etapowego tworzenia i do dostosowania pod konkretny scenariusz firmowy.

Prompt 1. Podstawowa architektura autonomicznego maskownika Excela i Worda

Stwórz autonomiczną lokalną aplikację do maskowania danych w Excelu (.xlsx) i Wordzie (.docx).

Format aplikacji: jeden plik HTML, który otwiera się w zwykłej przeglądarce i działa bez instalowania dodatkowego oprogramowania.

Wymagania krytyczne:
1. Po otwarciu aplikacja nie może łączyć się z internetem.
2. Nie używać zewnętrznych API, telemetrii, przetwarzania w chmurze ani automatycznego przesyłania plików użytkownika.
3. Wszystkie potrzebne biblioteki muszą być wbudowane lokalnie w HTML.
4. Użytkownik musi mieć możliwość wczytania jednego lub kilku plików Excel/Word z komputera.
5. Nie zmieniać plików źródłowych. Wynik zapisywać jako osobną kopię.
6. Wszystkie operacje wykonywać w pamięci bieżącej karty przeglądarki.
7. Dodać przycisk pełnego wyczyszczenia bieżącej sesji.

Funkcje maskowania:
- wyszukiwać imiona i nazwiska, nazwiska z inicjałami i inne wybrane dane osobowe;
- wyszukiwać organizacje i inne ręcznie wskazane wartości;
- w razie potrzeby maskować numery, kontakty i kwoty;
- ta sama wartość źródłowa musi otrzymać to samo oznaczenie umowne w obrębie jednej sesji;
- przed zapisem pokazać użytkownikowi listę zamian w formacie „miejsce / było / będzie”;
- pozwolić ręcznie wyłączyć lub zmienić dowolną zamianę;
- dodać pole „Dodatkowo zamień”;
- dodać pole „Zachowaj bez zmian”, mające pierwszeństwo przed zamianami.

Dla Excela zachować strukturę tabel i pola potrzebne do dalszej analityki. Dla Worda zachować strukturę dokumentu w możliwie największym stopniu.

Po pierwszej wersji wypisz osobno ograniczenia automatycznego rozpoznawania i miejsca, które użytkownik musi sprawdzić ręcznie.

Prompt 2. Tryb Excel: zanonimizowany szablon do vibe codingu i analityki HSE

Rozbuduj lokalny maskownik HTML o bezpieczne przygotowanie szablonu Excela, który następnie można wykorzystać przy tworzeniu programu analitycznego z pomocą AI.

Cel: AI ma widzieć strukturę tabeli roboczej, ale nie prawdziwe dane osobowe ani inne wybrane wartości wrażliwe.

Wymagania:
1. Zachowuj nazwy arkuszy, nagłówki kolumn, typy danych, daty, kategorie i cechy hierarchiczne, o ile użytkownik nie wskazał ich do zamiany.
2. Imiona i nazwiska zamieniaj na stabilne oznaczenia typu Pracownik_001, Pracownik_002 itd.
3. Organizacje zamieniaj na oznaczenia Organizacja_001, Organizacja_002 itd.
4. Identyfikatory i numery pracownicze, jeśli zostały wybrane do maskowania, zamieniaj na oznaczenia ID_001, ID_002 itd.
5. Ta sama wartość źródłowa musi otrzymać tę samą zamianę we wszystkich plikach Excela bieżącej sesji.
6. Pokaż wstępną listę wszystkich zamian i pozwól użytkownikowi poprawić ją ręcznie.
7. Nie usuwaj wierszy i kolumn tylko dlatego, że program ich nie używa.
8. Nie zmieniaj pliku źródłowego.
9. Po przetworzeniu udostępnij do pobrania osobną zanonimizowaną kopię.
10. Dodaj wyraźne ostrzeżenie: przed przekazaniem wyniku do zewnętrznej AI użytkownik musi ręcznie sprawdzić zanonimizowany plik.

Ważne: odwrotne odtworzenie Excela nie jest wymagane. Prawdziwa baza robocza zostaje wewnątrz obszaru firmy; zanonimizowana kopia służy tylko do zaprojektowania logiki i interfejsu przyszłego pulpitu HTML.

Prompt 3. Tryb Word: maskowanie, osobny klucz i lokalne odtworzenie

Rozbuduj autonomiczny maskownik HTML o dwustronną pracę z Wordem (.docx).

Scenariusz:
1. Użytkownik wczytuje źródłowe dokumenty Word dotyczące wypadku.
2. Program lokalnie zamienia imiona i nazwiska, organizacje i inne wybrane wartości na stabilne oznaczenia umowne.
3. Użytkownik sprawdza i zatwierdza listę zamian.
4. Program tworzy:
   a) zamaskowany dokument Word;
   b) osobny zaszyfrowany plik klucza z dokładnymi odpowiednikami „oznaczenie umowne ↔ wartość źródłowa”.
5. Dla pliku klucza użytkownik ustala hasło o długości co najmniej 10 znaków. Hasła nie zapisywać w aplikacji ani nie umieszczać jawnie wewnątrz klucza.
6. Zamaskowany Word może następnie zostać przekazany zewnętrznemu agentowi AI do analizy treści.
7. Po otrzymaniu poprawionego Worda użytkownik wraca do lokalnej aplikacji.
8. Do odtworzenia wczytuje:
   - poprawiony zamaskowany Word;
   - odpowiadający mu plik klucza;
   - i wpisuje hasło.
9. Program lokalnie zamienia zachowane oznaczenia umowne z powrotem na wartości źródłowe i tworzy osobny odtworzony plik Word.

Wymagania bezpieczeństwa:
- klucz odtworzenia i hasło nigdy nie mogą być automatycznie przesyłane przez sieć;
- klucz przechowywać osobno od zamaskowanego dokumentu;
- stosować nowoczesne szyfrowanie klucza (na przykład AES-256-GCM przez Web Crypto API);
- przy błędnym haśle nie ujawniać zawartości klucza;
- po zakończeniu pracy umożliwić pełne wyczyszczenie bieżącej sesji;
- pokazać ostrzeżenie, że oznaczeń umownych usuniętych lub istotnie zmienionych przez zewnętrzną AI nie da się odtworzyć automatycznie;
- nie rozpoznawać automatycznie tekstu wewnątrz obrazów i wyraźnie uprzedzić użytkownika o konieczności wzrokowego sprawdzenia obrazów i logotypów.

Zachowuj strukturę Worda: akapity, tabele, style, nagłówki i stopki oraz obrazy, na ile jest to technicznie możliwe. Nie zmieniaj pliku źródłowego.

Prompt 4. Audyt techniczny autonomiczności i możliwych kanałów wycieku

Przeprowadź audyt techniczny utworzonej aplikacji HTML jako lokalnego narzędzia offline do pracy z danymi wrażliwymi.

Sprawdź cały kod i wypisz wszystkie znalezione mechanizmy, które mogłyby powodować wymianę sieciową lub długotrwałe przechowywanie treści plików użytkownika.

Sprawdź osobno:
- fetch;
- XMLHttpRequest;
- WebSocket;
- EventSource;
- navigator.sendBeacon;
- zewnętrzne script src;
- zewnętrzne CSS i czcionki;
- CDN;
- zewnętrzne API;
- iframe;
- automatyczne wysyłanie formularzy HTML;
- Service Worker;
- localStorage;
- sessionStorage;
- IndexedDB;
- cookies;
- zewnętrzne adresy URL w bibliotekach i kodzie;
- telemetrię, analitykę i crash-reporting.

Wymagany wynik:
1. Program musi w pełni działać przy wyłączonym internecie.
2. Pliki Excel/Word użytkownika nie mogą być przesyłane przez sieć.
3. Klucze odtworzenia i hasła nie mogą być automatycznie wysyłane ani zapisywane przez aplikację.
4. Jeśli używane są lokalne magazyny przeglądarki, wyjaśnij po co; dla danych źródłowych, kluczy i haseł wyklucz ich użycie.
5. Dodaj ścisłą Content-Security-Policy, zabraniającą połączeń sieciowych i osadzania zewnętrznej treści w zakresie zgodnym z działaniem aplikacji.
6. Po poleceniu „Wyczyść wszystko” usuń dane bieżącej sesji ze stanu aplikacji.
7. Po poprawkach sprawdź kod ponownie i przedstaw krótki raport: jakie potencjalne kanały znaleziono, co usunięto, co zostało i dlaczego.

Ważne: zaznacz, że takie samosprawdzenie kodu nie zastępuje firmowej kontroli IT/bezpieczeństwa informacji ani oceny prawnej dopuszczalności konkretnego scenariusza użycia.
Zasada praktyczna: do zewnętrznego środowiska AI przekazywać wyłącznie sprawdzoną zanonimizowaną kopię. Plik klucza odtworzenia i hasło mają pozostać w obszarze lokalnym i nie mogą być dołączane do zapytania do agenta.

Blog eksperta

Czytaj artykuły liderów bezpieczeństwa

Wszystkie artykuły na blogu
Używamy plików cookie, aby poprawić działanie strony · Informacja o plikach cookie

Dołącz do liderów

14 000+ specjalistów · 128+ krajów

1
Kontakt
2
Profil

Rejestracja

Opowiedz nam o sobie

Pole wymagane
Pole wymagane
Podaj prawidłowy email
Nieprawidłowy numer

Rejestracja

Dane zawodowe

Pole wymagane
Pole wymagane
Pole wymagane

Prosimy o zgodę na newslettery. To znacząco poprawi Twoje doświadczenie na platformie.

Rejestracja zakończona

Dane logowania wysłaliśmy na Twój email. Użyj otrzymanego hasła, aby się zalogować.

Nie dostałeś emaila?
Sprawdź folder Spam
Masz już konto? Zaloguj · Zapomniałeś hasła?

Witamy!

Zalogowałeś się pomyślnie.

Odzyskiwanie hasła

Podaj email do odzyskania

Podaj prawidłowy email

Link wysłany

Link do resetowania hasła został wysłany na Twój email. Link jest ważny przez 1 godzinę.

Nie dostałeś emaila?
Sprawdź folder Spam
Pamiętasz hasło? Zaloguj · Rejestracja